Android Studio将支持库中的字符串导出到APK

 手机用户2502907993 发布于 2023-02-13 20:06

最近我从Eclipse切换到了Android Studio.我有一个具有多个模块依赖项的项目.一个依赖是支持库appcompat,包含如下:

dependencies {
    compile "com.android.support:appcompat-v7:19+"
}

在Android文档中,我发现需要使用资源导入此库,这似乎可以正常工作.我在项目中使用库没有问题.

问题是,当我建立一个APK并运行aapt时,outpus说:

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 devconsole的屏幕截图: Play devconsole的屏幕截图

我在Google代码上发现了类似的问题,但没有回复,我希望解决这个问题,因为我必须将我的新APK上传到Play.

任何想法如何摆脱这47种其他语言,而图书馆必须保持与资源导入,以正常工作?

更新: 在谷歌代码上他们说这是现在的预期,他们希望添加一种方法来选择你想要包含在apk中的内容.

1 个回答
  • 在code.google.com上,他们说gradle插件有一个限制资源的选项,因为版本0.7.0已经发布.

    请注意版本0.7.0发行说明:

    产品Flavor(和defaultConfig)的新选项允许通过aapt的-c选项过滤资源

    您可以通过DSL传递单个值(resConfig)或多个值(resConfigs).

    默认配置和flavor中的所有值都被合并并传递给aapt.

    请参阅"基本"示例.

    下面是一些示例代码,放在项目的build.gradle文件中:

    android {
        defaultConfig {
            resConfigs "en", "de", "es" //Define languages that your app supports.
        }
    }
    

    我花了很多时间找到"基本样本"......可能是发行说明中的​​一个链接:/所以有链接:

    Gradle样本

    基本样本

    发行说明

    注意:版本0.7.x需要Android Studio 0.4.+和Gradle 1.9.

    2023-02-13 20:09 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有