我正在开发一个Android应用程序,当我在我的本地系统中构建它并在模拟器上运行时一切正常,但是一旦我在手机上发布并安装apk,它就会崩溃并出现错误 -
There was an error parsing the package
正如您所看到的,我正在构建最新的SDK和构建工具,而我的手机也在API上运行相同的版本。我也允许安装Untrusted Sources
。
我正在this链接上获取“构建发布版本”部分的帮助。它正在我的app-release-unsigned.apk
文件夹中生成类似 - app/build/outputs/apk
的文件。请帮忙。
模拟器AVD -
Galaxy Nexus, 1 GB RAM, API 22 (Android 5.1.1), CPU x86
我的手机 -
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:2+@aar'
}
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>
发布消息 -
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 :(得分:13)
生成APK未签名( app-release-unsigned.apk )。您无法在物理设备上安装未签名的APK。 您有两种选择: