2015-04-16 82 views
8

Tôi đang làm việc trên một ứng dụng android và mọi thứ hoạt động tốt khi tôi xây dựng nó trong hệ thống cục bộ của mình và chạy trên trình mô phỏng, nhưng ngay sau khi tôi tạo và phát hành và cài đặt apk trên điện thoại của mình, nó bị treo với lỗi -Lỗi khi cài đặt apk - phân tích cú pháp gói

There was an error parsing the package 

Như bạn thấy, tôi đang xây dựng với SDK mới nhất và xây dựng các công cụ, và điện thoại của tôi đang chạy cùng một phiên bản API quá. Tôi cũng đã cài đặt Untrusted Sources.

Tôi đang trợ giúp phần "Xây dựng phiên bản phát hành" trên liên kết this. Nó đang tạo một tập tin như - app-release-unsigned.apk trong thư mục app/build/outputs/apk của tôi. Xin hãy giúp với nó.

Emulator AVD -

Galaxy Nexus, 1 GB RAM, API 22 (Android 5.1.1), CPU x86 

điện thoại của tôi -

Nexus 5, 2 GB RAM, Android 5.1.1 

build.gradle -

apply plugin: 'android' 
apply plugin: 'com.android.application' 

repositories { 
    mavenCentral() 
    flatDir { 
     dirs 'libs' 
    } 
} 

android { 
    compileSdkVersion 22 // api version 
    buildToolsVersion "22.0.1" // build tools version 

    defaultConfig { 
     applicationId "org.compani.proj" 
     minSdkVersion 8 
     targetSdkVersion 22 // same as compilesdkversion 
     versionCode 1 
     versionName "1.0" 
    } 
    buildTypes { 
     release { 
      minifyEnabled false 
      proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' 
     } 
    } 
} 

dependencies { 
    dependencies { 
     //compile project(':android-beacon-library') 
     compile 'org.altbeacon:android-beacon-library:[email protected]' 
    } 
    compile fileTree(dir: 'libs', include: ['*.jar']) 
    compile 'com.android.support:appcompat-v7:22.0.0' 
    compile 'com.android.support:recyclerview-v7:21.+' 
    compile 'com.android.support:cardview-v7:21.+' 
    compile 'com.android.support:support-v4:+' 
} 

AndroidManifest.xml -

<uses-sdk 
    android:minSdkVersion="17" 
    android:targetSdkVersion="22" /> 

<uses-permission android:name="android.permission.INTERNET" /> 
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> 
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" /> 
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" /> 
<uses-permission android:name="android.permission.CHANGE_NETWORK_STATE" /> 
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> 
<uses-permission android:name="android.permission.BLUETOOTH"/> 
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN"/> 
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED"/> 

<application 
    android:allowBackup="true" 
    android:icon="@drawable/ic_launcher" 
    android:label="@string/app_name" 
    android:theme="@style/AppTheme" 
    android:name="MyApp"> 
    <activity 
     android:name="org.compani.proj.MainActivity" 
     android:label="@string/app_name" 
     android:launchMode="singleInstance"> 
     <intent-filter> 
      <action android:name="android.intent.action.MAIN" /> 
      <category android:name="android.intent.category.LAUNCHER" /> 
     </intent-filter> 
    </activity> 

</application> 

thông điệp phát hành -

23:43:42: Executing external task 'assembleRelease'... 
Configuration on demand is an incubating feature. 
:app:preBuild 
:app:preReleaseBuild 
:app:checkReleaseManifest 
:app:preDebugBuild 
:app:prepareComAndroidSupportAppcompatV72200Library UP-TO-DATE 
:app:prepareComAndroidSupportCardviewV72103Library UP-TO-DATE 
:app:prepareComAndroidSupportRecyclerviewV72103Library UP-TO-DATE 
:app:prepareComAndroidSupportSupportV42200Library UP-TO-DATE 
:app:prepareOrgAltbeaconAndroidBeaconLibrary214Library UP-TO-DATE 
:app:prepareReleaseDependencies 
:app:compileReleaseAidl UP-TO-DATE 
:app:compileReleaseRenderscript UP-TO-DATE 
:app:generateReleaseBuildConfig UP-TO-DATE 
:app:generateReleaseAssets UP-TO-DATE 
:app:mergeReleaseAssets UP-TO-DATE 
:app:generateReleaseResValues UP-TO-DATE 
:app:generateReleaseResources UP-TO-DATE 
:app:mergeReleaseResources UP-TO-DATE 
:app:processReleaseManifest 
:app:processReleaseResources UP-TO-DATE 
:app:generateReleaseSources UP-TO-DATE 
:app:compileReleaseJava UP-TO-DATE 
:app:lintVitalRelease 
:app:compileReleaseNdk UP-TO-DATE 
:app:preDexRelease UP-TO-DATE 
:app:dexRelease UP-TO-DATE 
:app:processReleaseJavaRes UP-TO-DATE 
:app:packageRelease UP-TO-DATE 
:app:assembleRelease 

BUILD SUCCESSFUL 

Total time: 6.309 secs 
23:43:49: External task execution finished 'assembleRelease'. 
+0

Vui lòng cài đặt nó với 'install' adb và thêm mã lỗi nó tạo ra. Ngoài ra, là một bản dựng gỡ lỗi của ứng dụng được cài đặt trên thiết bị đó? Bạn đã ký APK chưa ký trước khi cài đặt chưa? – StenSoft

+0

đăng logcat cho lỗi –

+0

Tôi đang cài đặt nó trực tiếp trên thiết bị. Không có logcat. – Sam

Trả lời

14

generate apk là unsigned (app-release-unsigned.apk). Bạn không thể cài đặt APK chưa ký trên thiết bị thực. Bạn có hai lựa chọn:

+0

Bạn chính xác. Tôi đã bỏ lỡ phần đó.Vì vậy, tôi vẫn cần phải thực hiện dự án, sau đó assembleRelease để tạo ra một unsigned? Chỉ muốn hiểu quy trình tốt hơn một chút. – Sam

+0

Xin lỗi nhưng tôi không hiểu, tại sao bạn cần một gói ứng dụng chưa ký? –

+0

Tôi hỏi vì tôi không chắc chắn về cách thức hoạt động của quy trình trên Android. Vì vậy, việc tạo ra các gói ứng dụng đã ký sẽ phải quan tâm đến việc xây dựng -> release -> sign right? – Sam

Các vấn đề liên quan