我有一个正在使用不同构建变体(flavor)的应用程序,现在我想在这些有风格的应用程序(针对最终用户的不同应用程序)之间共享数据。现在我的问题是,如何使用共享首选项在风格化应用程序之间共享一些数据,因为只有一个包名称在清单文件中提到,并且一个包适用于所有风味应用程序。我尝试了下面的方法,但未能共享数据。使用共享首选项在两个具有相同包名的应用程序之间共享数据
//设置数据
SharedPreferences settings = getSharedPreferences(MyPref, Context.MODE_WORLD_READABLE);
SharedPreferences.Editor editor = settings.edit();
editor.putString("UserEmail", m_email);
editor.putString("UserPass", m_pass);
editor.putString("LoggedUserName", m_statusData);
editor.commit();
//获取数据
Context con = getApplicationContext().createPackageContext("my_packagename", 0);
SharedPreferences pref = con.getSharedPreferences(MyPref, Context.MODE_PRIVATE);
EmailId = pref.getString("UserEmail", email);//got always null
Password = pref.getString("UserPass", Password);//got always null
但它无法正常工作。现在做什么?
哪里是你的MyPref' – akhilesh0707
private final String MyPref =“设置”; //你添加了一个常量 –
'android:sharedUserId'?这两个应用的清单文件。 – akhilesh0707