gpt4 book ai didi

java - 如何从双卡手机读取 IMEI

转载 作者:太空宇宙 更新时间:2023-11-04 14:20:42 26 4
gpt4 key购买 nike

我正在使用 Xamarin (C#) 编写一个 Android 应用程序,它需要从双 SIM 卡手机中的两张 SIM 卡获取 IMEI 和漫游状态。我找到了一些 Java 代码来做到这一点。但我不知道如何将 Java 反射转换为 C#(即使我使用 Java-C# 转换器来完成)。这是链接:Android : Check whether the phone is dual SIM

有人可以帮助我吗?

以下是文章中需要翻译为 C# 的代码 fragment

private static String getDeviceIdBySlot(Context context, String predictedMethodName, int slotID) throws GeminiMethodNotFoundException {

String imei = null;

TelephonyManager telephony = (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE);

try{

Class<?> telephonyClass = Class.forName(telephony.getClass().getName());

Class<?>[] parameter = new Class[1];
parameter[0] = int.class;
Method getSimID = telephonyClass.getMethod(predictedMethodName, parameter);

Object[] obParameter = new Object[1];
obParameter[0] = slotID;
Object ob_phone = getSimID.invoke(telephony, obParameter);

if(ob_phone != null){
imei = ob_phone.toString();

}
} catch (Exception e) {
e.printStackTrace();
throw new GeminiMethodNotFoundException(predictedMethodName);
}

return imei;
}

最佳答案

首先在 list 中添加权限为

<uses-permission android:name="android.permission.READ_PHONE_STATE" />

这将返回 IMEI android.telephony.TelephonyManager.getDeviceId().

关于java - 如何从双卡手机读取 IMEI,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27223377/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com