2017-04-12 16 views
1

モバイル開発には初めてです。私はPhoneGapを使用しています.iOSとAndroidの両方のSIMカードから電話番号を取得するために、アプリに機能を追加したいと思います。私はこのプラグインを使用しています:コードギャッププラグインシムを使用して電話情報を取得する

cordova-plugin-sim

私はプラグインから取得することができますどんな情報を表示するために、この非常に単純なインデックスコードを使用しています。

<!DOCTYPE html> 
    <html lang="en"> 
     <head> 
      <meta charset="UTF-8"> 
      <title>SIM</title> 
      <script type="text/javascript" src="cordova.js"></script> 
      <script type="text/javascript"> 
       document.addEventListener("deviceready",onDeviceReady,false); 
       function onDeviceReady(){ 
        window.plugins.sim.getSimInfo(successCallback, errorCallback); 
       } 
       function successCallback(result) { 
     document.getElementById("simInfo").innerHTML=JSON.stringify(result); 
       } 
       function errorCallback(error) { 
     document.getElementById("simInfo").innerHTML=JSON.stringify(result); 
       } 
      </script> 
     </head> 
     <body> 
      <p id="simInfo"></p> 
     </body> 
    </html> 

これは何も表示されません。私が間違っている、または行方不明のことは何ですか?

+0

上記のコードは私のためにうまくいきました。あなたのphonegapバージョンを伝えることができます。このプラグインを使用しています.https://github.com/scwl/cordova-plugin-sim/tree/57a76b3 – vijay

+0

@vijay私はプラグインをインストールすることができますので、プラグインが正しくインストールされていることを知っています。なぜなら、問題のないバーコードスキャナを使用することができたからです。これまでにありましたが、プラグインのリンクに感謝しています。 – user253938

+0

これをチェックしましたか?注意:phoneNumberの内容は信頼できません(これとこれとこの記事を参照してください)。空の文字列。 – Hiten

答えて

1

iOSまたはAndroidでテストしていますか? Android 6.0以上で実装する必要があります。

window.plugins.sim.requestReadPermission(successCallback, errorCallback); 

また、あなたのコードを見てください。 errorCallback関数では、結果は未定義です。

これを変更する必要があります。この

document.addEventListener("deviceready",onDeviceReady,false); 
      function onDeviceReady(){ 
       window.plugins.sim.getSimInfo(successCallback, errorCallback); 
      } 
      function successCallback(result) { 
    document.getElementById("simInfo").innerHTML=JSON.stringify(result); 
      } 
      function errorCallback(error) { 
    document.getElementById("simInfo").innerHTML=JSON.stringify(error); 
      } 
+0

errorCallback関数で未定義の結果に関する情報を追加するように編集されています。 –

+0

私はすでに提案したことを試しましたが、それでもなお何も表示されません。http://imgur.com/7sO84Q0私もrequestReadPermissionを実装しました。結果は変わりませんでした。 – user253938

0

document.addEventListener("deviceready",onDeviceReady,false); 
      function onDeviceReady(){ 
       window.plugins.sim.getSimInfo(successCallback, errorCallback); 
      } 
      function successCallback(result) { 
    document.getElementById("simInfo").innerHTML=JSON.stringify(result); 
      } 
      function errorCallback(error) { 
    document.getElementById("simInfo").innerHTML=JSON.stringify(result); 
      } 

私はこれを見つけた::

お知らせ:にphoneNumberの内容が信頼できない(これ、これ、および この記事を参照してください)。場合によっては、phoneNumberは空の文字列だけです。

私はコードにいくつかの変更を加えましたが、私は「未定義」メッセージを受け取りました。

<!DOCTYPE html> 
<html lang="en"> 
    <head> 
     <meta charset="UTF-8"> 
     <title>SIM</title> 
     <script type="text/javascript" src="cordova.js"></script> 
     <script type="text/javascript"> 
      document.addEventListener("deviceready",onDeviceReady,false); 
      function onDeviceReady(){ 
       window.plugins.sim.getSimInfo(successCallback, errorCallback); 
      } 
      function successCallback(result) { 
       document.getElementById("simInfo").innerHTML=JSON.stringify(result); 
       document.getElementById("phone").innerHTML=JSON.stringify(result.phoneNumber); 
       document.getElementById("carrierName").innerHTML=JSON.stringify(result.carrierName); 
      } 
      function errorCallback(error) { 
       document.getElementById("simInfo").innerHTML=JSON.stringify(error); 
      } 
     </script> 
    </head> 
    <body> 
     SimInfo :: <p id="simInfo"></p> 
     <br /> 
     Phone Number :: <p id="phone"></p> 
     <br /> 
     Carrier Name :: <p id="carrierName"></p> 
     <br /> 
    </body> 
</html> 

結果画像を添付してください。

enter image description here

これをチェックしてください。おかげさまで

+0

鉱山はまだ何も表示されず、 、何も... http://imgur.com/7sO84Q0あなたは使用しているphonegapのバージョンを聞かれるかもしれませんか? – user253938

+0

ノードのバージョンは7.4.0、 のphonegapのバージョンは6.4.6です – Hiten

関連する問題