2012-11-01 21 views
1

我沒有得到實際的AndroidRuntime錯誤。SecurityException從ProcessRecord的開放提供程序com.urbanairship.UrbanAhiphip提供程序不從uid導出

當我的項目崩潰,因爲我沒有關閉我讀取數據庫的數據庫。

實際上,當我的數據庫訪問活動處於打開狀態並且我從編輯器中運行該設備上的項目(Xoom)時,會發生這種情況。

崩潰的日誌如下。

11-01 12:09:27.090: E/SQLiteDatabase(5384): close() was never explicitly called on database '/data/data/com.android.mypype/databases/ua_analytics.db' 
11-01 12:09:27.090: E/SQLiteDatabase(5384): android.database.sqlite.DatabaseObjectNotClosedException: Application did not close the cursor or database object that was opened here 
11-01 12:09:27.090: E/SQLiteDatabase(5384):  at android.database.sqlite.SQLiteDatabase.<init>(SQLiteDatabase.java:1980) 
11-01 12:09:27.090: E/SQLiteDatabase(5384):  at android.database.sqlite.SQLiteDatabase.openDatabase(SQLiteDatabase.java:977) 
11-01 12:09:27.090: E/SQLiteDatabase(5384):  at android.database.sqlite.SQLiteDatabase.openDatabase(SQLiteDatabase.java:956) 
11-01 12:09:27.090: E/SQLiteDatabase(5384):  at android.database.sqlite.SQLiteDatabase.openOrCreateDatabase(SQLiteDatabase.java:1021) 
11-01 12:09:27.090: E/SQLiteDatabase(5384):  at android.app.ContextImpl.openOrCreateDatabase(ContextImpl.java:734) 
11-01 12:09:27.090: E/SQLiteDatabase(5384):  at android.content.ContextWrapper.openOrCreateDatabase(ContextWrapper.java:221) 
11-01 12:09:27.090: E/SQLiteDatabase(5384):  at android.database.sqlite.SQLiteOpenHelper.getWritableDatabase(SQLiteOpenHelper.java:149) 
11-01 12:09:27.090: E/SQLiteDatabase(5384):  at com.urbanairship.analytics.EventDataManager.<init>(Unknown Source) 
11-01 12:09:27.090: E/SQLiteDatabase(5384):  at com.urbanairship.analytics.Analytics.<init>(Unknown Source) 
11-01 12:09:27.090: E/SQLiteDatabase(5384):  at com.urbanairship.UAirship.takeOff(Unknown Source) 
11-01 12:09:27.090: E/SQLiteDatabase(5384):  at com.android.mypype.MypypeApplication.onCreate(MypypeApplication.java:93) 
11-01 12:09:27.090: E/SQLiteDatabase(5384):  at android.app.Instrumentation.callApplicationOnCreate(Instrumentation.java:968) 
11-01 12:09:27.090: E/SQLiteDatabase(5384):  at android.app.ActivityThread.handleBindApplication(ActivityThread.java:3598) 
11-01 12:09:27.090: E/SQLiteDatabase(5384):  at android.app.ActivityThread.access$2200(ActivityThread.java:122) 
11-01 12:09:27.090: E/SQLiteDatabase(5384):  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1040) 
11-01 12:09:27.090: E/SQLiteDatabase(5384):  at android.os.Handler.dispatchMessage(Handler.java:99) 
11-01 12:09:27.090: E/SQLiteDatabase(5384):  at android.os.Looper.loop(Looper.java:132) 
11-01 12:09:27.090: E/SQLiteDatabase(5384):  at android.app.ActivityThread.main(ActivityThread.java:4025) 
11-01 12:09:27.090: E/SQLiteDatabase(5384):  at java.lang.reflect.Method.invokeNative(Native Method) 
11-01 12:09:27.090: E/SQLiteDatabase(5384):  at java.lang.reflect.Method.invoke(Method.java:491) 
11-01 12:09:27.090: E/SQLiteDatabase(5384):  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:841) 
11-01 12:09:27.090: E/SQLiteDatabase(5384):  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:599) 
11-01 12:09:27.090: E/SQLiteDatabase(5384):  at dalvik.system.NativeStart.main(Native Method) 
11-01 12:09:27.090: E/AndroidRuntime(5384): FATAL EXCEPTION: main 
11-01 12:09:27.090: E/AndroidRuntime(5384): java.lang.RuntimeException: Unable to create application com.android.mypype.MypypeApplication: java.lang.SecurityException: Permission Denial: opening provider com.urbanairship.UrbanAirshipProvider from ProcessRecord{40ee74e8 5384:com.android.mypype:mypype_location_service/10069} (pid=5384, uid=10069) that is not exported from uid 10122 
11-01 12:09:27.090: E/AndroidRuntime(5384):  at android.app.ActivityThread.handleBindApplication(ActivityThread.java:3601) 
11-01 12:09:27.090: E/AndroidRuntime(5384):  at android.app.ActivityThread.access$2200(ActivityThread.java:122) 
11-01 12:09:27.090: E/AndroidRuntime(5384):  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1040) 
11-01 12:09:27.090: E/AndroidRuntime(5384):  at android.os.Handler.dispatchMessage(Handler.java:99) 
11-01 12:09:27.090: E/AndroidRuntime(5384):  at android.os.Looper.loop(Looper.java:132) 
11-01 12:09:27.090: E/AndroidRuntime(5384):  at android.app.ActivityThread.main(ActivityThread.java:4025) 
11-01 12:09:27.090: E/AndroidRuntime(5384):  at java.lang.reflect.Method.invokeNative(Native Method) 
11-01 12:09:27.090: E/AndroidRuntime(5384):  at java.lang.reflect.Method.invoke(Method.java:491) 
11-01 12:09:27.090: E/AndroidRuntime(5384):  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:841) 
11-01 12:09:27.090: E/AndroidRuntime(5384):  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:599) 
11-01 12:09:27.090: E/AndroidRuntime(5384):  at dalvik.system.NativeStart.main(Native Method) 
11-01 12:09:27.090: E/AndroidRuntime(5384): Caused by: java.lang.SecurityException: Permission Denial: opening provider com.urbanairship.UrbanAirshipProvider from ProcessRecord{40ee74e8 5384:com.android.mypype:mypype_location_service/10069} (pid=5384, uid=10069) that is not exported from uid 10122 
11-01 12:09:27.090: E/AndroidRuntime(5384):  at android.os.Parcel.readException(Parcel.java:1321) 
11-01 12:09:27.090: E/AndroidRuntime(5384):  at android.os.Parcel.readException(Parcel.java:1275) 
11-01 12:09:27.090: E/AndroidRuntime(5384):  at android.app.ActivityManagerProxy.getContentProvider(ActivityManagerNative.java:2014) 
11-01 12:09:27.090: E/AndroidRuntime(5384):  at android.app.ActivityThread.getProvider(ActivityThread.java:3673) 
11-01 12:09:27.090: E/AndroidRuntime(5384):  at android.app.ActivityThread.acquireProvider(ActivityThread.java:3698) 
11-01 12:09:27.090: E/AndroidRuntime(5384):  at android.app.ContextImpl$ApplicationContentResolver.acquireProvider(ContextImpl.java:1565) 
11-01 12:09:27.090: E/AndroidRuntime(5384):  at android.content.ContentResolver.acquireProvider(ContentResolver.java:909) 
11-01 12:09:27.090: E/AndroidRuntime(5384):  at android.content.ContentResolver.query(ContentResolver.java:296) 
11-01 12:09:27.090: E/AndroidRuntime(5384):  at com.urbanairship.UrbanAirshipResolver.query(Unknown Source) 
11-01 12:09:27.090: E/AndroidRuntime(5384):  at com.urbanairship.PreferencesResolver.get(Unknown Source) 
11-01 12:09:27.090: E/AndroidRuntime(5384):  at com.urbanairship.Preferences.getPreferenceFromDatabase(Unknown Source) 
11-01 12:09:27.090: E/AndroidRuntime(5384):  at com.urbanairship.Preferences.getPreference(Unknown Source) 
11-01 12:09:27.090: E/AndroidRuntime(5384):  at com.urbanairship.Preferences.getInt(Unknown Source) 
11-01 12:09:27.090: E/AndroidRuntime(5384):  at com.urbanairship.analytics.AnalyticsPreferences.getMaxBatchSize(Unknown Source) 
11-01 12:09:27.090: E/AndroidRuntime(5384):  at com.urbanairship.analytics.EventUploadManager.loadPrefs(Unknown Source) 
11-01 12:09:27.090: E/AndroidRuntime(5384):  at com.urbanairship.analytics.EventUploadManager.<init>(Unknown Source) 
11-01 12:09:27.090: E/AndroidRuntime(5384):  at com.urbanairship.analytics.Analytics.<init>(Unknown Source) 
11-01 12:09:27.090: E/AndroidRuntime(5384):  at com.urbanairship.UAirship.takeOff(Unknown Source) 
11-01 12:09:27.090: E/AndroidRuntime(5384):  at com.android.mypype.MypypeApplication.onCreate(MypypeApplication.java:93) 
11-01 12:09:27.090: E/AndroidRuntime(5384):  at android.app.Instrumentation.callApplicationOnCreate(Instrumentation.java:968) 
11-01 12:09:27.090: E/AndroidRuntime(5384):  at android.app.ActivityThread.handleBindApplication(ActivityThread.java:3598) 
11-01 12:09:27.090: E/AndroidRuntime(5384):  ... 10 more 

任何幫助將不勝感激..

+0

我遇到了與Android版本4.0.4三星注意到聖母院問題。任何幫助將被佔用。 [Question link here](http://stackoverflow.com/questions/13859840/application-crashes-on-installation-with-error-sqlite3-exec-failed-to-set-sync/13859865) – MobileEvangelist

回答

0

這件事對我的作品..

AirshipConfigOptions options = AirshipConfigOptions 
       .loadDefaultOptions(this); 

     UAirship.takeOff(this, options); 

     PushManager.enablePush(); 

希望它爲你工作了。

+0

@Vaiden你也可以檢查這個鏈接的解決方案,我處理異常。[鏈接...](http://stackoverflow.com/questions/13859840/application-crashes-on-installation-with-error-sqlite3-exec -failed到設置同步) – MobileEvangelist

0

檢查清單,你應該用你的包名命名的東西。 在清單中搜索「您的」並修改它們。

+0

爲什麼會發生這種情況訪問我的設備數據庫實際上與城市樓盤沒有任何關係? – MobileEvangelist

+0

有人認爲這是因爲proguard,我會檢查它並讓你知道! – AVEbrahimi

+0

你得到的解決方案? – MobileEvangelist