Android 如何在PhoneGap移动应用程序中获取IMEI号码、SIM号码、手机号码?

Android 如何在PhoneGap移动应用程序中获取IMEI号码、SIM号码、手机号码?,android,jquery,jquery-mobile,cordova,Android,Jquery,Jquery Mobile,Cordova,我需要在Phonegap构建的android HTML移动web应用程序中获取IMEI号码、手机号码、SIM卡号码您无法直接获取它们 选项1)寻找一些插件,我不确定它们是否存在 选项2)编写自己的小脚本,返回所需内容 例如,我使用此javascript代码在我的一个应用程序中获取IMEI: $imei=window.YourActivityName.get_imei(); 为此,您需要在应用程序中启用javascript,并在Java中定义函数get_imei() 您的Java应该如下所示:

我需要在Phonegap构建的android HTML移动web应用程序中获取IMEI号码、手机号码、SIM卡号码

您无法直接获取它们

选项1)寻找一些插件,我不确定它们是否存在

选项2)编写自己的小脚本,返回所需内容

例如,我使用此javascript代码在我的一个应用程序中获取IMEI:

$imei=window.YourActivityName.get_imei();
为此,您需要在应用程序中启用javascript,并在Java中定义函数get_imei()

您的Java应该如下所示:

public class YourActivityName extends CordovaActivity 
{
.........
public void onCreate(Bundle savedInstanceState)
{
 .......
 appView.addJavascriptInterface(this, "YourActivityName");
 super.loadUrl(Config.getStartUrl(), 10000);
 .......
}

//Define function to return imei in Java:
@JavascriptInterface
public String get_imei() {
     TelephonyManager telephonyManager = (TelephonyManager)getSystemService(Context.TELEPHONY_SERVICE);
    String imei = telephonyManager.getDeviceId();
    return imei;    
}
}

你不能直接得到它们

选项1)寻找一些插件,我不确定它们是否存在

选项2)编写自己的小脚本,返回所需内容

例如,我使用此javascript代码在我的一个应用程序中获取IMEI:

$imei=window.YourActivityName.get_imei();
为此,您需要在应用程序中启用javascript,并在Java中定义函数get_imei()

您的Java应该如下所示:

public class YourActivityName extends CordovaActivity 
{
.........
public void onCreate(Bundle savedInstanceState)
{
 .......
 appView.addJavascriptInterface(this, "YourActivityName");
 super.loadUrl(Config.getStartUrl(), 10000);
 .......
}

//Define function to return imei in Java:
@JavascriptInterface
public String get_imei() {
     TelephonyManager telephonyManager = (TelephonyManager)getSystemService(Context.TELEPHONY_SERVICE);
    String imei = telephonyManager.getDeviceId();
    return imei;    
}
}

您可以使用cordova插件或java获取IMEI编号。但您可以使用设备cordova插件获取设备详细信息,而不是IMEI号码

然后使用此脚本在javascript中获取设备详细信息

文件。添加的监听器(“deviceready”,OnDeviceraddy,false)

您可以在此处阅读有关此插件的更多详细信息


您可以使用cordova插件或java获取IMEI编号。但您可以使用设备cordova插件获取设备详细信息,而不是IMEI号码

然后使用此脚本在javascript中获取设备详细信息

文件。添加的监听器(“deviceready”,OnDeviceraddy,false)

您可以在此处阅读有关此插件的更多详细信息


有一个插件可以提供sim卡的详细信息,我试过了,它可以提供一些运营商的电话号码,如Telenor、Bsnl,但我无法获得Jio和Idea的电话号码。 首先安装链接中给出的插件。 作为

我有示例代码:

function get_number2(){
    document.addEventListener("deviceready", onDeviceReady, false);

    function onDeviceReady() {
        if(window.plugins && window.plugins.sim){
            alert("plugin loaded");
            window.plugins.sim.getSimInfo(successCallback, errorCallback);

        }else{
            alert("plugin not loaded ");
        }

    }

    function successCallback(result) {
        alert("success");
        console.log(result);
        alert(result.carrierName);
        alert(result.countryCode);
        alert(result.mcc);
        alert(result.mnc);
        alert(result.phoneNumber);
        alert(result.cards[0].phoneNumber);
        alert(result.cards[1].phoneNumber);
    }

    function errorCallback(error) {
        alert("error");
        console.log(error);
        alert(error);
    }
 }

有一个插件提供了sim卡的详细信息,我试过了,它提供了一些运营商的电话号码,如Telenor、Bsnl,但我无法获得Jio和Idea的电话号码。 首先安装链接中给出的插件。 作为

我有示例代码:

function get_number2(){
    document.addEventListener("deviceready", onDeviceReady, false);

    function onDeviceReady() {
        if(window.plugins && window.plugins.sim){
            alert("plugin loaded");
            window.plugins.sim.getSimInfo(successCallback, errorCallback);

        }else{
            alert("plugin not loaded ");
        }

    }

    function successCallback(result) {
        alert("success");
        console.log(result);
        alert(result.carrierName);
        alert(result.countryCode);
        alert(result.mcc);
        alert(result.mnc);
        alert(result.phoneNumber);
        alert(result.cards[0].phoneNumber);
        alert(result.cards[1].phoneNumber);
    }

    function errorCallback(error) {
        alert("error");
        console.log(error);
        alert(error);
    }
 }

它将有帮助:它将有帮助:因此,我可以使用UUID编号,而不是IMEI编号。非常感谢。但是我怎样才能获得sim卡号码和手机号码呢?请帮帮我…我不能,因为你只能从iTunes上获得UUID号码。所以我可以使用UUID号码代替IMEI号码。非常感谢。但是我怎样才能获得sim卡号码和手机号码呢?请帮帮我…我不能,因为你只能从iTunes上获得UUID号码。所以我现在可以使用IMEI号码。非常感谢。但是我怎样才能获得sim卡号码和手机号码呢?请帮帮我……这是为了让你走上正轨,这不是一个完整的解决方案,你可以用类似的方法来获得所需的值,但这些并不是那么简单。这里讨论得很好:别忘了添加你的AndroidManifest:这样我现在就可以使用IMEI号码了。非常感谢。但是我怎样才能获得sim卡号码和手机号码呢?请帮帮我……这是为了让你走上正轨,这不是一个完整的解决方案,你可以用类似的方法来获得所需的值,但这些并不是那么简单。这里讨论得很好:别忘了添加您的AndroidManifest: