2016-05-20 2 views
0

Может кто-нибудь сказать мне, почему мой AndroidManifest.xml неверен? Я получаю эту ошибку при попытке запустить приложение на устройстве: Failure [INSTALL_PARSE_FAILED_MANIFEST_MALFORMED]Malformed Android Manifest

<?xml version="1.0" encoding="utf-8"?> 
<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
    package="com.au.testapp" 
    android:versionCode="2" 
    android:versionName="2.002" > 

    <!-- USES PERMISSIONS --> 
    <uses-permission android:name="com.google.android.providers.gsf.permission.READ_GSERVICES" /> 
    <uses-permission android:name="com.google.android.c2dm.permission.RECEIVE" /> 
    <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" /> 
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> 
    <uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" /> 
    <uses-permission android:name="android.permission.VIBRATE" /> 
    <uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" /> 
    <uses-permission android:name="android.permission.BROADCAST_STICKY" /> 
    <uses-permission android:name="com.au.testapp.permission.MAPS_RECEIVE" /> 
    <uses-permission android:name="android.permission.INTERNET" /> 
    <uses-permission android:name="android.permission.READ_CONTACTS" /> 
    <uses-permission android:name="android.permission.READ_PHONE_STATE" /> 
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> 
    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" /> 
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" /> 
    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" /> 
    <uses-permission android:name="android.permission.CALL_PHONE" /> 
    <uses-permission android:name="android.permission.WRITE_SMS" /> 
    <uses-permission android:name="android.permission.READ_SMS" /> 
    <uses-permission android:name="android.permission.SEND_SMS" /> 
    <uses-permission android:name="android.permission.RECEIVE_MMS" /> 
    <uses-permission android:name="android.permission.GET_ACCOUNTS" /> 
    <uses-permission android:name="android.permission.WAKE_LOCK" /> 
    <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" /> 
    <uses-permission android:name="android.permission.VIBRATE" /> 
    <uses-permission android:name="android.permission.FLASHLIGHT" /> 
    <uses-permission android:name="android.permission.WRITE_SETTINGS" /> 

    <!-- PERMISSIONS --> 
    <permission android:name="com.au.testapp.permission.MAPS_RECEIVE" android:protectionLevel="signature" /> 
    <permission android:name="com.au.testapp.permission.C2D_MESSAGE" android:protectionLevel="signature" /> 

    <!-- SDK VERISONS --> 
    <uses-sdk 
     android:minSdkVersion="11" 
     android:targetSdkVersion="21" /> 

    <!-- USES FEATURES --> 
    <uses-feature android:glEsVersion="0x00020000" android:required="true" /> 
    <uses-feature android:name="android.hardware.camera" /> 
    <uses-feature android:name="android.hardware.location" android:required="true" /> 
    <uses-feature android:name="android.hardware.location.gps" android:required="false" /> 

    <!-- SCREEN SUPPORT --> 
    <supports-screens 
     android:anyDensity="true" 
     android:largeScreens="true" 
     android:normalScreens="true" 
     android:resizeable="true" 
     android:smallScreens="true" 
     android:xlargeScreens="true" /> 

    <application 
     android:allowBackup="true" 
     android:icon="@drawable/ic_launcher" 
     android:label="@string/app_name" 
     android:largeHeap="true" 
     android:theme="@style/TitleBarTheme" 
     android:name=".AnalyticsApplication"> 

     <!-- ACTIVITIES --> 
     <activity 
      android:name="com.au.testapp.SplashScreen" 
      android:configChanges="navigation|screenLayout|uiMode|orientation|screenSize|layoutDirection" 
      android:label="@string/app_name" 
      android:theme="@android:style/Theme.NoTitleBar" > 
      <intent-filter> 
       <action android:name="android.intent.action.MAIN" /> 
       <category android:name="android.intent.category.LAUNCHER" /> 
      </intent-filter> 
     </activity> 
     <activity 
      android:name="com.au.testapp.MainActivity" 
      android:configChanges="navigation|screenLayout|uiMode|orientation|screenSize|layoutDirection|keyboard" 
      android:windowSoftInputMode="stateHidden" /> 
     <activity 
      android:name="com.au.testapp.VideoCaptureActivity" 
      android:configChanges="navigation|screenLayout|uiMode|orientation|screenSize|layoutDirection" 
      android:theme="@android:style/Theme.NoTitleBar" 
      android:windowSoftInputMode="adjustResize" /> 
     <activity 
      android:name="com.au.testapp.PhotoCaptureActivity" 
      android:configChanges="navigation|screenLayout|uiMode|orientation|screenSize|layoutDirection" 
      android:theme="@android:style/Theme.NoTitleBar" 
      android:windowSoftInputMode="adjustResize" /> 
     <activity 
      android:name="com.au.testapp.VerifyActivity" 
      android:configChanges="navigation|screenLayout|uiMode|orientation|screenSize|layoutDirection|keyboard" 
      android:theme="@android:style/Theme.NoTitleBar" 
      android:windowSoftInputMode="adjustResize" /> 
     <activity 
      android:name="com.au.testapp.dialog.DialogMapTypeActivity" 
      android:configChanges="navigation|screenLayout|uiMode|orientation|screenSize|layoutDirection|keyboard" 
      android:theme="@android:style/Theme.Dialog" 
      android:windowSoftInputMode="adjustResize" /> 
     <activity 
      android:name="com.au.testapp.dialog.DialogRadarTimesActivity" 
      android:configChanges="navigation|screenLayout|uiMode|orientation|screenSize|layoutDirection|keyboard" 
      android:theme="@android:style/Theme.Dialog" 
      android:windowSoftInputMode="adjustResize" /> 
     <activity 
      android:name="com.crittercism.NotificationActivity" /> 

     <!-- USES LIBRARIES --> 
     <uses-library android:name="com.google.android.maps" /> 

     <!-- SERVICES --> 
     <service android:name="com.au.testapp.BackgroundLocationService" /> 
     <service android:name="com.au.testapp.GCMIntentService" /> 
     <service android:name="com.google.android.gms.analytics.CampaignTrackingService" /> 

     <!-- RECEIVERS --> 
     <receiver 
      android:name="com.google.android.gcm.GCMBroadcastReceiver" 
      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="com.au.testapp" /> 
      </intent-filter> 
     </receiver> 

     <receiver android:name="com.google.android.gms.analytics.CampaignTrackingReceiver" 
      android:exported="true"> 
      <intent-filter> 
       <action android:name="com.android.vending.INSTALL_REFERRER" /> 
      </intent-filter> 
     </receiver> 

     <!-- META DATA --> 
     <meta-data android:name="com.google.android.maps.v2.API_KEY" android:value="" /> 
     <meta-data android:name="com.google.android.gms.analytics.globalConfigResource" /> 
     <meta-data android:name="com.google.android.gms.version" android:value="@integer/google_play_services_version" /> 

    </application> 
</manifest> 

Gradle Файл:

buildscript { 
    repositories { 
     mavenCentral() 
    } 
    dependencies { 
     classpath 'com.android.tools.build:gradle:2.0.0' 
     classpath 'com.google.gms:google-services:2.1.0' 
    } 
} 
apply plugin: 'android' 

repositories { 
    mavenCentral() 
    maven { url "http://jzaccone.github.io/SlidingMenu-aar" } 
} 

dependencies { 
    compile 'com.nineoldandroids:library:2.4.0' 
    compile 'com.android.support:support-v4:23.0.1' 
    compile 'com.jeremyfeinstein.slidingmenu:library:[email protected]' 
    compile 'com.google.android.gms:play-services:8.4.0' 
    compile fileTree(dir: 'libs', include: '*.jar') 
} 

android { 
    compileSdkVersion 23 
    buildToolsVersion "23.0.3" 
    useLibrary 'org.apache.http.legacy' 

    defaultConfig { 
     minSdkVersion 16 
     targetSdkVersion 23 
    } 

    compileOptions { 
     sourceCompatibility JavaVersion.VERSION_1_7 
     targetCompatibility JavaVersion.VERSION_1_7 
    } 

    sourceSets { 
     main { 
      manifest.srcFile 'AndroidManifest.xml' 
      java.srcDirs = ['src'] 
      resources.srcDirs = ['src'] 
      aidl.srcDirs = ['src'] 
      renderscript.srcDirs = ['src'] 
      res.srcDirs = ['res'] 
      assets.srcDirs = ['assets'] 
     } 

     instrumentTest.setRoot('tests') 
    } 
} 

я ушел из значения мета-данных Карт для обеспечения конфиденциальности

+0

Возможно, вам следует декомпилировать APK и проверить манифест и сравнить его с вашим местным и проверить, есть ли разница. – JoxTraex

+0

Я сравнил старый с новым, он выглядит так же, проблема в том, что я переехал в студию Android, поэтому я не уверен, что мой файл Gradle имеет какое-то отношение к нему. – Nickmccomb

+1

Ищите W/PackageParser в logcat при установке apk, чтобы узнать, что вызывает ошибку. – jayeshsolanki93

ответ

0

Вы можете попробовать не только одну вещь удалить категорию из вашего файла манифеста, а затем попытаться установить

<category android:name="com.au.testapp" /> 

     <Intent-filter> 
      <action android:name="com.google.android.c2dm.intent.RECEIVE" /> 
      <action android:name="com.google.android.c2dm.intent.REGISTRATION"     /> 
      <category android:name="com.au.testapp" /> 
     </intent-filter> 
+0

не сработал :(все еще такая же ошибка: Failure [INSTALL_PARSE_FAILED_M ANIFEST_MALFORMED] – Nickmccomb