CodenameOne - 使用 android.buildToolsVersion=27 构建时,Android 应用程序无法启动
Posted
技术标签:
【中文标题】CodenameOne - 使用 android.buildToolsVersion=27 构建时,Android 应用程序无法启动【英文标题】:CodenameOne - Android app fails to start when building with android.buildToolsVersion=27 【发布时间】:2018-09-05 09:30:31 【问题描述】:我正在使用 gcm,但由于此错误,应用程序无法启动:
androidRuntime: java.lang.IllegalAccessError: Method 'void android.support.v4.content.ContextCompat.()' 无法访问 类“com.google.android.gms.iid.zzd”(声明 'com.google.android.gms.iid.zzd' 出现在 /data/app/net.segoia.opengroups.mobile-1/base.apk:classes2.dex)
这是由这一行引起的:
InstanceID instanceID = InstanceID.getInstance(this);
问题是在为 api level 27 构建时,对 android v4 的支持被放弃了。
【问题讨论】:
【参考方案1】:解决问题的方法是添加这两个构建提示:
android.supportV4=true
android.supportv4Dep=compile 'com.android.support:support-v4:23.+'
这需要一段时间才能弄清楚,特别是因为 android.supportV4Dep 甚至没有文档记录,单独的 android.supportV4 是不够的。我从另一个 *** 对另一个问题的回答中了解了 android.supportV4Dep,所以我想我会在这里记录一下。
【讨论】:
以上是关于CodenameOne - 使用 android.buildToolsVersion=27 构建时,Android 应用程序无法启动的主要内容,如果未能解决你的问题,请参考以下文章
CodenameOne - 使用android.buildToolsVersion = 27进行构建时,Android应用程序无法启动
CodenameOne 与 Eclipse:发送 Android 构建失败
如何将 gradle 库依赖项添加到 codenameone 项目