我已经使用android studio成功创建了一个Android应用程序,并且当我遇到安装到开发机器的android模拟器或设备时工作正常,但是当我尝试从build / outputs / apk安装apk时应用程序在打开时崩溃。我也尝试从build工程生成签名的apk - 来自build - >生成签名的apk(发布和调试),但无法生成带有以下错误的apk:
var myPicsLibrary = await Windows.Storage.StorageLibrary.GetLibraryAsync(Windows.Storage.KnownLibraryId.Pictures);
var myfolder = myPicsLibrary.Folders[0];
StorageFolder externalDevices = Windows.Storage.KnownFolders.RemovableDevices;
StorageFolder sdCard = (await externalDevices.GetFoldersAsync()).FirstOrDefault();
var folder = await sdCard.CreateFolderAsync("MySDCardFolder");
await CopyFolderAsync(folder, myfolder);
我的Error:Execution failed for task ':app:transformClassesWithDexForRelease'.
> com.android.build.api.transform.TransformException: com.android.ide.common.process.ProcessException: java.util.concurrent.ExecutionException: com.android.dex.DexException: Multiple dex files define Lorg/intellij/lang/annotations/Identifier;
文件:
build.gradle
答案 0 :(得分:2)
修改强>
请检查您有两个常见的库:
compile 'com.yalantis:ucrop:2.2.0'
compile 'com.yalantis:ucrop:2.2.0-native'
删除其中一个并检查您需要哪一个。
检查this回答是否存在多索引问题。有人帮我解决了这个问题。
您的logcat似乎清楚地显示了注释标识符DexException: Multiple dex files define Lorg/intellij/lang/annotations/Identifier
。您应该remove此行支持 - 注释:
androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
exclude group: 'com.android.support', module: 'support-annotations'
})
此外,如果您使用的是Google Play服务包:compile 'com.google.android.gms:play-services:8.1.0
为所有库单独更改为以下gms
compile 'com.google.android.gms:play-services-location:8.1.0'
compile 'com.google.android.gms:play-services-base:8.1.0'
compile 'com.google.android.gms:play-services-analytics:8.1.0'
compile 'com.google.android.gms:play-services-maps:8.1.0'
compile "com.google.android.gms:play-services-gcm:8.1.0' //
用于gcm推送通知
答案 1 :(得分:0)
尝试启用multidex。内部应用级别 build.gradle 写下这些行
android {
...
defaultConfig {
...
// Enabling multidex support.
multiDexEnabled true
...
}
...
}
dependencies {
...
compile 'com.android.support:multidex:1.0.1'
...
}
检查this了解更多信息