android-maven-plugin:不删除SharedPreferences的deploy方法

时间:2012-10-07 16:28:52

标签: android sharedpreferences proguard

我构建了一个用android-maven-plugin设置的android项目。当我执行android:deploy并运行程序时,SharedPreferences总是初始化。

有没有办法将我的项目部署到AVD而不删除SharedPreferences存储?

P.S。

我使用Intellij IDEA并注意到它的native android run/debug support不会删除SharedPreferences。但是,在我的项目中添加scala support后,IDE在运行应用程序时报告“Too many methods:112423; max is 65536”错误。也许是因为缺乏预处理预处理。如果有一种方法可以在运行带有Intellij IDEA android支持的Android应用程序之前应用proguard,那将是一个同样有效的解决方案。

1 个答案:

答案 0 :(得分:2)

我认为您的应用在重新安装之前正在卸载 - 这会导致您丢失SharedPreferences值。这可以使用Android Maven插件参数undeployBeforeDeploy进行控制。

我刚尝试用android-quickstart原型创建一个Maven项目,发现它自动将以下行添加到我的POM中:

<undeployBeforeDeploy>true</undeployBeforeDeploy>

尝试将此设置为false,然后重试。

如果将其设置为true,则在运行mvn android:deploy时会在控制台中打印此行:

[INFO] Successfully uninstalled [package] from [device]