我读过可以从我的应用程序外部检索共享首选项。 这段代码不起作用:
try
{
myContext = createPackageContext("com.intervigil.micdroid", Context.MODE_WORLD_WRITEABLE); // where com.example is the owning app containing the preferences
SharedPreferences testPrefs = myContext.getSharedPreferences("test_prefs", Context.MODE_WORLD_READABLE);
Map<String, ?> items = testPrefs.getAll();
nbenroullement= (Integer) items.get("enroullement");
System.out.println("*********************" + nbenroullement);
}
catch (NameNotFoundException e)
{
e.printStackTrace();
}
请任何人帮助我。谢谢
答案 0 :(得分:1)
最后,我在本教程中获得了解决方案 我希望我帮助你 http://androiddhamu.blogspot.in/2012/03/share-data-across-application-in.html
答案 1 :(得分:0)
这可能是因为您没有迭代地图items
。
所以,尝试做类似的事情:
Map<String, ?> items = testPrefs .getAll();
for(String s : items.keySet()){
String value = items.get(s).toString()); //this is the key of preferences
}
一旦你找回了密钥(我推测,就是这样),你必须像这样使用它:
enroullement = Integer.valueOf(prefs.getString("enroullement", "0")); //0 is a default value
希望它有所帮助。