【发布时间】:2017-04-26 01:46:25
【问题描述】:
我对 android dev 有点陌生,所以我在为多个 API 开发时遇到了一些问题。当我创建我的项目时,我将最低 API 级别设置为 18,这甚至不再受支持(根据 wiki:https://en.wikipedia.org/wiki/Android_version_history)
我在两部不同的手机上测试了 APK 的安装,都是 API 24,没有任何问题。但是,我与 API 19 的同事无法安装该应用程序。显然它给了他“未安装应用程序”的信息错误。
出于测试目的,我创建了一个新项目,并且没有添加任何代码(仅留下 Android Studio 生成的“Hello World”标签),生成了一个签名的 APK,然后将其发送给我的同事。他也没有安装它。
唯一需要注意的一点是,我玩弄了启用“jack”。我正在测试一些需要它的随机源代码。我想知道这会不会引起问题?这对于一个空项目来说是难以置信的。
更具体地说,我在测试上面提到的源代码时遇到了这个错误“错误:需要 Jack 才能支持 java 8 语言功能。启用 Jack 或删除 sourceCompatibility JavaVersion.VERSION_1_8。”所以,我当然启用了 Jack。
这是 build.gradle(如果有帮助?)
apply plugin: 'com.android.application'
android {
compileSdkVersion 25
buildToolsVersion "25.0.2"
defaultConfig {
applicationId "com.random.name"
minSdkVersion 18
targetSdkVersion 25
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
exclude group: 'com.android.support', module: 'support-annotations'
})
compile 'com.android.support:appcompat-v7:25.3.1'
compile 'com.android.support.constraint:constraint-layout:1.0.2'
testCompile 'junit:junit:4.12'
}
任何想法都非常感谢!
【问题讨论】:
-
出于好奇,您的同事是否尝试过在 AndroidStudio 中运行该应用程序?如果同样失败,您可能会收到更详细的错误消息。
-
@drawinfinity 简而言之 - 不。他最近卸载了Android Studio,但我已经敦促他重新安装。就像你说的,生成的错误码会有很大帮助!
-
警告,jack 已被 google 正式弃用:tools.android.com/tech-docs/jackandjill
-
我试图禁用 Jack,因为后来发现了这一点。不过谢谢!
标签: android android-studio apk android-install-apk