IAB,onActivityResult()和奇怪的消息“从非活动上下文调用startActivity”

时间:2015-10-08 22:29:43

标签: android in-app-billing onactivityresult

我正在使用OpenIAB支持在我的应用中购买应用(OpenIAB使用谷歌代码为Google Play商店实施IAP)。问题是,有时,当我调用launchPurchaseFlow()时,我的FragmentActivity的onActivityResult()方法不会被调用。检查日志,我发现当发生这种情况时,总会有以下消息:

  

W / ActivityManager(319):从非活动调用的startActivity   context:强制Intent.FLAG_ACTIVITY_NEW_TASK:Intent {   CMP = com.android.vending / com.google.android.finsky.billing.lightpurchase.IabV3Activity   (有额外的)}

当发生这种情况时,我必须关闭应用程序。通常它会在一段时间后再次开始工作(我完全不知道为什么会如此)。 我不知道为什么会出现这个消息,因为上下文显然是我的活动(实际上它大部分时间都有效)。我不得不说我的设备上安装的.apk是关于在开发者控制台测试版中上传的apk的更新版本,我正在使用我的谷歌开发者帐户来测试IAP。这意味着我无法进行任何真正的购买。但是,这并不重要,因为我正在测试应用程序。 这些是我的问题:

  1. 为结果启动活动是否正确? FLAG_ACTIVITY_NEW_TASK阻止调用onActivityResult()?
  2. 你如何解释这条消息?
  3. 关于第一个问题,我已经使用launchMode = singleTask进行了测试,其行为与la​​unchMode = singleTop相同。

0 个答案:

没有答案