【问题标题】:trying to get imei number in android - phonegap试图在android中获取imei号码 - phonegap
【发布时间】:2016-01-14 18:13:02
【问题描述】:

在查看了一些博客后,我尝试在 android 中获取 IMEI 号码。

下面是我的 Native Activity 代码:

public class MainActivity extends CordovaActivity
{

    private static String imei;
    @Override
    public void onCreate(Bundle savedInstanceState)
    {
        super.onCreate(savedInstanceState);
        // Set by <content src="index.html" /> in config.xml
        super.init();
        loadUrl(launchUrl);

        TelephonyManager tm = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE);
        imei=tm.getDeviceId();
        LOG.d("kp","hello");
    }

    @JavascriptInterface
    static public String getIMEI(){
        return imei;
    }


}

并在 ionic 框架创建的 app.js 文件中调用 getIMEI 函数。

angular.module('app', ['ionic', 'app.controllers', 'app.routes', 'app.services', 'app.directives'])

.run(function($ionicPlatform) {
  $ionicPlatform.ready(function() {
    // Hide the accessory bar by default (remove this to show the accessory bar above the keyboard
    // for form inputs)
  var imei = window.MainActivity.getIMEI();
    alert("hi "+imei);
    if(window.cordova && window.cordova.plugins.Keyboard) {
      cordova.plugins.Keyboard.hideKeyboardAccessoryBar(true);
    }
    if(window.StatusBar) {
      // org.apache.cordova.statusbar required
      StatusBar.styleDefault();
    }
  });
})

警报本身不会到来。

如果我在下面替换

var imei = window.MainActivity.getIMEI();
    alert("hi "+imei);

alert("Hi");

警报按预期出现,但当我添加 var imei = window.MainActivity.getIMEI(); 时它会中断

有人可以帮助我获得 IMEI 号码。

【问题讨论】:

  • 定义“它正在破坏”。另外,您是否通过尝试在onCreate 中打印得到有效字符串?
  • 它正在破坏意味着什么都没有发生(期望是警报)。基本上我正在模拟器中尝试这个

标签: android cordova ionic-framework phonegap-plugins


【解决方案1】:

我终于明白了。 appview 有获取 webview 的方法。 Webview 有方法来设置允许从 JavaScript 调用的 javainterface。

【讨论】:

    猜你喜欢
    • 2012-02-03
    • 1970-01-01
    • 1970-01-01
    • 2022-01-19
    • 2014-05-09
    • 2017-04-28
    • 2019-03-21
    • 2016-08-07
    • 2011-11-17
    相关资源
    最近更新 更多