IBM Worklight - 如何从移动设备获取IMSI号码?

时间:2014-03-10 05:40:01

标签: android cordova ibm-mobilefirst

我们希望获取移动设备的IMSI号码,以便了解用户是否已注册使用特定应用程序。

我在网上搜索过。它说Worklight正在使用Cordova。它提供UUID和设备名称/描述,但不提供IMSI号码。

我在这里尝试此代码。但是科尔多瓦总是会失败。并说未找到课程。我正在使用IBM Worklight

import org.apache.cordova.CallbackContext;
import org.apache.cordova.CordovaPlugin;

import org.json.JSONArray;
import org.json.JSONException;
import android.provider.Settings;
import android.content.Context;
import android.telephony.TelephonyManager;



   @Override
    public boolean execute(String action, JSONArray args, CallbackContext callbackContext) throws JSONException {

        if (action.equals("imeiNumber")) {

            org.json.JSONObject r = new org.json.JSONObject();

            TelephonyManager tManager = (TelephonyManager) cordova.getActivity().getSystemService(Context.TELEPHONY_SERVICE);            

            r.put("imei", "sampleimei");
            r.put("imsi", "sampleimsi123");
            r.put("tmanagerimsi", tManager.getSimSerialNumber());
            r.put("deviceModal", this.getModel() );

            callbackContext.success(r);

            return true;

        } 
        else {

            return false;

        }

    }

的javascript:

function getImei(){
    alert("inside getImei");
    cordova.exec(getSuccess, getFailure, "DeviceDetails", "imeiNumber", []);
}

function getSuccess(data){
    alert(data.imei +" "+data.imsi+" "+data.tmanagerimsi);
}

function getFailure(data){
    alert(data);
    alert(data.imei +" "+data.imsi+" "+data.tmanagerimsi+" "+data.deviceModal);
}

2 个答案:

答案 0 :(得分:1)

要获取IMSI号码,您需要创建Cordova插件才能访问存储在设备中的此信息。

请参阅以下培训模块,了解如何在Worklight中创建Cordova插件:

请参阅以下主题,了解如何获取IMEI号码,以及IMSI号码。然后,您需要将两者(Cordova插件和上面的本机代码)结合起来,以获得您想要的数据:

答案 1 :(得分:1)

你粘贴在完整的java文件上面的是什么?因为它似乎不完整。

您缺少类声明。通常Java中的类定义如下:

public class Dog{
 //stuff
}

我的代码中没有看到这一点。

此外,在安装插件时,您需要修改config.xml以反映这一点。

请仔细阅读本指南:http://public.dhe.ibm.com/software/mobile-solutions/worklight/docs/v610/06_05_Android_-_Adding_native_functionality_to_hybrid_application_with_Apache_Cordova_plugin.pdf