将Google Play服务添加到AdobeAIR Android的本机扩展

将Google Play服务添加到AdobeAIR Android的本机扩展,android,air,google-play-services,air-native-extension,ane,Android,Air,Google Play Services,Air Native Extension,Ane,好吧,我想知道有没有人把这件事扯了下来?我正在进行本机扩展,我的本机JAR通过反射使用googleplay服务。我已将Google Play Services库添加到我的本机扩展中,下面是platform.xml的样子: <platform xmlns="http://ns.adobe.com/air/extension/3.1"> <packagedDependencies> <packagedDependency>android-s

好吧,我想知道有没有人把这件事扯了下来?我正在进行本机扩展,我的本机JAR通过反射使用googleplay服务。我已将Google Play Services库添加到我的本机扩展中,下面是
platform.xml
的样子:

<platform xmlns="http://ns.adobe.com/air/extension/3.1">
    <packagedDependencies>
        <packagedDependency>android-support-v4.jar</packagedDependency>
        <packagedDependency>google-play-services.jar</packagedDependency>
    </packagedDependencies>
    <packagedResources>
        <packagedResource>
            <packageName>com.google.android.gms</packageName>
            <folderName>google-play-services-res</folderName>
        </packagedResource>
    </packagedResources>
</platform>
当我构建一个没有Google Play Services库(大约5.1MB)的电子邮箱时,我发现我的电子邮箱有800KB。在像这样添加了GooglePlay服务依赖项之后,ANE大约有6MB的内存,这对我来说表明
platform.xml
中声明的这些JAR以某种方式捆绑在本机扩展中。现在,我的原生JAR有一些函数,我可以查看从Google Play Services库调用方法是否失败。当我从我制作的AIR Android应用程序中调用它时,它总是失败,我在那里集成了这个生成的ANE

所以,我的
native
JAR和
googleplay-services
JAR在打包到我的电子邮箱之前是并排站着的,但是在从我的native JAR触发方法后,它发现它不知道google-play-services.JAR在任何地方

作为记录,我在将AIR与本机库桥接方面没有任何问题,所有调用都正常工作,我向ActionScript文件公开的界面功能齐全,只是本机库正在执行某些操作,这取决于是否找到Google Play服务,在我的情况下->它们从未找到

你知道我可能做错了什么,以及如何解决这个问题吗


提前谢谢。

您可以使用此电子邮件:


我们已经把这些库和资源都打包在里面了

我使用以下代码设法让Google Play服务正常工作(仅使用必要的JAR文件):

您可以看到我如何使用此拉取请求详细信息,从最小的“hello”电子邮件中使其工作:

我从SDK中获得了GPS jar文件,从AAR档案中提取这些文件,如:

extras\google\m2repository\com\google\android\gms\play-services-base\9.4.0\play-services-base-9.4.0.aar

在每个
aar
(这只是一个
zip
)中,文件是
classes.jar
,我只是在我的项目中复制并重命名为
play-services-base-9.4.0.jar


此外,要使GPS正常运行,您必须在应用程序清单中指定正确的应用程序ID,如:

谢谢链接,我无法在搜索中找到此存储库,请注意:不管怎样,最后我将google-play-services.jar包装到一个没有ActionScript接口的电子邮箱中,因为对于我的特殊情况,我不需要任何接口。我将坚持使用我的实现,因为我只需要Google Play Services库的一些部分,并且我只在库中保留我需要的东西,从而导致ANE为260万而不是像您的项目中那样的1070万。我最终会发布我是如何做到这一点的答案。我只是想指出,如果你打算使用其他的电子邮箱,那么剥离其他的库可能会有问题。所以,如果你正在使用任何其他与谷歌相关的电子邮件,请小心s@Michael我如何使用您的.ane文件来代替google play services.jar?您好,我们的google play services ane只需包装play services库中的相应jar和资源。因此,如果您正在根据play services library的一个版本制作一个ANE构建,那么不要将它们与您的ANE打包,而是包含我们的ANE。如果这不合理,请告诉我。你是如何获得google play services-.jar的??这不是谷歌提供的jar…好吧,一旦你将Google play服务下载到你的计算机上,如果你像我一样使用Mac OS X,你可以在Google-play-Services_lib文件夹中找到它。不,仍然没有jar。
android
- nativeLib.jar
- android-support-v4.jar
- google-play-services-res (folder)
- google-play-services.jar
- library.swf