[Android Apps and Games] tehownt:
Still getting ROM crashes because of Pdroid

First of all I want to thank you for Pdroid development, it really is the one thing that should be integrated into all roms and even AOSP by default.

I have a couple of issues using ICS 4.0.4 BCM RC4.1U2 GSM/CDMA that has Pdroid pre-installed I get lots of ROM reboots caused by fatal system crashes that log out like this :

*** FATAL EXCEPTION IN SYSTEM PROCESS: NetworkPolicy
java.lang.RuntimeException: Error receiving broadcast Intent { act=android.net.conn.CONNECTIVITY_CHANGE_IMMEDIATE flg=0x10000010 (has extras) } in com.android.server.net.NetworkPolicyManagerService$7@40e7a0a8
at android.app.LoadedApk$ReceiverDispatcher$Args.run(LoadedApk.java:737)
at android.os.Handler.handleCallback(Handler.java:605)
at android.os.Handler.dispatchMessage(Handler.java:92)
at android.os.Looper.loop(Looper.java:137)
at android.os.HandlerThread.run(HandlerThread.java:60)
Caused by: java.lang.NullPointerException
at android.database.sqlite.SQLiteDatabase.releaseCompiledSqlObj(SQLiteDatabase.java:2203)
at android.database.sqlite.SQLiteProgram.release(SQLiteProgram.java:183)
at android.database.sqlite.SQLiteProgram.onAllReferencesReleased(SQLiteProgram.java:168)
at android.database.sqlite.SQLiteClosable.releaseReference(SQLiteClosable.java:46)
at android.database.sqlite.SQLiteProgram.close(SQLiteProgram.java:341)
at android.database.sqlite.SQLiteQuery.close(SQLiteQuery.java:162)
at android.database.sqlite.SQLiteCursor.close(SQLiteCursor.java:224)
at android.privacy.PrivacyPersistenceAdapter.getSettings(PrivacyPersistenceAdapter.java:369)
at android.privacy.PrivacySettingsManagerService.getSettings(PrivacySettingsManagerService.java:55)
at android.privacy.PrivacySettingsManager.getSettings(PrivacySettingsManager.java:39)
at android.privacy.PrivacySettingsManager.getSettings(PrivacySettingsManager.java:32)
at android.privacy.surrogate.PrivacyTelephonyManager.getSubscriberId(PrivacyTelephonyManager.java:247)
at com.android.server.net.NetworkPolicyManagerService.getActiveSubscriberId(NetworkPolicyManagerService.java:1549)
at com.android.server.net.NetworkPolicyManagerService.ensureActiveMobilePolicyLocked(NetworkPolicyManagerService.java:868)
at com.android.server.net.NetworkPolicyManagerService.access$1000(NetworkPolicyManagerService.java:148)
at com.android.server.net.NetworkPolicyManagerService$7.onReceive(NetworkPolicyManagerService.java:690)
at android.app.LoadedApk$ReceiverDispatcher$Args.run(LoadedApk.java:728)
... 4 more

Also there's a couple of concurrent privacy.db access errors, but those could more or less be inocuous :

PrivacyPersistenceAdapter(23825)getSettings - failed to get settings for package: android
PrivacyPersistenceAdapter(23825)java.lang.IllegalStateException: database /data/system/privacy.db (conn# 0) already closed
PrivacyPersistenceAdapter(23825)at android.database.sqlite.SQLiteDatabase.verifyDbIsOpen(SQLiteDatabase.java:2082)
PrivacyPersistenceAdapter(23825)at android.database.sqlite.SQLiteDatabase.lock(SQLiteDatabase.java:413)
PrivacyPersistenceAdapter(23825)at android.database.sqlite.SQLiteDatabase.lock(SQLiteDatabase.java:400)
PrivacyPersistenceAdapter(23825)at android.database.sqlite.SQLiteQuery.fillWindow(SQLiteQuery.java:79)
PrivacyPersistenceAdapter(23825)at android.database.sqlite.SQLiteCursor.fillWindow(SQLiteCursor.java:164)
PrivacyPersistenceAdapter(23825)at android.database.sqlite.SQLiteCursor.getCount(SQLiteCursor.java:156)
PrivacyPersistenceAdapter(23825)at android.database.AbstractCursor.moveToPosition(AbstractCursor.java:161)
PrivacyPersistenceAdapter(23825)at android.database.AbstractCursor.moveToFirst(AbstractCursor.java:201)
PrivacyPersistenceAdapter(23825)at android.privacy.PrivacyPersistenceAdapter.getSettings(PrivacyPersistenceAdapter.java:338)
PrivacyPersistenceAdapter(23825)at android.privacy.PrivacySettingsManagerService.getSettings(PrivacySettingsManagerService.java:55)
PrivacyPersistenceAdapter(23825)at android.privacy.PrivacySettingsManager.getSettings(PrivacySettingsManager.java:39)
PrivacyPersistenceAdapter(23825)at android.privacy.PrivacySettingsManager.getSettings(PrivacySettingsManager.java:32)
PrivacyPersistenceAdapter(23825)at android.privacy.surrogate.PrivacyTelephonyManager.getSubscriberId(PrivacyTelephonyManager.java:247)
PrivacyPersistenceAdapter(23825)at com.android.server.net.NetworkPolicyManagerService.getActiveSubscriberId(NetworkPolicyManagerService.java:1549)
PrivacyPersistenceAdapter(23825)at com.android.server.net.NetworkPolicyManagerService.setNetworkTemplateEnabled(NetworkPolicyManagerService.java:739)
PrivacyPersistenceAdapter(23825)at com.android.server.net.NetworkPolicyManagerService.updateNetworkEnabledLocked(NetworkPolicyManagerService.java:712)
PrivacyPersistenceAdapter(23825)at com.android.server.net.NetworkPolicyManagerService.access$700(NetworkPolicyManagerService.java:148)
PrivacyPersistenceAdapter(23825)at com.android.server.net.NetworkPolicyManagerService$7.onReceive(NetworkPolicyManagerService.java:691)
PrivacyPersistenceAdapter(23825)at android.app.LoadedApk$ReceiverDispatcher$Args.run(LoadedApk.java:728)
PrivacyPersistenceAdapter(23825)at android.os.Handler.handleCallback(Handler.java:605)
PrivacyPersistenceAdapter(23825)at android.os.Handler.dispatchMessage(Handler.java:92)
PrivacyPersistenceAdapter(23825)at android.os.Looper.loop(Looper.java:137)
PrivacyPersistenceAdapter(23825)at android.os.HandlerThread.run(HandlerThread.java:60)

Is there still a patch down the pipe ?

Also, I hope that someday we could sort apps by what type of access they need, so that I can quickly find out which apps wants the IMEI/SIMID etc.

Thanks !