question

teyonlodz avatar image
teyonlodz asked

GameCircle initialization fails on Kindle Fire HD 7

We have problem with GameCircle in our game. I'm writing on forum because I'm out of ideas what is wrong and it is really important to fix this issue as fast as possible because it prevents us from publishing our game in store and for some reason when I tried to use contact form to Amazon in the from field is our publishers email and name (which looks like a bug). GameCircle fails to initialize with error "CANNOT_INITIALIZE" when running on Kindle Fire HD 7 3rd gen (and probably other Kindles HD too) when downloading app from Live App Testing (or when submitted to Amazon). It is initializing correctly on Kindle Fire HDX 8,9 and non-kindle android tablet when downloaded from Live App Testing and the same Kindle HD 7 when installed manually (with the same APK file as in Live App Testing). Have anyone encountered this kind of problem? What is different about Kindle Fire HD 7 and Kindle Fire HDX 8.9 that can affect GameCircle behavior? More information about app: - Game is mostly written in C++ we use SDL2 for interactions with system and some our Java code to interact with APIs - We initialize GameCircle in Java but in many cases we use JNI Bindings - GameCircleSDK version: 2.4.1 or 2.5.1 ( ReleaseNotes.txt have conflicting information) - Android NDK r9d and Clang3.4 as compiler - Target and min SDK version: 14 - Android SDK API Level 19 is used when compiling GameCircle initialization log (kind of long but I'm not sure witch parts are irrelevant, sorry): 08-25 14:12:41.155: D/KindleFireIPCProxy(7943): Device appears to be a Kindle Fire. Attempting to connect to Amazon Game Services 08-25 14:12:41.155: D/KindleFireIPCProxy(7943): binding result:true 08-25 14:12:41.155: W/ActivityManager(393): Service attempted to set foreground with invalid notification (notifications must have an icon) - rejecting. 08-25 14:12:41.209: V/KindleFireIPCProxy(7943): synchronousBinder:null serviceMessengerClient:android.os.Messenger@4105d360 08-25 14:12:41.209: D/KindleFireIPCProxy(7943): Client is bound to service 08-25 14:12:41.209: D/KindleFireIPCProxy(7943): Device has compatible version of Amazon Game Services. 08-25 14:12:41.217: D/KindleFireIPCProxy(7943): Attempting to Authorize 08-25 14:12:41.225: D/KindleFireIPCProxy(7943): Handling authorize callback 08-25 14:12:41.225: D/KindleFireIPCProxy(7943): authResult: AUTHORIZED 08-25 14:12:41.225: D/KindleFireIPCProxy(7943): Client is bound to service 08-25 14:12:41.225: D/KindleFireIPCProxy(7943): Attempting to check is authenticated 08-25 14:12:41.225: D/KindleFireIPCProxy(7943): Changing Status from:INITIALIZING to: SERVICE_CONNECTED 08-25 14:12:41.272: W/AGS_ImageDownloader(2512): Directory not created 08-25 14:12:41.311: V/DoNotDisturb(393): Top component: com.teyon.paranormalstate/com.teyon.hoe.HOEActivity 08-25 14:12:41.624: D/Kiwi(7943): CommandServiceClient: Blocking for result from service 08-25 14:12:41.624: D/Kiwi(7943): CommandServiceClient: Received result from service 08-25 14:12:41.624: D/Kiwi(7943): AbstractCommandTask: Received result from CommandService: CommandResult: [CallingUid: 32004, SuccessResult: com.amazon.venezia.command.x@41085770, FailureResult: null, DecisionResult: null, ExceptionResult: null] 08-25 14:12:41.624: D/Kiwi(7943): CommandResultVerifier: Verifying auth token: 08-25 14:12:41.624: D/Kiwi(7943): DataAuthenticationKeyLoader: Loading data authentication key... 08-25 14:12:41.624: D/Kiwi(7943): DataAuthenticationKeyLoader: Checking KiwiDataStore for key... 08-25 14:12:41.624: D/Kiwi(7943): ExpirableValueDataStore: Fetching value: DATA_AUTHENTICATION_KEY 08-25 14:12:41.624: D/Kiwi(7943): ExpirableValueDataStore: Value not present in store, returning null 08-25 14:12:41.624: D/Kiwi(7943): DataAuthenticationKeyLoader: Key was cached: false 08-25 14:12:41.624: D/Kiwi(7943): DataAuthenticationKeyLoader: Loading authentication key from apk... 08-25 14:12:41.624: D/Kiwi(7943): DataAuthenticationKeyLoader: Opening apk: /data/app/com.teyon.paranormalstate-1.apk 08-25 14:12:41.624: I/AmazonAppstore.BasicBlockedAppDetector(7480): App blocked status: [asin=B00MUF0IY6, version=1, blocked=false] 08-25 14:12:41.631: I/AmazonInsightsSDK(7943): Event: '_http...' recorded to local filestore 08-25 14:12:41.631: I/AmazonInsightsSDK(7943): Successful submission of 4 events 08-25 14:12:41.655: I/com.amazon.dcp.framework.IntentEvent(7250): Intent { act=android.intent.action.BATTERY_CHANGED flg=0x60000010 (has extras) } 08-25 14:12:41.741: V/com.amazon.dcp.framework.BatteryManagerHelper(7250): BatteryLevel :66 BatteryScale :100 BatteryPercent :66 08-25 14:12:41.749: I/com.amazon.dcp.ota.OTAInstallScheduler(7250): Not ready to start OS update: com.amazon.soho.android.os 325001620: MusicOn|ScreenOn|MTPIsNotIdleLongEnough 08-25 14:12:41.819: V/com.amazon.dcp.ota.InMemoryOTAStatusCollector(7250): Recording OTAStatus for: 261048793 info:Not ready to start OS update: com.amazon.soho.android.os 325001620: MusicOn|ScreenOn|MTPIsNotIdleLongEnough 08-25 14:12:41.920: E/com.amazon.dcp.ota.OTAStatusDb(7250): Could not insert into hsitory 08-25 14:12:42.092: E/com.amazon.dcp.ota.OTAStatusDb(7250): Could not add 261048793. 08-25 14:12:42.092: E/com.amazon.dcp.ota.OTAStatusDb(7250): com.amazon.dcp.framework.SQLiteDatabaseWrapper$9: Error inserting into table OTAStatusMessageTable (conflictAlgorithm = 3) 08-25 14:12:42.092: E/com.amazon.dcp.ota.OTAStatusDb(7250): at com.amazon.dcp.framework.SQLiteDatabaseWrapper.wrapSQLException(SQLiteDatabaseWrapper.java:412) 08-25 14:12:42.092: E/com.amazon.dcp.ota.OTAStatusDb(7250): at com.amazon.dcp.framework.SQLiteDatabaseWrapper.insertWithOnConflict(SQLiteDatabaseWrapper.java:158) 08-25 14:12:42.092: E/com.amazon.dcp.ota.OTAStatusDb(7250): at com.amazon.dcp.ota.OTAStatusDb.insertIntoStatus(OTAStatusDb.java:308) 08-25 14:12:42.092: E/com.amazon.dcp.ota.OTAStatusDb(7250): at com.amazon.dcp.ota.OTAStatusDb.insertRow(OTAStatusDb.java:295) 08-25 14:12:42.092: E/com.amazon.dcp.ota.OTAStatusDb(7250): at com.amazon.dcp.ota.OTAStatusDb.recordStatusInfo(OTAStatusDb.java:149) 08-25 14:12:42.092: E/com.amazon.dcp.ota.OTAStatusDb(7250): at com.amazon.dcp.ota.DefaultOTAStatusCollector.recordStatusInfo(DefaultOTAStatusCollector.java:19) 08-25 14:12:42.092: E/com.amazon.dcp.ota.OTAStatusDb(7250): at com.amazon.dcp.ota.OTAMetrics.reportInstallableOTAUpdateStatus(OTAMetrics.java:242) 08-25 14:12:42.092: E/com.amazon.dcp.ota.OTAStatusDb(7250): at com.amazon.dcp.ota.OTAInstallScheduler.getNextUpdateReadyToInstall(OTAInstallScheduler.java:239) 08-25 14:12:42.092: E/com.amazon.dcp.ota.OTAStatusDb(7250): at com.amazon.dcp.ota.OTAInstallScheduler.waitForInstallTime(OTAInstallScheduler.java:172) 08-25 14:12:42.092: E/com.amazon.dcp.ota.OTAStatusDb(7250): at com.amazon.dcp.ota.OTAInstallScheduler.waitForInstallTime(OTAInstallScheduler.java:152) 08-25 14:12:42.092: E/com.amazon.dcp.ota.OTAStatusDb(7250): at com.amazon.dcp.ota.OTAUpdater.installManifest(OTAUpdater.java:414) 08-25 14:12:42.092: E/com.amazon.dcp.ota.OTAStatusDb(7250): at com.amazon.dcp.ota.OTAUpdater.processReadyUpdates(OTAUpdater.java:217) 08-25 14:12:42.092: E/com.amazon.dcp.ota.OTAStatusDb(7250): at com.amazon.dcp.ota.ProcessingTask.start(ProcessingTask.java:27) 08-25 14:12:42.092: E/com.amazon.dcp.ota.OTAStatusDb(7250): at com.amazon.dcp.ota.SchedulingTask.runImpl(SchedulingTask.java:41) 08-25 14:12:42.092: E/com.amazon.dcp.ota.OTAStatusDb(7250): at com.amazon.dcp.framework.CrashReportingRunnable.run(CrashReportingRunnable.java:16) 08-25 14:12:42.092: E/com.amazon.dcp.ota.OTAStatusDb(7250): at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:390) 08-25 14:12:42.092: E/com.amazon.dcp.ota.OTAStatusDb(7250): at java.util.concurrent.FutureTask.run(FutureTask.java:234) 08-25 14:12:42.092: E/com.amazon.dcp.ota.OTAStatusDb(7250): at com.amazon.dcp.framework.MagicFutureTask.run(MagicFutureTask.java:36) 08-25 14:12:42.092: E/com.amazon.dcp.ota.OTAStatusDb(7250): at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1080) 08-25 14:12:42.092: E/com.amazon.dcp.ota.OTAStatusDb(7250): at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:573) 08-25 14:12:42.092: E/com.amazon.dcp.ota.OTAStatusDb(7250): at java.lang.Thread.run(Thread.java:856) 08-25 14:12:42.092: E/com.amazon.dcp.ota.OTAStatusDb(7250): Caused by: android.database.sqlite.SQLiteConstraintException: foreign key constraint failed (code 19) 08-25 14:12:42.092: E/com.amazon.dcp.ota.OTAStatusDb(7250): at android.database.sqlite.SQLiteConnection.nativeExecuteForLastInsertedRowId(Native Method) 08-25 14:12:42.092: E/com.amazon.dcp.ota.OTAStatusDb(7250): at android.database.sqlite.SQLiteConnection.executeForLastInsertedRowId(SQLiteConnection.java:775) 08-25 14:12:42.092: E/com.amazon.dcp.ota.OTAStatusDb(7250): at android.database.sqlite.SQLiteSession.executeForLastInsertedRowId(SQLiteSession.java:788) 08-25 14:12:42.092: E/com.amazon.dcp.ota.OTAStatusDb(7250): at android.database.sqlite.SQLiteStatement.executeInsert(SQLiteStatement.java:86) 08-25 14:12:42.092: E/com.amazon.dcp.ota.OTAStatusDb(7250): at android.database.sqlite.SQLiteDatabase.insertWithOnConflict(SQLiteDatabase.java:1477) 08-25 14:12:42.092: E/com.amazon.dcp.ota.OTAStatusDb(7250): at com.amazon.dcp.framework.SQLiteDatabaseWrapper$5.call(SQLiteDatabaseWrapper.java:163) 08-25 14:12:42.092: E/com.amazon.dcp.ota.OTAStatusDb(7250): at com.amazon.dcp.framework.SQLiteDatabaseWrapper$5.call(SQLiteDatabaseWrapper.java:159) 08-25 14:12:42.092: E/com.amazon.dcp.ota.OTAStatusDb(7250): at com.amazon.dcp.framework.SQLiteDatabaseWrapper.wrapSQLException(SQLiteDatabaseWrapper.java:408) 08-25 14:12:42.092: E/com.amazon.dcp.ota.OTAStatusDb(7250): ... 20 more 08-25 14:12:42.116: I/com.amazon.dcp.framework.IntentEvent(7250): Wakeup alarm set to 60000ms from now 08-25 14:12:42.631: V/com.amazon.gallery.framework.network.http.PollThread(7126): PollThread#run(): invoking poll runnable 08-25 14:12:42.803: D/Kiwi(7943): DataAuthenticationKeyLoader: Searching for cert in apk 08-25 14:12:42.866: D/Kiwi(7943): DataAuthenticationKeyLoader: Extracting cert from entry: kiwi 08-25 14:12:42.866: D/Kiwi(7943): DataAuthenticationKeyLoader: Generating certificates from entry input stream 08-25 14:12:43.452: V/com.amazon.gallery.framework.network.http.PollThread(7126): PollThread#run(): waiting until 1408969063464 08-25 14:12:43.678: I/com.amazon.dcp.framework.IntentEvent(7250): Intent { act=android.intent.action.BATTERY_CHANGED flg=0x60000010 (has extras) } 08-25 14:12:43.874: V/com.amazon.dcp.framework.BatteryManagerHelper(7250): BatteryLevel :66 BatteryScale :100 BatteryPercent :66 08-25 14:12:43.874: V/com.amazon.dcp.ota.OTAInstallScheduler(7250): Not ready to start OS update: com.amazon.soho.android.os 325001620: MusicOn|ScreenOn|MTPIsNotIdleLongEnough 08-25 14:12:43.905: I/com.amazon.dcp.framework.IntentEvent(7250): Wakeup alarm set to 60000ms from now 08-25 14:12:43.959: D/Kiwi(7943): DataAuthenticationKeyLoader: Kiwi Cert Details: CN= Amazon.com\, Inc.,OU=Digital ID Class 3 - Java Object Signing,OU=Digital ID Class 3 - Java Object Signing,O= Amazon.com\, Inc.,L=Seattle,ST=Washington,C=US 08-25 14:12:45.709: I/com.amazon.dcp.framework.IntentEvent(7250): Intent { act=android.intent.action.BATTERY_CHANGED flg=0x60000010 (has extras) } 08-25 14:12:45.819: V/com.amazon.dcp.framework.BatteryManagerHelper(7250): BatteryLevel :66 BatteryScale :100 BatteryPercent :66 08-25 14:12:45.834: V/com.amazon.dcp.ota.OTAInstallScheduler(7250): Not ready to start OS update: com.amazon.soho.android.os 325001620: MusicOn|ScreenOn|MTPIsNotIdleLongEnough 08-25 14:12:45.858: I/com.amazon.dcp.framework.IntentEvent(7250): Wakeup alarm set to 60000ms from now 08-25 14:12:45.975: D/Kiwi(7943): CertVerifier: loaded 13 certs 08-25 14:12:46.006: D/Kiwi(7943): CertVerifier: CertVerifier doesn't care about an out of date certificate. 08-25 14:12:46.006: D/Kiwi(7943): DataAuthenticationKeyLoader: Placing auth key into storage 08-25 14:12:46.006: D/Kiwi(7943): ExpirableValueDataStore: Placing non-expiring value into store with key: DATA_AUTHENTICATION_KEY 08-25 14:12:46.006: D/Kiwi(7943): SignatureVerifier: 08-25 14:12:46.014: D/Kiwi(7943): AbstractCommandTask: Command executed successfully 08-25 14:12:47.670: V/com.amazon.gallery.framework.network.http.PollThread(7126): PollThread#run(): invoking poll runnable 08-25 14:12:47.741: I/com.amazon.dcp.framework.IntentEvent(7250): Intent { act=android.intent.action.BATTERY_CHANGED flg=0x60000010 (has extras) } 08-25 14:12:47.944: V/com.amazon.dcp.framework.BatteryManagerHelper(7250): BatteryLevel :66 BatteryScale :100 BatteryPercent :66 08-25 14:12:47.944: V/com.amazon.dcp.ota.OTAInstallScheduler(7250): Not ready to start OS update: com.amazon.soho.android.os 325001620: MusicOn|ScreenOn|MTPIsNotIdleLongEnough 08-25 14:12:48.092: I/com.amazon.dcp.framework.IntentEvent(7250): Wakeup alarm set to 60000ms from now 08-25 14:12:48.217: I/AmznGallery_WhisperCache(7126): Request fetch of 256 assets 08-25 14:12:48.217: I/AmznGallery_WhisperCache(7126): Request fetch of 256 assets is completed 08-25 14:12:48.280: I/AmznGallery_WhisperCache(7126): Request fetch of 2048 assets 08-25 14:12:48.280: I/AmznGallery_WhisperCache(7126): Request fetch of 2048 assets is completed 08-25 14:12:48.303: I/AmznGallery_WhisperCache(7126): Request fetch of originals 08-25 14:12:48.303: I/AmznGallery_WhisperCache(7126): Request fetch of originals is completed 08-25 14:12:48.311: I/AmznGallery_WhisperCache(7126): Request fetch of originals 08-25 14:12:48.311: I/AmznGallery_WhisperCache(7126): Request fetch of originals is completed 08-25 14:12:48.311: V/com.amazon.gallery.framework.network.http.PollThread(7126): PollThread#run(): waiting until 1408969068323 08-25 14:12:48.366: I/AvailabilitySDK(7480): putMeasurement - venezia-metrics 08-25 14:12:48.366: W/Settings(7480): Setting airplane_mode_on has moved from android.provider.Settings.System to android.provider.Settings.Global, returning read-only value. 08-25 14:12:48.374: I/dalvikvm(7480): Jit: resizing JitTable from 4096 to 8192 08-25 14:12:48.491: I/AmazonAppstore.SchedulePeriodicWork(7480): com.amazon.venezia/com.amazon.sdk.availability.AvailabilityService-SubmitMeasurements is being scheduled. 08-25 14:12:49.772: I/com.amazon.dcp.framework.IntentEvent(7250): Intent { act=android.intent.action.BATTERY_CHANGED flg=0x60000010 (has extras) } 08-25 14:12:49.913: V/com.amazon.dcp.framework.BatteryManagerHelper(7250): BatteryLevel :66 BatteryScale :100 BatteryPercent :66 08-25 14:12:49.913: V/com.amazon.dcp.ota.OTAInstallScheduler(7250): Not ready to start OS update: com.amazon.soho.android.os 325001620: MusicOn|ScreenOn|MTPIsNotIdleLongEnough 08-25 14:12:49.944: I/com.amazon.dcp.framework.IntentEvent(7250): Wakeup alarm set to 60000ms from now 08-25 14:12:51.241: E/GameCircle(7943): Can't initialzie GameCircle! Erorr: CANNOT_INITIALIZE 08-25 14:12:51.249: W/GC_AsynchronousReplyMessenger(7943): Request 45bc0943-2548-45ab-b43a-7fa2cf24ecaf timed out. 08-25 14:12:51.249: I/AmazonInsightsSDK(7943): Event: 'GameC...' recorded to local filestore 08-25 14:12:51.397: D/AbstractMetricsFactoryImpl(7376): record : No data points in metrics event 08-25 14:12:51.819: I/com.amazon.dcp.framework.IntentEvent(7250): Intent { act=android.intent.action.BATTERY_CHANGED flg=0x60000010 (has extras) } I hope this post will look alright because preview does not work.
10 |5000

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.

1 Answer

DougM@Amazon avatar image
DougM@Amazon answered
Hello teyonlodz, Could you please submit a case via https://developer.amazon.com/public/support/contact/contact-us as we will want to diagnose your GameCircle configuration specific to your Mobile App Distribution Portal account. Specifically we would want a link to your APK file that you are using so that way we can figure out if either you have entered an incorrect API key or if there is a back end authentication problem on our side.
10 |5000

Up to 2 attachments (including images) can be used with a maximum of 512.0 KiB each and 1.0 MiB total.