【发布时间】:2014-07-08 16:29:22
【问题描述】:
我之前为 Unity3d 实现了 Google play services 插件,一切运行良好,我正在更改项目名称并更新开发者控制台以从测试项目变为实际游戏,这时一切都崩溃了。我知道应用 ID 需要匹配,我再次按照所有指示进行操作,但似乎我做错了什么,无法找出问题所在。
自从这个插件发布以来,Unity3d 和 Android SDK 都已更新,我还想验证它是否仍在工作,因为 Google play 服务有几个 chan![在此处输入图片描述][1]ges。
下面是发生错误时我的 logcat。截至目前,我将其限制为仅尝试登录,即应用关闭并失败。
--------- beginning of /dev/log/main
--------- beginning of /dev/log/system
E/gpop.InstalledAppsGrid( 2351): Hidden list size 77
E/gpop.InstalledAppsGrid( 2351): Hidden list size 77
E/KeyMappingDownloader( 2351): No keymapping for com.DPGaming.Evolution
E/SQLiteDatabase( 2885): close() was never explicitly called on database '/data/data/com.google.android.gms/databases/metrics.db'
E/SQLiteDatabase( 2885): android.database.sqlite.DatabaseObjectNotClosedException: Application did not close the cursor or database object that was opened here
E/SQLiteDatabase( 2885): at android.database.sqlite.SQLiteDatabase.<init>(SQLiteDatabase.java:1943)
E/SQLiteDatabase( 2885): at android.database.sqlite.SQLiteDatabase.openDatabase(SQLiteDatabase.java:1007)
E/SQLiteDatabase( 2885): at android.database.sqlite.SQLiteDatabase.openDatabase(SQLiteDatabase.java:986)
E/SQLiteDatabase( 2885): at android.database.sqlite.SQLiteDatabase.openOrCreateDatabase(SQLiteDatabase.java:1051)
E/SQLiteDatabase( 2885): at android.app.ContextImpl.openOrCreateDatabase(ContextImpl.java:779)
E/SQLiteDatabase( 2885): at android.content.ContextWrapper.openOrCreateDatabase(ContextWrapper.java:221)
E/SQLiteDatabase( 2885): at android.database.sqlite.SQLiteOpenHelper.getWritableDatabase(SQLiteOpenHelper.java:157)
E/SQLiteDatabase( 2885): at android.database.sqlite.SQLiteOpenHelper.getReadableDatabase(SQLiteOpenHelper.java:231)
E/SQLiteDatabase( 2885): at fyc.d(SourceFile:96)
E/SQLiteDatabase( 2885): at fyc.a(SourceFile:220)
E/SQLiteDatabase( 2885): at com.google.android.gms.googlehelp.service.ClearHelpHistoryIntentService.onHandleIntent(SourceFile:47)
E/SQLiteDatabase( 2885): at android.app.IntentService$ServiceHandler.handleMessage(IntentService.java:65)
E/SQLiteDatabase( 2885): at android.os.Handler.dispatchMessage(Handler.java:99)
E/SQLiteDatabase( 2885): at android.os.Looper.loop(Looper.java:137)
E/SQLiteDatabase( 2885): at android.os.HandlerThread.run(HandlerThread.java:60)
E/System ( 2885): Uncaught exception thrown by finalizer
E/System ( 2885): java.lang.IllegalStateException: Don't have database lock!
E/System ( 2885): at android.database.sqlite.SQLiteDatabase.verifyLockOwner(SQLiteDatabase.java:2090)
E/System ( 2885): at android.database.sqlite.SQLiteDatabase$1.entryRemoved(SQLiteDatabase.java:2182)
E/System ( 2885): at android.database.sqlite.SQLiteDatabase$1.entryRemoved(SQLiteDatabase.java:2178)
E/System ( 2885): at android.util.LruCache.trimToSize(LruCache.java:197)
E/System ( 2885): at android.util.LruCache.evictAll(LruCache.java:285)
E/System ( 2885): at android.database.sqlite.SQLiteDatabase.deallocCachedSqlStatements(SQLiteDatabase.java:2143)
E/System ( 2885): at android.database.sqlite.SQLiteDatabase.closeClosable(SQLiteDatabase.java:1126)
E/System ( 2885): at android.database.sqlite.SQLiteDatabase.finalize(SQLiteDatabase.java:1914)
E/System ( 2885): at java.lang.Daemons$FinalizerDaemon.doFinalize(Daemons.java:182)
E/System ( 2885): at java.lang.Daemons$FinalizerDaemon.run(Daemons.java:168)
E/System ( 2885): at java.lang.Thread.run(Thread.java:856)
E/SQLiteDatabase( 2885): close() was never explicitly called on database '/data/data/com.google.android.gms/databases/help_responses.db'
E/SQLiteDatabase( 2885): android.database.sqlite.DatabaseObjectNotClosedException: Application did not close the cursor or database object that was opened here
E/SQLiteDatabase( 2885): at android.database.sqlite.SQLiteDatabase.<init>(SQLiteDatabase.java:1943)
E/SQLiteDatabase( 2885): at android.database.sqlite.SQLiteDatabase.openDatabase(SQLiteDatabase.java:1007)
E/SQLiteDatabase( 2885): at android.database.sqlite.SQLiteDatabase.openDatabase(SQLiteDatabase.java:986)
E/SQLiteDatabase( 2885): at android.database.sqlite.SQLiteDatabase.openOrCreateDatabase(SQLiteDatabase.java:1051)
E/SQLiteDatabase( 2885): at android.app.ContextImpl.openOrCreateDatabase(ContextImpl.java:779)
E/SQLiteDatabase( 2885): at android.content.ContextWrapper.openOrCreateDatabase(ContextWrapper.java:221)
E/SQLiteDatabase( 2885): at android.database.sqlite.SQLiteOpenHelper.getWritableDatabase(SQLiteOpenHelper.java:157)
E/SQLiteDatabase( 2885): at android.database.sqlite.SQLiteOpenHelper.getReadableDatabase(SQLiteOpenHelper.java:231)
E/SQLiteDatabase( 2885): at fxy.c(SourceFile:122)
E/SQLiteDatabase( 2885): at fxy.b(SourceFile:506)
E/SQLiteDatabase( 2885): at com.google.android.gms.googlehelp.service.ClearHelpHistoryIntentService.onHandleIntent(SourceFile:48)
E/SQLiteDatabase( 2885): at android.app.IntentService$ServiceHandler.handleMessage(IntentService.java:65)
E/SQLiteDatabase( 2885): at android.os.Handler.dispatchMessage(Handler.java:99)
E/SQLiteDatabase( 2885): at android.os.Looper.loop(Looper.java:137)
E/SQLiteDatabase( 2885): at android.os.HandlerThread.run(HandlerThread.java:60)
E/System ( 2885): Uncaught exception thrown by finalizer
E/System ( 2885): java.lang.IllegalStateException: Don't have database lock!
E/System ( 2885): at android.database.sqlite.SQLiteDatabase.verifyLockOwner(SQLiteDatabase.java:2090)
E/System ( 2885): at android.database.sqlite.SQLiteDatabase$1.entryRemoved(SQLiteDatabase.java:2182)
E/System ( 2885): at android.database.sqlite.SQLiteDatabase$1.entryRemoved(SQLiteDatabase.java:2178)
E/System ( 2885): at android.util.LruCache.trimToSize(LruCache.java:197)
E/System ( 2885): at android.util.LruCache.evictAll(LruCache.java:285)
E/System ( 2885): at android.database.sqlite.SQLiteDatabase.deallocCachedSqlStatements(SQLiteDatabase.java:2143)
E/System ( 2885): at android.database.sqlite.SQLiteDatabase.closeClosable(SQLiteDatabase.java:1126)
E/System ( 2885): at android.database.sqlite.SQLiteDatabase.finalize(SQLiteDatabase.java:1914)
E/System ( 2885): at java.lang.Daemons$FinalizerDaemon.doFinalize(Daemons.java:182)
E/System ( 2885): at java.lang.Daemons$FinalizerDaemon.run(Daemons.java:168)
E/System ( 2885): at java.lang.Thread.run(Thread.java:856)
E/SQLiteDatabase( 2885): close() was never explicitly called on database '/data/data/com.google.android.gms/databases/history_query.db'
E/SQLiteDatabase( 2885): android.database.sqlite.DatabaseObjectNotClosedException: Application did not close the cursor or database object that was opened here
E/SQLiteDatabase( 2885): at android.database.sqlite.SQLiteDatabase.<init>(SQLiteDatabase.java:1943)
E/SQLiteDatabase( 2885): at android.database.sqlite.SQLiteDatabase.openDatabase(SQLiteDatabase.java:1007)
E/SQLiteDatabase( 2885): at android.database.sqlite.SQLiteDatabase.openDatabase(SQLiteDatabase.java:986)
E/SQLiteDatabase( 2885): at android.database.sqlite.SQLiteDatabase.openOrCreateDatabase(SQLiteDatabase.java:1051)
E/SQLiteDatabase( 2885): at android.app.ContextImpl.openOrCreateDatabase(ContextImpl.java:779)
E/SQLiteDatabase( 2885): at android.content.ContextWrapper.openOrCreateDatabase(ContextWrapper.java:221)
E/SQLiteDatabase( 2885): at android.database.sqlite.SQLiteOpenHelper.getWritableDatabase(SQLiteOpenHelper.java:157)
E/SQLiteDatabase( 2885): at fzm.a(SourceFile:92)
E/SQLiteDatabase( 2885): at com.google.android.gms.googlehelp.service.ClearHelpHistoryIntentService.onHandleIntent(SourceFile:49)
E/SQLiteDatabase( 2885): at android.app.IntentService$ServiceHandler.handleMessage(IntentService.java:65)
E/SQLiteDatabase( 2885): at android.os.Handler.dispatchMessage(Handler.java:99)
E/SQLiteDatabase( 2885): at android.os.Looper.loop(Looper.java:137)
E/SQLiteDatabase( 2885): at android.os.HandlerThread.run(HandlerThread.java:60)
E/System ( 2885): Uncaught exception thrown by finalizer
E/System ( 2885): java.lang.IllegalStateException: Don't have database lock!
E/System ( 2885): at android.database.sqlite.SQLiteDatabase.verifyLockOwner(SQLiteDatabase.java:2090)
E/System ( 2885): at android.database.sqlite.SQLiteDatabase$1.entryRemoved(SQLiteDatabase.java:2182)
E/System ( 2885): at android.database.sqlite.SQLiteDatabase$1.entryRemoved(SQLiteDatabase.java:2178)
E/System ( 2885): at android.util.LruCache.trimToSize(LruCache.java:197)
E/System ( 2885): at android.util.LruCache.evictAll(LruCache.java:285)
E/System ( 2885): at android.database.sqlite.SQLiteDatabase.deallocCachedSqlStatements(SQLiteDatabase.java:2143)
E/System ( 2885): at android.database.sqlite.SQLiteDatabase.closeClosable(SQLiteDatabase.java:1126)
E/System ( 2885): at android.database.sqlite.SQLiteDatabase.finalize(SQLiteDatabase.java:1914)
E/System ( 2885): at java.lang.Daemons$FinalizerDaemon.doFinalize(Daemons.java:182)
E/System ( 2885): at java.lang.Daemons$FinalizerDaemon.run(Daemons.java:168)
E/System ( 2885): at java.lang.Thread.run(Thread.java:856)
E/InputDispatcher( 2155): Motion event has invalid pointer count 0; value must be between 1 and 16.
E/InputDispatcher( 2155): Motion event has invalid pointer count 0; value must be between 1 and 16.
E/Constants( 2351): Getting new oem
E/Constants( 2351): product.oem not found
E/Constants( 2351): Getting new oem
E/Constants( 2351): product.oem not found
E/Constants( 2351): Getting new oem
E/Constants( 2351): product.oem not found
E/Sensor-AccelerometerUI( 2377): java.io.IOException: Connection refused
E/PGA ( 4346): :::::::: PgaUtilsEnumToStr: invalid e 0x30e2
E/dalvikvm( 4346): Could not find class 'org.onepf.oms.appstore.TStoreRequestCallback', referenced from method org.onepf.oms.appstore.TStoreBillingService.launchPurchaseFlow
E/InputDispatcher( 2155): Motion event has invalid pointer count 0; value must be between 1 and 16.
E/NativeActivity( 4346): channel 'b321ddb0 com.DPGaming.Evolution/com.unity3d.player.UnityPlayerNativeActivity (client)' ~ Failed to receive dispatch signal. status=-11
E/InputDispatcher( 2155): Motion event has invalid pointer count 0; value must be between 1 and 16.
E/NativeActivity( 4346): channel 'b321ddb0 com.DPGaming.Evolution/com.unity3d.player.UnityPlayerNativeActivity (client)' ~ Failed to receive dispatch signal. status=-11
E/InputDispatcher( 2155): Motion event has invalid pointer count 0; value must be between 1 and 16.
E/NativeActivity( 4346): channel 'b321ddb0 com.DPGaming.Evolution/com.unity3d.player.UnityPlayerNativeActivity (client)' ~ Failed to receive dispatch signal. status=-11
E/InputDispatcher( 2155): Motion event has invalid pointer count 0; value must be between 1 and 16.
E/NativeActivity( 4346): channel 'b321ddb0 com.DPGaming.Evolution/com.unity3d.player.UnityPlayerNativeActivity (client)' ~ Failed to receive dispatch signal. status=-11
E/InputDispatcher( 2155): Motion event has invalid pointer count 0; value must be between 1 and 16.
E/NativeActivity( 4346): channel 'b321ddb0 com.DPGaming.Evolution/com.unity3d.player.UnityPlayerNativeActivity (client)' ~ Failed to receive dispatch signal. status=-11
E/InputDispatcher( 2155): Motion event has invalid pointer count 0; value must be between 1 and 16.
E/NativeActivity( 4346): channel 'b321ddb0 com.DPGaming.Evolution/com.unity3d.player.UnityPlayerNativeActivity (client)' ~ Failed to receive dispatch signal. status=-11
E/dalvikvm( 4346): Could not find class 'android.support.v4.app.FragmentActivity', referenced from method com.google.android.gms.common.GooglePlayServicesUtil.showErrorDialogFragment
E/dalvikvm( 4346): Could not find class 'android.support.v4.app.FragmentActivity', referenced from method com.google.android.gms.common.GooglePlayServicesUtil.showErrorDialogFragment
E/libEGL ( 4346): call to OpenGL ES API with no current context (logged once per thread)
E/dalvikvm( 4409): Could not find class 'org.onepf.oms.appstore.TStoreRequestCallback', referenced from method org.onepf.oms.appstore.TStoreBillingService.launchPurchaseFlow
另一个具有更多输出和调试的 LogCat 我找到了看起来是问题所在的区域,但是我不知道从哪里开始修复它。以下日志在 Social.localUser.Authenticate 之后立即发生
*******************************LOGCAT*************************
I/SystemUpdateService( 5243): cancelUpdate (empty URL)
W/System.err( 4501): Error: /data/data/libqemu_wl.user.txt: open failed: ENOENT (No such file or directory)
I/ActivityManager( 4501): package `com.android.providers.downloads` whitelisting status = false
I/dalvikvm( 5725): Could not find method android.view.View.getDisplay, referenced from method com.google.android.gms.games.internal.PopupManager$PopupManagerHCMR1.h
W/dalvikvm( 5725): VFY: unable to resolve virtual method 800: Landroid/view/View;.getDisplay ()Landroid/view/Display;
D/dalvikvm( 5725): VFY: replacing opcode 0x6e at 0x0009
I/dalvikvm( 5725): Could not find method android.view.ViewTreeObserver.removeOnGlobalLayoutListener, referenced from method com.google.android.gms.games.internal.PopupManager$PopupManagerHCMR1.g
W/dalvikvm( 5725): VFY: unable to resolve virtual method 845: Landroid/view/ViewTreeObserver;.removeOnGlobalLayoutListener (Landroid/view/ViewTreeObserver$OnGlobalLayoutListener;)V
D/dalvikvm( 5725): VFY: replacing opcode 0x6e at 0x0037
W/PopupManager( 5725): You have not specified a View to use as content view for popups. Falling back to the Activity content view which may not work properly in future versions of the API. Use setViewForPopups() to set your content view.
【问题讨论】:
标签: unity3d google-play-services