最好的辦法
ContentProviders我想,如果你正在尋找最好的方法可循。
即使在未來更多的數據,你應該使用這個選項去它是應用程序之間共享數據的好方法。
Alernative方法
應用1(用於例如:APP1包名稱爲 「com.app1」)。
SharedPreferences prefs = getSharedPreferences("pref1",
Context.MODE_PRIVATE);
SharedPreferences.Editor editor = prefs.edit();
editor.putString("stringDemo1", strShareValue);
editor.commit();
App2的(可以將其用於其他應用30作爲烏爾要求)(在應用程序1取從共享偏好數據)。
try {
con = createPackageContext("com.app1", 0);//first app package name is "com.sharedpref1"
SharedPreferences pref = con.getSharedPreferences(
"pref1", Context.MODE_PRIVATE);
String your_data = pref.getString("stringDemo1", "No Value");
}
catch (NameNotFoundException e) {
Log.e("Not data shared between two applications", e.toString());
}
在這兩個APP1和App2高達應用30清單文件添加共用同一用戶ID &標籤,
android:sharedUserId="any string"
android:sharedUserLabel="@string/any_string"
都是一樣的... ...和共享用戶標籤必須從string.xml
理解下面的例子更好地檢查。
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.xxxx"
android:versionCode="1"
android:versionName="1.0"
android:sharedUserId="any string"
android:sharedUserLabel="@string/any_string">
。我需要約30個具有創建此提供程序能力的應用程序,並且如果我將相同的權限添加到所有這些應用程序,則不允許我安裝具有相同權限的新應用程序,而且還會讓每個應用程序都讀取每次搜索需要30多個權限需要太多時間。 –
chck更新回答 –
接受,如果它解決了你的問題 –