2017-02-11 51 views
0

更新,修正它。 我讀了一些清單中的一些錯誤,導致Android Studio由於某種原因打開生成的清單文件並拋出了很多錯誤。我通過刪除右清單中的空值來修復它。感謝大家的幫助。Android Studio隨機啓動顯示:未找到包'android'中屬性'applicationId'的資源標識

更新我的Android工作室後的一天,我開始試圖建立時,這個錯誤: Error:No resource identifier found for attribute 'applicationId' in package 'android'

從那時起,我不得不停止開發我的應用程序,因爲我無法找到一個方法來解決這個問題。 我已經嘗試回落到舊版本的Android Studio,我已經重建,清理,清理緩存。

我的確在某處讀過關於Android Studio的一些信息,無論出於何種原因覆蓋我自己生成的清單,這隻會打破應用程序。刪除它不會有幫助,它只是不斷重新生成它自己的垃圾,這造成了一堆錯誤。 它生成該文件夾的清單:

當我在android studio上打開生成的清單時,它基本上將所有內容都刷新了。

下面是應用模塊build.grade文件:

apply plugin: 'com.android.application' 

android { 
    compileSdkVersion 23 
    buildToolsVersion '25.0.0' 

    defaultConfig { 
     applicationId "emptied" 
     minSdkVersion 16 
     targetSdkVersion 23 
     versionCode 4 
     versionName "1" 
     multiDexEnabled true 
    } 
    buildTypes { 
     release { 
      minifyEnabled true 
      proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' 
     } 
    } 

    dexOptions { 
     javaMaxHeapSize "2g" 
    } 
} 

dependencies { 
    compile fileTree(include: ['*.jar'], dir: 'libs') 
    testCompile 'junit:junit:4.12' 
    compile 'com.android.support:appcompat-v7:23.3.0' 
    compile 'com.android.support:design:23.3.0' 
    compile 'com.android.support:support-v4:23.3.0' 
    compile 'com.google.firebase:firebase-ads:10.0.1' 
    compile 'com.google.android.gms:play-services:10.0.1' 
    compile 'com.android.support:multidex:1.0.1' 
} 
apply plugin: 'com.google.gms.google-services' 

下面是該項目的gradle產出:

// Top-level build file where you can add configuration options common to all sub-projects/modules. 

buildscript { 
    repositories { 
     jcenter() 
    } 
    dependencies { 
     classpath 'com.android.tools.build:gradle:2.3.0-beta3' 
     classpath 'com.google.gms:google-services:3.0.0' 
     // NOTE: Do not place your application dependencies here; they belong 
     // in the individual module build.gradle files 
    } 
} 

allprojects { 
    repositories { 
     jcenter() 
    } 
} 

task clean(type: Delete) { 
    delete rootProject.buildDir 
} 

,這裏是不是我用的清單但Android Studio生成並引發錯誤的那個:

