2012-05-16 35 views
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两个不同的项目的问题,我该怎么保存这些两个项目在一个共享偏好...请帮助我在我的编码。感谢

回答

1

see this link

在本演示中,我保存的名字,而是通过这个可以节省UUID和IMSI。

+0

非常有帮助的链接...顺便说一句I HV另一个问题...我怎样才能从活动A的共享偏好检索数据活动B? –

+0

与检索A中的数据一样。 –

+0

@Android_Rookie很高兴为您提供帮助...但为什么不现在您有足够的投票来upvote我的答案... –

1

SharedPreferences使用键值:一对一的值映射。您无法使用相同的密钥存储2个值。

您的选择是使用两个单独的键或将这两个值组合成单个值。一种这样的方式是将simIMSI,并通过字符串连接的UniqueID字符串组合:

String key = simIMSI + UniqueID