0
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.uniqueid);

    simID = (TextView) findViewById(R.id.text2);
    simIMSI = getSubscriberId().toString();
    simID.setText(simIMSI.toString());
    SaveUniqueId(simIMSI.toString());


    uniqueID = (TextView) findViewById(R.id.text4);
    identifier = UniqueIDTest().toString();
    uniqueID.setText(identifier.toString());
    SaveUniqueId(identifier.toString());

    next = (Button) findViewById(R.id.next);
    next.setOnClickListener(new View.OnClickListener() {
        public void onClick(View v) {
            Intent intent = new Intent(UniqueIdActivity.this, LockAppActivity.class);
            Toast.makeText(UniqueIdActivity.this, "Remember to keep the unique ID", Toast.LENGTH_LONG).show();
            startActivity(intent);              
        }
    });
}

public void SaveUniqueId(String value){
    final String UNIQUE_ID = "UniqueIdentifier";

    SharedPreferences unique = getSharedPreferences(UNIQUE_ID, 0);
    SharedPreferences.Editor editor = unique.edit();
    editor.putString("identifier", value);
    editor.commit();
}

public String getSubscriberId(){
    operator = (TelephonyManager)context.getSystemService(Context.TELEPHONY_SERVICE);
    String IMSI = operator.getSubscriberId();
    return IMSI;
}

public UUID UniqueIDTest(){    
    UUID ID = UUID.randomUUID();   
    return ID; 
}

}

私はこのアクティビティを行っており、このアクティビティは一意の UUID を自動生成し、SIM カードの IMSI を取得します。これら 2 つの項目を 1 つの共有設定に保存するにはどうすればよいですか... コーディングを手伝ってください。ありがとう

4

2 に答える 2

1

このリンクを参照してください

このデモでは、名前を保存し、これの代わりにパスを渡し、UUID と IMSI を保存できます。

于 2012-05-16T13:59:25.427 に答える
1

SharedPreferences1 対 1 の Key:Value マッピングを使用します。同じキーを使用して 2 つの値を格納することはできません。

オプションは、2 つの個別のキーを使用するか、2 つの値を 1 つの値に結合することです。そのような方法の 1 つは、文字列連結を介してsimIMSIと文字列を結合することです。UniqueID

String key = simIMSI + UniqueID
于 2012-05-16T13:59:58.763 に答える