<?xml version="1.0" encoding="utf-8"?> 
<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
    package="emptied" 
    android:versionCode="4" 
    android:versionName="1" > 

    <uses-sdk 
     android:minSdkVersion="16" 
     android:targetSdkVersion="23" /> 

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

    <!-- Optional permission for Analytics to run. --> 
    <uses-permission android:name="android.permission.WAKE_LOCK" /> <!-- 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="emptied.permission.C2D_MESSAGE" 
     android:protectionLevel="signature" /> 

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

    <application 
     android:name="android.support.multidex.MultiDexApplication" 
     android:applicationId="" 
     android:icon="@mipmap/typer_ic_launcher" 
     android:label="@string/app_name" > 
     <meta-data 
      android:name="com.google.android.gms.games.APP_ID" 
      android:value="@string/app_id" /> 
     <meta-data 
      android:name="com.google.android.gms.version" 
      android:value="@integer/google_play_services_version" /> 

     <activity 
      android:name="emptied.MainActivity" 
      android:configChanges="orientation|keyboardHidden" 
      android:label="emptied" 
      android:launchMode="singleTask" 
      android:screenOrientation="portrait" 
      android:theme="@style/AppTheme.NoActionBar.SplashScreen" > 
      <intent-filter> 
       <action android:name="android.intent.action.MAIN" /> 

       <category android:name="android.intent.category.LAUNCHER" /> 
      </intent-filter> 
     </activity> 
     <activity 
      android:name="emptied.GameSelection" 
      android:label="Select a Gamemode" 
      android:screenOrientation="portrait" 
      android:theme="@style/AppTheme.NoActionBar" /> 
     <activity 
      android:name="emptied.ResultScreen" 
      android:configChanges="orientation|keyboardHidden" 
      android:label="Aftermath" 
      android:noHistory="true" 
      android:screenOrientation="portrait" 
      android:theme="@style/AppTheme.NoActionBar" /> 
     <activity 
      android:name="emptied.PracticeGame" 
      android:configChanges="orientation|keyboardHidden" 
      android:label="Just practice typing" 
      android:screenOrientation="portrait" 
      android:theme="@style/AppTheme.NoActionBar" 
      android:windowSoftInputMode="adjustResize" /> 
     <activity 
      android:name="emptied.WordsPerMInuteGame" 
      android:configChanges="orientation|keyboardHidden" 
      android:label="Words Per Minute Gamemode" 
      android:noHistory="true" 
      android:screenOrientation="portrait" 
      android:theme="@style/AppTheme.NoActionBar" 
      android:windowSoftInputMode="adjustResize" /> 
     <activity 
      android:name="emptied.NoMistakesGame" 
      android:configChanges="orientation|keyboardHidden" 
      android:label="Make No Mistakes Gamemode" 
      android:noHistory="true" 
      android:screenOrientation="portrait" 
      android:theme="@style/AppTheme.NoActionBar" 
      android:windowSoftInputMode="adjustResize" /> 
     <!-- Include the AdActivity and InAppPurchaseActivity configChanges and themes. --> 
     <activity 
      android:name="com.google.android.gms.ads.AdActivity" 
      android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize" 
      android:theme="@android:style/Theme.Translucent" /> 
     <activity 
      android:name="com.google.android.gms.ads.purchase.InAppPurchaseActivity" 
      android:theme="@style/Theme.IAPTheme" /> 
     <activity 
      android:name="com.google.android.gms.appinvite.PreviewActivity" 
      android:exported="true" 
      android:theme="@style/Theme.AppInvite.Preview" > 
      <intent-filter> 
       <action android:name="com.google.android.gms.appinvite.ACTION_PREVIEW" /> 

       <category android:name="android.intent.category.DEFAULT" /> 
      </intent-filter> 
     </activity> 
     <activity 
      android:name="com.google.android.gms.auth.api.signin.internal.SignInHubActivity" 
      android:excludeFromRecents="true" 
      android:exported="false" 
      android:theme="@android:style/Theme.Translucent.NoTitleBar" /> 
     <!-- 
Service handling Google Sign-In user revocation. For apps that do not integrate with 
      Google Sign-In, this service will never be started. 
     --> 
     <service 
      android:name="com.google.android.gms.auth.api.signin.RevocationBoundService" 
      android:exported="true" 
      android:permission="com.google.android.gms.auth.api.signin.permission.REVOCATION_NOTIFICATION" /> 

     <receiver android:name="com.google.android.gms.cast.framework.media.MediaIntentReceiver" /> 

     <service android:name="com.google.android.gms.cast.framework.media.MediaNotificationService" /> 
     <service android:name="com.google.android.gms.cast.framework.ReconnectionService" /> 
     <!-- 
