0

jquerymobileとAndroidsdkを使用してWebアプリを開発する方法を学んでいます。私のウェブアプリは、次のものが読み込まれるいくつかのページで構成されています。

private void loadURL(final String in){
    handler.post(new Runnable() {
        public void run() {
            webView.loadUrl(in);
        }
    });
}

public void loadPage(String in){
    final String url = HTML_ROOT + in;
    loadURL(url);
}

これは私のonCreateメソッドです:

@Override
public void onCreate(Bundle savedInstanceState)
{
    super.onCreate(savedInstanceState);
    webView = new WebView(this); //super.init();

    setContentView(webView);
    webView.getSettings().setJavaScriptEnabled(true);   

    .....

    handler = new Handler();
    webView.addJavascriptInterface(this, "MyTeam");       
    loadPage("menu.html");

}

そしてonkeydownメソッド:

@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
   if(webView == null){
          Log.d("My Tag", "Webview is null on KeyCode: " + String.valueOf(keyCode));
        }
        if ((keyCode == KeyEvent.KEYCODE_BACK) && webView.canGoBack()) {
            webView.goBack();
            return true;
        }
        return super.onKeyDown(keyCode, event);
}

問題は次のとおりです。例a:1-menu.htmlから別のページに移動しますxxx.html2-スマートフォンの戻るボタンをクリックします3-onKeyDownが起動します

例b:1-menu.htmlからスマートフォンの戻るボタンまたは別のボタンをクリックします

super.onkeydownを返した後、例aと例bで戻りました。

12-01 15:34:56.796: E/AndroidRuntime(14048): FATAL EXCEPTION: main
12-01 15:34:56.796: E/AndroidRuntime(14048): java.lang.NullPointerException
12-01 15:34:56.796: E/AndroidRuntime(14048):    at org.apache.cordova.DroidGap.onKeyUp(DroidGap.java:1018)

DroidGapClassがnullポインタ例外を返すのはなぜですか?????

どうもありがとう。

4

0 に答える 0