通过sharedpreference两个程序共享数据

一、整体工程图

    

二、SharePreferenceWriteActivity.java

package org.ourunix.android.sharepreferencewrite;

import android.app.Activity;
import android.content.SharedPreferences;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;

public class SharePreferenceWriteActivity extends Activity implements OnClickListener{
	private SharedPreferences prference;
	private String PREF_NAME = "PREF_NAME";
	private String KEY = "TestValue";
	private EditText mEditText;
	private Button mButton;
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        mEditText = (EditText) findViewById(R.id.writeTV);
        mButton = (Button) findViewById(R.id.submit);
        mButton.setOnClickListener(this);
    }
    
	@Override
	public void onClick(View v) {
		// TODO Auto-generated method stub
		
		prference = getSharedPreferences(PREF_NAME, MODE_WORLD_READABLE );
        prference.edit().putString(KEY, mEditText.getText().toString()).commit();
	}
}


三、SharePreferenceReadActivity.java

package org.ourunix.sharepreferenceread;

import android.app.Activity;
import android.content.Context;
import android.content.SharedPreferences;
import android.content.pm.PackageManager.NameNotFoundException;
import android.os.Bundle;
import android.widget.TextView;

public class SharePreferenceReadActivity extends Activity {
    /** Called when the activity is first created. */
	private SharedPreferences prference;
	private String NAME = "PREF_NAME";
	private String KEY = "TestValue";
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        TextView tv = new TextView(this);
        setContentView(tv);
        
        String tmp;
        Context c = null;
        
        try {
			c = this.createPackageContext("org.ourunix.android.sharepreferencewrite", CONTEXT_IGNORE_SECURITY);

		} catch (NameNotFoundException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}	
		
        if (c != null)
        prference = c.getSharedPreferences(NAME, 0);
        tmp = prference.getString(KEY, "nothing");
        tv.setText(tmp);
    }
}


原文地址:https://www.cnblogs.com/pangblog/p/3283447.html