我使用debug.keystore在我的设备上安装了一个应用程序,该应用程序在数据字典下有数据库存储。
由于窗口7的某些问题,我必须格式化它,我丢失了debug.keystore。
现在我想更新应用程序,但错误是“由于不同的应用程序签名而导致重新安装失败”。
我的目的是想要存储在数据目录中的数据库。
尝试这个但没有奏效:
String currentDBPath = "/data/data/com.myapp/databases/myappdatabase.sqlite";
String backupDBPath = "/sdcard/myappdatabase.sqlite";
try {
DatabaseExtractor.extractFromDevice(currentDBPath, backupDBPath);
} catch (IOException e) {
e.printStackTrace();
}
答案 0 :(得分:0)
由于窗口7的某些问题,我必须格式化它,我丢失了debug.keystore。
从您的PC备份恢复debug.keystore
。如果您不维护开发机器的备份,请停止所有软件开发,直到您完成。
我的目的是想要存储在数据目录中的数据库。
从备份中恢复debug.keystore
,或者将手机恢复原状(这样您就可以访问此目录),或者您将无法访问此数据。
答案 1 :(得分:0)
删除以前版本的应用并安装新版本。要重新生成debug.keystore:在Windows上的目录%USERPROFILE%/.android
下删除调试证书。
然后,当您下次尝试构建调试包时,Eclipse插件应生成新证书。您可能需要清理然后构建以生成证书。
答案 2 :(得分:0)
也许这会有效,但如果您丢失了数据库,请不要怪我:
adb uninstall -k <package>
-k
应保留您的数据目录。
然后安装使用新调试密钥签名的新应用版本。