1

単純なSL4APythonアプリでHTMLGUIを取得しようとしています。実行する必要があるのは、アプリの起動時にユーザーに1つの入力文字列を要求することだけです。

デバッグの目的で、私は単純なものから始めました。残念ながら、これでも機能しません。ここで何が問題なのですか?(私はこのようないくつかのコードを試しましたが、すべて同じ問題があります)

Pythonコード:

import android

loop = True
droid = android.Android()
droid.webViewShow('/sdcard/sl4a/scripts/screen.html')

while loop:
    res = droid.waitForEvent('data')
    if res:
        print str(res)

HTMLコード

<html>
 <head>
  <script>
   var droid = new Android();
   var fiets = function() {
        droid.postEvent("data", document.getElementById("gsm").value);
      }
  </script>
 </head>
 <body onload:"fiets()">
  <form onsubmit="fiets(); return false;">
   <label for="say">What would you like to say?</label>
   <input type="text" id="gsm" value="99999999" />
   <input type="submit" value="Store" />
  </form>
 </body>
</html>

エラーメッセージは繰り返し表示されます(番号3114は増分です)。

java.lang.NullPointerException
Result(id=3114, result=None, error=u'java.lang.NullPointerException')

アップデート:

http://www.mithril.com.au/android/doc/EventFacade.html

私たちが読んでいるように、私が読んだwaitForEventのはr4では非推奨です。eventWaitFor代わりに使用する必要があります。これはエラーを取り除きますが、サンプルは機能しません。Pythonスクリプトは何も出力しません。

update2:

droid.postEventになる必要がありますdroid.eventPost

droid.waitForEvent('data')になる必要がありますdroid.waitForEvent('data')

javascriptとpythonで。

問題が解決しました

4

0 に答える 0