【发布时间】:2013-12-15 08:40:55
【问题描述】:
最近我从 Eclipse 切换到 Android Studio。我有一个具有多个模块依赖项的项目。一个依赖项是支持库 appcompat,包含如下:
dependencies {
compile "com.android.support:appcompat-v7:19+"
}
在 Android 文档中,我发现这个库需要与资源一起导入,这似乎工作正常。我在项目中使用该库没有问题。
问题是,当我构建一个 APK 并运行 aapt 时,输出显示:
locales: '--_--' 'de' 'nl' 'pl' 'sl' 'fr' 'cs' 'es' 'it' 'ca' 'da' 'fa' 'ja' 'nb' 'af'
'bg' 'th' 'fi' 'hi' 'vi' 'sk' 'uk' 'el' 'tl' 'am' 'in' 'ko' 'ro' 'ar' 'hr' 'sr' 'tr'
'lt' 'pt' 'hu' 'ru' 'zu' 'lv' 'sv' 'iw' 'sw' 'fr_CA' 'lo_LA' 'en_GB' 'et_EE' 'ka_GE'
'km_KH' 'zh_HK' 'hy_AM' 'zh_CN' 'en_IN' 'mn_MN' 'es_US' 'pt_PT' 'zh_TW' 'ms_MY'
但事实并非如此,我的应用仅支持前 8 种列出的语言。当我将此 apk 上传到 Play 时,它向我展示了对以前版本的更改(使用 eclipse 构建),它说我添加了 47 种语言,但同样,这不是真的。 来自 Play 开发控制台的屏幕截图:
我在Google code 上发现了类似的问题,但没有任何响应,我希望解决这个问题,因为我必须上传我的新 APK 才能玩。
知道如何摆脱这 47 种其他语言,而图书馆必须保持与资源一起导入,才能正常工作?
更新: 在Google code 上,他们说这是目前的预期,他们正在寻求添加一种方法来选择您想要包含在 apk 中的内容。
【问题讨论】:
-
为什么这对你来说真的有问题?如果您的主代码不支持某些语言,框架将回退到默认字符串,如果它们存在,则仍使用库的翻译字符串
-
@Marcin:唯一的问题是 Play 商店认为我的应用支持所有这些语言。我知道该应用程序可以正常使用回退到默认字符串。
标签: android android-studio android-resources android-support-library apk