我在尝试将设备ID用作字符串时获得了NPE 这是我的主要课程:
public class Main extends Application {
public String device_ID(){
final TelephonyManager tm = (TelephonyManager) getBaseContext().getSystemService(Context.TELEPHONY_SERVICE);
return tm.getDeviceId();
}
}
我尝试使用以下代码调用ID的代码:
String device_id = new Main().device_ID();
答案 0 :(得分:0)
像这样使用;
主要
public class Main extends Application {
public static String device_ID(Activity context){
final TelephonyManager tm = (TelephonyManager)context.getSystemService(Context.TELEPHONY_SERVICE);
return tm.getDeviceId();
}
}
现在在项目中的任何地方调用此方法,如下所示:
String device_id = Main.device_ID(MainActivity.this);
答案 1 :(得分:0)
尝试使用此方法
np.memmap
答案 2 :(得分:0)
创建应用程序的静态实例,然后在任何地方的应用程序中使用。
public class Main extends Application {
private static Main mInstance;
public static String device_ID(){
final TelephonyManager tm = (TelephonyManager) mInstance.getApplicationContext().getSystemService(Context.TELEPHONY_SERVICE);
return tm.getDeviceId();
}
@Override
public void onCreate() {
super.onCreate();
mInstance = this;
}
}
你可以从你的应用程序中随处打电话,
Main.device_ID();