嘿,你可以尝试使用Java创建你自己的代码和使用他们使用JavaScript。
例如我用这个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;
}
}
,你可以在Java下面的代码为
//Define function to return Number in Java:
@JavascriptInterface
public String get_number() {
TelephonyManager tMgr = (TelephonyManager)mAppContext.getSystemService(Context.TELEPHONY_SERVICE);
String mPhoneNumber = tMgr.getLine1Number();
return mPhoneNumber;
}
取代IMEI码所需的权限:
<uses-permission android:name="android.permission.READ_PHONE_STATE"/>
它的工作为了我。希望能帮助到你。!
你的方法给出了遗漏的类型错误:无法读取未定义的错误 – aaviss