Android中的Aviary SDK更新

所以我们已经在我们的项目中使用了Aviary SDK很长一段时间了,没有发生任何问题。 但是,当我们将Aviary版本更新到最新版本时,会发现一些奇怪的行为 – 当您首次在设备上安装新版本的Aviary应用程序时安装应用程序,该应用程序版本与旧版Aviary版本一起使用时,应用程序崩溃,

FATAL EXCEPTION: IntentService[AviaryCdsService] java.lang.IllegalStateException: Missing required api key secret 

第二次运行已安装的应用程序工作正常,所有function都正常工作。 如果设备以前没有安装应用程序,则不会发生崩溃,安装运行良好。 从com.aviary.android.feather.sdk:aviary-sdk:3.4.3.351com.aviary.android.feather.sdk:aviary-sdk:3.6.3

有没有其他人有这样的问题,有没有办法避免这个崩溃?

Solutions Collecting From Web of "Android中的Aviary SDK更新"

创build应用程序类,并将下面的代码放在onCreate()methide中

Intent cdsIntent = AviaryIntent.createCdsInitIntent(getBaseContext(),API_SECRET,null); startService(cdsIntent);

如果您的应用没有Google Play结算公共API密钥,该怎么办?

答案在文档中。

4.1。 资产文件夹在应用程序的资产文件夹中创build一个名为“aviary”的文件夹。 在里面,创build一个名为“aviary.txt”的文件 – 在这个文件的第一行放上你的API秘密,并在第二行放上你的Google Play账单公共API密钥。 这个文件不是完全必要的,但是如果你排除它,你会收到警告。 我们这样做是为了在应用程序不活动时优化内容下载。 检查示例应用程序的资产文件夹以获取有关如何执行此操作的模板。

我遇到了同样的exception,但可能是因为我正在调用AviaryIntent.createCdsInitIntent 。 一旦我将调用AviaryIntent.createCdsInitIntentApplication AviaryIntent.createCdsInitIntent这个例外就消失了。