如何实现两个app获取的android id不一样
1. 流程表格
步骤 | 描述 |
---|---|
步骤一 | 在第一个app中生成一个随机的id |
步骤二 | 将生成的id存储到SharedPreferences中 |
步骤三 | 在第二个app中读取SharedPreferences中存储的id |
步骤四 | 如果SharedPreferences中没有存储的id,则生成一个新的id |
步骤五 | 在第二个app中使用生成的id进行操作 |
2. 代码实现
步骤一:在第一个app中生成一个随机的id
import java.util.UUID;
public class MainActivity extends AppCompatActivity {
private String androidId;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// 生成一个随机的id
androidId = UUID.randomUUID().toString();
}
}
步骤二:将生成的id存储到SharedPreferences中
import android.content.SharedPreferences;
public class MainActivity extends AppCompatActivity {
private String androidId;
private SharedPreferences sharedPreferences;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
sharedPreferences = getSharedPreferences("MyPrefs", MODE_PRIVATE);
// 将生成的id存储到SharedPreferences中
SharedPreferences.Editor editor = sharedPreferences.edit();
editor.putString("androidId", androidId);
editor.apply();
}
}
步骤三:在第二个app中读取SharedPreferences中存储的id
import android.content.SharedPreferences;
public class MainActivity extends AppCompatActivity {
private String androidId;
private SharedPreferences sharedPreferences;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
sharedPreferences = getSharedPreferences("MyPrefs", MODE_PRIVATE);
// 读取SharedPreferences中存储的id
androidId = sharedPreferences.getString("androidId", null);
// 如果SharedPreferences中没有存储的id,则生成一个新的id
if (androidId == null) {
androidId = UUID.randomUUID().toString();
// 将新生成的id存储到SharedPreferences中
SharedPreferences.Editor editor = sharedPreferences.edit();
editor.putString("androidId", androidId);
editor.apply();
}
}
}
步骤四:在第二个app中使用生成的id进行操作
import android.content.SharedPreferences;
public class MainActivity extends AppCompatActivity {
private String androidId;
private SharedPreferences sharedPreferences;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
sharedPreferences = getSharedPreferences("MyPrefs", MODE_PRIVATE);
// 读取SharedPreferences中存储的id
androidId = sharedPreferences.getString("androidId", null);
// 如果SharedPreferences中没有存储的id,则生成一个新的id
if (androidId == null) {
androidId = UUID.randomUUID().toString();
// 将新生成的id存储到SharedPreferences中
SharedPreferences.Editor editor = sharedPreferences.edit();
editor.putString("androidId", androidId);
editor.apply();
}
// 使用生成的id进行操作
// ...
}
}
3. 甘特图
gantt
title 实现两个app获取的android id不一样
dateFormat YYYY-MM-DD
section 第一个app
生成随机id : 2022-01-01, 1d
存储到SharedPreferences : 2022-01-02, 1d
section 第二个app
读取SharedPreferences中存储的id : 2022-01-03, 1d
生成新的id(如果没有存储的id) : 2022-01-04, 1d
使用生成的id进行操作 : 2022-01-05, 1d
以上是实现两个app获取的android id不一样的步骤和代码,通过在第一个app中生成一个随机id并存储到SharedPreferences中,然后在第二个app中读取SharedPreferences中存储的id,如果没有存储的id则生成一个新的id并存储到SharedPreferences中,最后使用生成的id进行操作,可以实现两个app获取的android id不一样的要求。