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

最近我从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中的内容。

  • PagerAdapter中的ClickListener在错误的位置触发
  • 在Android Oreo版本中没有收到FCM通知消息?
  • TTS错误:泄露ServiceConnection android.speech.tts.TextToSpeech
  • 致命exception:java.lang.IllegalStateException尚未连接GoogleApiClient
  • 错误:方法调用不明确。 AppCompactActivity和Activity中的findViewById(int)
  • 在intelliJ / Android Studio的Edit Configurations选项中设置模块?
  • Android:在选择子项时创建父选择器触发器
  • 在Android Native浏览器中上传的空文件
  • 在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. } } 

    我花了很多时间find“基本样本”……可能是发行说明中的​​一个链接:/所以有链接:

    • Gradle样本
    • 基本样本
    • 发行说明

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