2017-10-27 13 views
4

Android 3.0.0にアップデートしてから4.1に更新した後、ひどく疲れました。私のアプリはビルドされておらず、マニフェストには多くのエラーが含まれています。 Buildの下でプロジェクトをクリーニングしようとしましたが、キャッシュを無効にする/ Filesの下で再開すると、成功しません。私が受け取るAndroid 3.0.0にアップデートした後、私のAndroidマニフェストにエラーが発生しました

エラーは、次のとおりです。

Error:(52) error: unknown element found.
Error:(52) unknown element found.
Error:java.util.concurrent.ExecutionException: java.util.concurrent.ExecutionException: com.android.tools.aapt2.Aapt2Exception: AAPT2 error: check logs for details
Error:java.util.concurrent.ExecutionException: com.android.tools.aapt2.Aapt2Exception: AAPT2 error: check logs for details
Error:com.android.tools.aapt2.Aapt2Exception: AAPT2 error: check logs for details
Error:Execution failed for task ':app:processDebugResources'.
Failed to execute aapt

すべてのエラーはdebug\AndroidManifestです。私は顕著な活動を削除したり、コメントすると、彼らはGradleのビルドに再び追加取得している、

私も

マニフェスト「android="http://schemas.android.com/apk/res/android"にすぎURI registreredないエラー」取得しています:

<?xml version="1.0" encoding="utf-8"?> 
<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
    package="sample.app" 
    android:installLocation="auto" 
    android:versionCode="48" 
    android:versionName="4.8" > 

    <uses-sdk 
     android:minSdkVersion="19" 
     android:targetSdkVersion="25" /> 
    //Hardware Constraints for Application 
    <uses-feature android:name="android.hardware.location.gps" /> 

    <!-- <uses-feature android:name="android.hardware.location.network" /> --> 

    //Required App Permissions 
    <uses-permission android:name="android.permission.READ_CONTACTS" /> 
    <uses-permission android:name="android.permission.READ_PHONE_STATE" /> 
    <uses-permission android:name="android.permission.INTERNET" /> 
    <uses-permission android:name="android.permission.VIBRATE" /> 
    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" /> 
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" /> 
    <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" /> 
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> 
    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" /> 
    <uses-permission android:name="android.permission.BLUETOOTH" /> 
    <uses-permission android:name="android.permission.READ_SMS" /> 
    <uses-permission android:name="android.permission.WRITE_CONTACTS" /> 
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> 
    <uses-permission android:name="android.permission.RECORD_AUDIO" /> 
    <uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" /> 
    <uses-permission android:name="android.permission.READ_CALL_LOG" /> 
    <uses-permission android:name="android.permission.WAKE_LOCK" /> 
    <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" /> 
    <uses-permission android:name="android.permission.RECEIVE_SMS" /> 
    <uses-permission android:name="android.permission.PROCESS_OUTGOING_CALLS" /> 
    <uses-permission android:name="android.permission.GET_ACCOUNTS" /> 
    <uses-permission android:name="android.permission.USE_CREDENTIALS" /> 
    <uses-permission android:name="android.permission.MANAGE_ACCOUNTS" /> 
    <uses-permission android:name="com.android.launcher.permission.INSTALL_SHORTCUT" /> 
    <uses-permission android:name="com.android.launcher.permission.UNINSTALL_SHORTCUT" /> 
    <uses-permission android:name="android.permission.CALL_PHONE" /> 
    <uses-permission android:name="android.permission.ACCESS_NOTIFICATION_POLICY" /> 
    <uses-permission android:name="android.permission.SEND_SMS" /> 
    <uses-permission android:name="android.permission.CAMERA" /> 
    <uses-permission android:name="android.permission.CAPTURE_AUDIO_OUTPUT" /> 

    <uses-permission-sdk-23 android:name="android.permission.MODIFY_PHONE_STATE" /> 

    <uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" /> 

    <meta-data 
     android:name="android.support.VERSION" 
     android:value="25.3.1" /> 

    <activity android:name="com.box.androidsdk.content.auth.OAuthActivity" /> 

    <uses-feature 
     android:name="android.hardware.sensor.accelerometer" 
     android:required="true" /> <!-- Permissions required for GCM --> 
    <uses-permission android:name="com.google.android.c2dm.permission.RECEIVE" /> 

    <uses-feature 
     android:glEsVersion="0x00020000" 
     android:required="true" /> 

    <permission 
     android:name="sample.app.permission.C2D_MESSAGE" 
     android:protectionLevel="signature" /> 

    <uses-permission android:name="sample.app.permission.C2D_MESSAGE" /> 
    <!-- 
    <uses-feature 
      android:name="android.hardware.camera2.full" 
      android:required="true" /> 
    --> 
    <!-- 
    <uses-feature 
      android:name="android.hardware.sensor.accelerometer" 
      android:required="true" /> 
    --> 
    <application 
     android:name="sample.app.dailymotion.volleyapp.AppController" 
     android:allowBackup="true" 
     android:debuggable="true" 
     android:hardwareAccelerated="true" 
     android:icon="@mipmap/ic_launcher" 
     android:label="@string/app_name" 
     android:largeHeap="true" 
     android:supportsRtl="true" 
     android:theme="@style/AppTheme" > 

     <!-- 
      <meta-data 
      android:name="com.google.android.gms.vision.DEPENDENCIES" 
      android:value="barcode"/> 
     --> 
     <activity android:name="sample.app.SplashScreen" > 
      <intent-filter> 
       <action android:name="android.intent.action.MAIN" /> 

       <category android:name="android.intent.category.LAUNCHER" /> 
      </intent-filter> 
     </activity> 
     <activity 
      android:name="sample.app.ClrInfo" 
      android:exported="false" 
      android:theme="@style/MyDialogTheme" /> 

