1

後でプログラムで確認できるように、device.platform の値を変数に割り当てたいと思います。たとえば、アプリが BlackBerry で実行されている場合、カスタム メッセージを表示したいと思うかもしれません。

他の場所で見つかった「要素」の例を使用して、物事が適切に機能していることを確認しました (実際に機能します)。しかし、「device.platform」値だけを devicePlatform に割り当てようとすると、問題が発生します。

私はこれと 1 時間格闘してきましたが、かなり基本的なものが欠けているに違いありません。誰かが私が間違っていることを教えてもらえますか?

ありがとうロブ

<html>
  <head>
    <title>PhoneGap</title>
    <meta name="viewport" content="width=device-width">
    <script type="text/javascript" charset="utf-8" src="cordova-1.9.0.js"></script>
    <script language="JavaScript" type="text/javascript">
      // wait for PhoneGap to load
      document.addEventListener("deviceready", onDeviceReady, false);
      function onDeviceReady() {
        var element = document.getElementById('deviceProperties');
        element.innerHTML = 'Device Name: '     + device.name     + '<br />' + 
                            'Device Cordova: '  + device.cordova + '<br />' + 
                            'Device Platform: ' + device.platform + '<br />' + 
                            'Device UUID: '     + device.uuid     + '<br />' + 
                            'Device Version: '  + device.version  + '<br />';
      //
    }
    </script>    

  </head>
  <body>
    <h1>Hello PhoneGap v1.9.0</h1>

    <script>
      var devicePlatform = device.platform;
      document.write("Platform: "+devicePlatform+"<br>");    
    </script>
    <br>
    <p id="deviceProperties">Loading device properties...</p>

  </body>
</html>
4

2 に答える 2

2

入れてみて

var devicePlatform = device.platform;
document.write("Platform: "+devicePlatform+"<br>");

関数 onDeviceReady() に

これで問題は解決するはずです。

さらに、'platform' などのグローバル スコープの変数を定義し、関数 onDeviceReady() で device.platform をその変数に割り当てます。

例:

var platform = null;
document.addEventListener("deviceready", onDeviceReady, false);
function onDeviceReady() {
  platform = device.platform;
  alert(platform);
}

アップデート:

これはあなたが探しているものに近いと思います

<html>
  <head>
    <title>PhoneGap</title>
    <meta name="viewport" content="width=device-width">
    <script type="text/javascript" charset="utf-8" src="cordova-1.9.0.js"></script>
    <script language="JavaScript" type="text/javascript">
      // wait for PhoneGap to load
      document.addEventListener("deviceready", onDeviceReady, false);
      function onDeviceReady() {
        var element = document.getElementById('platformarea');
        element.innerHTML = device.platform;
      //
    }
    </script>    

  </head>
  <body>
    <h1>Hello PhoneGap v1.9.0</h1>

    <p id="platformarea"></p>

  </body>
</html>
于 2012-11-01T22:47:13.920 に答える
2

Insted of using device.platform, you can use cordova.platformId. I'm sure it will help

于 2014-12-03T12:34:27.760 に答える