两个程序
一个记录程序运行次数
一个读取另外一个程序数据
data02
public class MainActivity extends Activity {
SharedPreferences preferences;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
preferences = getSharedPreferences("count", MODE_WORLD_READABLE);
int count = preferences.getInt("count", 0);
Toast.makeText(this, "程序被使用了"+count+"次", 10000).show();
Editor editor = preferences.edit();
editor.putInt("count", ++count);
editor.commit();
}
}
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="hello" />
</LinearLayout>
data03
public class MainActivity extends Activity
{
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Context useCount = null;
try
{
// 获取其他程序所对应的Context
useCount = createPackageContext("cn.vlang.data02",
Context.CONTEXT_IGNORE_SECURITY);
}
catch (NameNotFoundException e)
{
e.printStackTrace();
}
// 使用其他程序的Context获取对应的SharedPreferences
SharedPreferences prefs = useCount.getSharedPreferences("count",
Context.MODE_WORLD_READABLE);
// 读取数据
int count = prefs.getInt("count", 0);
TextView show = (TextView) findViewById(R.id.show);
// 显示读取的数据内容
show.setText("UseCount应用程序以前被使用了" + count + "次。");
}
}
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<TextView
android:id="@+id/show"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="hello" />
</LinearLayout>