FirebaseMessagingService performs security checks at runtime, 
      no need for explicit permissions despite exported="true" 
     --> 
     <service 
      android:name="com.google.firebase.messaging.FirebaseMessagingService" 
      android:exported="true" > 
      <intent-filter android:priority="-500" > 
       <action android:name="com.google.firebase.MESSAGING_EVENT" /> 
      </intent-filter> 
     </service> 
     <service 
      android:name="com.google.android.gms.tagmanager.TagManagerService" 
      android:enabled="true" 
      android:exported="false" /> 

     <activity 
      android:name="com.google.android.gms.tagmanager.TagManagerPreviewActivity" 
      android:noHistory="true" > <!-- optional, removes the previewActivity from the activity stack. --> 
      <intent-filter> 
       <data android:scheme="tagmanager.c.emptied" /> 

       <action android:name="android.intent.action.VIEW" /> 

       <category android:name="android.intent.category.DEFAULT" /> 
       <category android:name="android.intent.category.BROWSABLE" /> 
      </intent-filter> 
     </activity> 
     <activity 
      android:name="com.google.android.gms.common.api.GoogleApiActivity" 
      android:exported="false" 
      android:theme="@android:style/Theme.Translucent.NoTitleBar" /> 

     <receiver 
      android:name="com.google.android.gms.measurement.AppMeasurementReceiver" 
      android:enabled="true" 
      android:exported="false" > 
     </receiver> 
     <receiver 
      android:name="com.google.android.gms.measurement.AppMeasurementInstallReferrerReceiver" 
      android:enabled="true" 
      android:permission="android.permission.INSTALL_PACKAGES" > 
      <intent-filter> 
       <action android:name="com.android.vending.INSTALL_REFERRER" /> 
      </intent-filter> 
     </receiver> 

     <service 
      android:name="com.google.android.gms.measurement.AppMeasurementService" 
      android:enabled="true" 
      android:exported="false" /> 

     <receiver 
      android:name="com.google.firebase.iid.FirebaseInstanceIdReceiver" 
      android:exported="true" 
      android:permission="com.google.android.c2dm.permission.SEND" > 
      <intent-filter> 
       <action android:name="com.google.android.c2dm.intent.RECEIVE" /> 
       <action android:name="com.google.android.c2dm.intent.REGISTRATION" /> 

       <category android:name="emptied" /> 
      </intent-filter> 
     </receiver> 
     <!-- 
Internal (not exported) receiver used by the app to start its own exported services 
      without risk of being spoofed. 
     --> 
     <receiver 
      android:name="com.google.firebase.iid.FirebaseInstanceIdInternalReceiver" 
      android:exported="false" /> 
     <!-- 
FirebaseInstanceIdService performs security checks at runtime, 
      no need for explicit permissions despite exported="true" 
     --> 
     <service 
      android:name="com.google.firebase.iid.FirebaseInstanceIdService" 
      android:exported="true" > 
      <intent-filter android:priority="-500" > 
       <action android:name="com.google.firebase.INSTANCE_ID_EVENT" /> 
      </intent-filter> 
     </service> 

     <provider 
      android:name="com.google.firebase.provider.FirebaseInitProvider" 
      android:authorities="emptied.firebaseinitprovider" 
      android:exported="false" 
      android:initOrder="100" /> 
    </application> 

</manifest> 
+0

其中屬性'applicationId'是否定義? – rafsanahmad007

+0

顯示你的build.gradle文件的應用模塊 – Aryan

+0

@ rafsanahmad007它是在某些原因自動生成的清單文件中定義的。 – StefanJM

回答

0

對於您的應用程序中的Firebase集成。應用需要google-services.json 文件在您的應用模塊文件夾中。根據我的說法,你錯過了.json文件或包名稱,該.json文件與你的應用程序包名稱不同。

+0

我確實擁有它,並且我更改了此問題的名稱。 – StefanJM

0

我讀過一些清單中的一些錯誤,導致Android Studio因某種原因打開生成的清單文件並拋出更多錯誤。我通過刪除右清單中的空值來修復它。感謝大家的幫助。

相關問題