我想設置一個Tasker任務,它將刪除時鐘中的所有鬧鐘。我安裝了它,並在我的舊手機上工作得很好。當沒有警報時,我所做的是製作了警報數據庫的副本。當我想刪除當前設置的警報時,Tasker運行一個shell命令來刪除當前具有警報的數據庫。然後Tasker運行一個shell命令來複制空數據庫並重命名它。然後一些命令來更改權限和所有者。Android無法複製數據庫
當我試圖將這一切都移到我的新手機是當我遇到了一些麻煩。新手機是一款One Plus 3,它的價值在於它。所以我將所有東西都複製過來了,看起來像是需要更改的唯一東西就是shell命令的軟件包名稱。我改變了這一點,並嘗試塔斯克任務。沒有運氣。時鐘應用程序凍結了。我從備份中恢復了所有內容。我決定做一些測試,看看問題出在哪裏。
我使用Root Explorer應用程序來複制警報數據庫。當我嘗試打開復制的數據庫時,出現以下錯誤消息:
打開數據庫時發生錯誤。嘗試調用 虛擬方法'android.database.Cursor android.database.sqlite.SQLiteDatabase.query(java.lang.String, java.lang.String [],java.lang.String,java.lang.String [ ], java.lang.String中,java.lang.String中,java.lang.String中)」對空 對象引用
我仍然可以打開原始數據庫就好了。但是當我複製它時,似乎發生了一些事情。任何見解都將是一個很大的幫助。由於
發佈您的代碼先生 – apelsoczi
沒有代碼。我只是使用應用根資源管理器來複制數據庫。 – DasPete
您是否正在複製您自己的應用程序數據庫?或其他數據庫到您的應用程序? – dex