2016-01-14 45 views
-2

我試圖在查看一些博客後在android中獲取IMEI號碼。試圖在android中獲取imei號碼 - phonegap

下面是我的原生活動代碼:

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; 
    } 


} 

,並呼籲getIMEI功能通過離子框架創建app.js文件。

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數。

+0

Define _「it is break」_。另外,你是否試圖在'onCreate'中獲得一個有效的字符串? – Michael

+0

它打破意味着什麼都沒有(期望是警覺)。基本上我正在模擬器中嘗試這個 – kpvsrkp

回答

0

我終於明白了。 appview有獲得webview的方法。 Webview有設置允許從JavaScript調用的javainterface的方法。