2013-07-11 89 views
1

我需要在我的应用程序中使用In App Billing服务。我想知道是否可以将生成的.java放入包中,并引用它而不是使用IInAppBillingService.aidl。是否可以使用生成的Java接口而不是AIDL

从理论上讲,它不能与服务进行相同的沟通吗?

+1

任何特别的原因,为什么你会想为自己做出更多的工作,同样的结果? – ianhanniballake

+0

您可以通过检查生成的代码来了解AIDL生成的代码比Java界面更多。 – CommonsWare

+0

@ianhanniballake我将把包含AIDL引用类的项目编译为jar。 我需要设置POM的_packaging_参数_apk_ Maven的正确地从AIDL生成类。当我这样做时,它将项目编译成一个apk以及一个jar文件。当我直接使用该类并将_packaging_设置为_jar_时,似乎没有必要。这不是一个障碍或预防,但我想知道如果这是可能的..我想答案可以帮助我更多地了解AIDL/IDL概念。 –

回答

1

当然,您可以使用Java生成的文件而不是AIDL。基本上,AIDL接口在编译程序期间被翻译成java文件,然后不再使用。这种模式有时在Android平台编程中使用(例如,ActivityManager不是从AIDL接口创建的,但有独立的java文件实现代理和存根接口)。我认为你可以从AIDL中获取一个生成的java文件,并将其直接放到你的服务和客户端项目中。

相关问题