</application> 
</manifest> 
+0

を確認してください。https://android-developers.googleblog.com/2017/10/android-studio-30.html –

+1

あなたの 'mainfest.xml'を投稿してください。 –

答えて

3
ここでの移行ガイドについて言及

Androidのドキュメント:あなたならば、あなたのマニフェストをチェックしなければなりませんhttps://developer.android.com/studio/build/gradle-plugin-3-0-0-migration.html

Element hierarchies in the Android manifest

In previous versions of AAPT, elements nested in incorrect nodes in the Android manifest are either ignored or result in a warning. For example, consider the following sample:

<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
    package="com.example.myname.myapplication"> 
    <application 
     ... 
     <activity android:name=".MainActivity"> 
      <intent-filter> 
       <action android:name="android.intent.action.MAIN" /> 
       <category android:name="android.intent.category.LAUNCHER" /> 
      </intent-filter> 
      <action android:name="android.intent.action.CUSTOM" /> 
     </activity> 
    </application> 
</manifest> 

注意彼らがそうでなければあなたのappがコンパイルされていないと提供した特定のネスティングルールに本当に従います。

Manifest file structure

The code snippet below shows the general structure of the manifest file and every element that it can contain. Each element, along with all of its attributes, is fully documented in a separate file.

<manifest> 

    <uses-permission /> 
    <permission /> 
    <permission-tree /> 
    <permission-group /> 
    <instrumentation /> 
    <uses-sdk /> 
    <uses-configuration /> 
    <uses-feature /> 
    <supports-screens /> 
    <compatible-screens /> 
    <supports-gl-texture /> 

    <application> 

     <activity> 
      <intent-filter> 
       <action /> 
       <category /> 
       <data /> 
      </intent-filter> 
      <meta-data /> 
     </activity> 

     <activity-alias> 
      <intent-filter> . . . </intent-filter> 
      <meta-data /> 
     </activity-alias> 

     <service> 
      <intent-filter> . . . </intent-filter> 
      <meta-data/> 
     </service> 

     <receiver> 
      <intent-filter> . . . </intent-filter> 
      <meta-data /> 
     </receiver> 

     <provider> 
      <grant-uri-permission /> 
      <meta-data /> 
      <path-permission /> 
     </provider> 

     <uses-library /> 

    </application> 

</manifest> 

あなたのケースでは、あなたはそれがコンパイルされるように<application>であなたの

<activity android:name="com.box.androidsdk.content.auth.OAuthActivity" />

内部に転送する必要があります。

AAPT2を無効にすることは回避策に過ぎませんが、実際の回答はではありません。

+0

あなたは私の人生を救いました。どうもありがとう。 – Panache

+0

@Panacheあなたは歓迎です:) – Enzokie

1

AAPT2を無効にする必要はありません。 :)あなたのAndroidManifest.xmlのライン56では、アクティビティを定義します。

<activity android:name="com.box.androidsdk.content.auth.OAuthActivity" /> 

の活動 'タグが唯一の「アプリケーション」要素の下にネストすることができます。詳細はAndroid Manifest structure documentationをご覧ください。

関連する問題