Son zamanlarda Android Studio 3.0'ı Canary kanalından yükledim. Bu da görüntülenirAndroidManifest.xml ile Android Studio 3.0'da Sorun
Error:(49) unknown element <uses-sdk> found
:
Error:/home/computername/AndroidStudioProjects/applicationname/app/build/intermediates/manifests/full/release/AndroidManifest.xml:49 unknown element <uses-sdk> found
Ancak, benim eski projeleri yüklerken, bu otomatik olarak inşa değişkene bağlı olarak Oluşturulan AndroidManifest.xml dosyasında haşhaş devam ediyor Söylemeye gerek yok, bu Android Studio 2.3 bir sorun değildi. Bunu çözmek için herhangi bir fikir var mı? Burada bir çok benzer sorunu okudum ama hiç sorunumu çözemedim. Bu arada, kurulum değişkenini hata ayıklamak veya serbest bırakmak için ayarlamam önemli değil, aynı şeyi söylüyor. Ayrıca, "R" sınıfı çalışmıyor ve manifest xmlns:android="http://schemas.android.com/apk/res/android
bildiriminin üzerine geldiğinde "URI kayıtlı değil" diyor.
Yine, proje yapısı hiç değişmedi, yalnızca Android Studio 3.0 sürümüne yükselttim.
Teşekkürler!
İşte, mükemmel çalışıyor, /src/main
klasörünün altında bulunan AndroidManifest.xml dosyası. Sorun, /app/build/intermediates/manifests/full
klasöründe oluşturulan AndroidManifest.xml dosyaları ile - Uygulamamı kesenler THESE.
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.domain.appname"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk
android:minSdkVersion="21"
android:targetSdkVersion="25" />
<!-- PROTECTION_NORMAL permissions, automatically granted -->
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.INTERNET" />
<!-- DANGEROUS PERMISSIONS, must request -->
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<meta-data
android:name="android.support.VERSION"
android:value="25.3.1" />
<application
android:allowBackup="true"
android:debuggable="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:supportsRtl="true"
android:theme="@style/AppTheme" >
<activity
android:name="com.domain.appname.view.MainActivity"
android:noHistory="true" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name="com.domain.appname.view.TabbedActivity"
android:configChanges="keyboardHidden|orientation|screenSize"
android:label="@string/app_name"
android:noHistory="true"
android:screenOrientation="landscape"
android:theme="@style/AppTheme.NoActionBar" >
</activity>
<uses-sdk
android:minSdkVersion="21"
android:targetSdkVersion="25" />
</application>
</manifest>
Daha sonra düzenlemek
Ben Android Studio 2.3 döndü ettik:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.domain.appname">`
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:supportsRtl="true"
android:theme="@style/AppTheme">
<activity android:name=".view.MainActivity"
android:noHistory="true">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name=".view.TabbedActivity"
android:label="@string/app_name"
android:theme="@style/AppTheme.NoActionBar"
android:screenOrientation="landscape"
android:configChanges="keyboardHidden|orientation|screenSize"
android:noHistory="true">
</activity>
</application>
<!-- PROTECTION_NORMAL permissions, automatically granted -->
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.INTERNET" />
<!-- DANGEROUS PERMISSIONS, must request -->
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
</manifest>
İşte ayıklama veya otomatik oluşturulan Manifests çalışmıyor gibi görünmek bırakın yolu ve gradyan eklentisini 2.3.2'ye geri getirin, ve burada otomatik olarak oluşturulan AndroidManifest.xml şimdi nasıl görünüyor:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.domain.appname.test" >
<uses-sdk
android:minSdkVersion="21"
android:targetSdkVersion="26" />
<instrumentation
android:name="android.support.test.runner.AndroidJUnitRunner"
android:functionalTest="false"
android:handleProfiling="false"
android:label="Tests for com.domain.appname"
android:targetPackage="com.domain.appname" />
<application>
<uses-library android:name="android.test.runner" />
</application>
</manifest>
Şimdi her şey, ancak, gradle 3.0.0 altında otomatik olarak oluşturulan Manifest dosyası arasındaki farkı ve sanırım 2.3.2
beklemek gerekecek gradle altında not düşün birisi bir çözüm her zamanki gibi bulur işleri kadar Bu çalışmayı not 3.0.0 altında yapmak ve aynı zamanda Android Studio 3.0'da (şimdi şu anda çalışıyorum ve çalışıyorum) gradient eklentisi 2.3.2'yi kullanmak.
Yani mesele manifest'te uygulama etiketinin içinde bir
<uses-sdk>
sahiptir
Bize bir dosya göster –
Şimdi nereye gideceğinizi söyleyebildiysen, –
" Bu ikinci "ekran görüntüsü" nin sonundaki "uses-sdk" ifadesidir. Ama bu oldukça ilgisiz, dosyanın başlangıcından beri, "xmlns: android =" http://schemas.android.com/apk/res/android "" bölümünün altında kırmızı ve hemen hemen her şeyin altı çizili Bu özel olarak oluşturulan Manifest dosyasındaki eleman, "URI kayıtlı değil" diyerek URI'yi yükleyemediğinden ("gerçek" AndroidManifest dosyasının mükemmel bir şekilde çalıştığını unutmayın). –