AdvertisingIdClient要求提供元数据,尽管它已被包含在内

时间:2014-08-13 13:40:11

标签: android xml google-play-services advertising air-native-extension

我正在尝试创建ANE来获取AdvertisingId的android。我正在使用Flash Builder 4.7 AIR SDK 14.0。我可以成功创建ANE,但问题是,它总是抛出错误

A required `meta-data` tag in your app's `AndroidManifest.xml` does not exist.
You must have the following declaration within the
<application> element:
<meta-data android:name="com.google.android.gms.version"
android:value="@integer/google_play_services_version" />

我已经在我AndroidManifest.xml的Java应用程序ANE中添加了这个元数据。如果我在Application-app.xml的{​​{1}}标记中包含此标记,则不会抛出任何错误,但它不会继续。

这是我的android->application

AndroidManifest.xml

1 个答案:

答案 0 :(得分:0)

您的元数据使用似乎很好。问题在于android构建系统无法解析来自@integer/google_play_services_version的{​​{1}}。

这对于另一个Android项目来说甚至不是问题,但由于这是一个ANE项目,所以由ADT将res/values/version.xml文件夹放在最终APK的正确位置。这就是打包资源的用途。

注意:没有必要在Platform.xml中指定任何packagedDependencies以使用packagedResources。拥有一个只指定了packagedResources的Platform.xml是完全没问题的。

这里是关于在ANE版本中包含相关示例的资源的Link到Adobe的页面。

最糟糕的情况是,您可以使用res中的值替换@integer/google_play_services_version