1

私のPhonegapアプリケーションのログインページには、ユーザー名、パスワード、URL、デバイスタイプなど、ユーザーが最初にログインしたときにアプリケーションをアクティブ化するために入力する必要のあるいくつかの入力フィールドが含まれています。次回は、アプリケーションがすでにアクティブ化されているため、ユーザーはユーザー名とパスワードのみを入力する必要があります。そのため、2回目のログイン時にユーザー名とパスワードのフィールドのみを表示したいと思います。

アプリがアクティブ化されているかどうかを確認するためのphonegapプラグインがあります。このプラグインを呼び出し、コールバック応答に基づいて、ログインページに必要なフィールドのみを表示します。これを行う最も簡単な方法は何でしょうか。

私はこれを試しました。

$("#loginPage").live('pagebeforeshow',function(event, ui){
window.plugins.AuthPlugin.appIsActive(appIsActiveCallBack);
});
function appIsActiveCallBack(result){//Show only relative fields...}

しかし、私はこのエラーを受け取りました:Uncaught TypeError:undefinedのメソッド'appIsActive'を呼び出すことができません

前もって感謝します。

4

1 に答える 1

0

デバイスの準備が整う前にプラグインを呼び出そうとしているために取得Uncaught TypeErrorしています...デバイスの準備ができたときにのみプラグインを呼び出します...

アップデート

あなたがしなければならないことは、ネイティブ側でのみ表示する必要があるすべてのフィールドを決定することです...その後、javaからJavaScriptに変数(フラグ)を渡します。これは、pagebeforeshowでアクセスできます。

したがって、アクティビティは次のようになります

/*
 * Some database operations which you need to check 
 *  so that you can determine what to show
 */
this.setIntegerProperty("loadUrlTimeoutValue", 70000);
super.loadUrl("file:///android_asset/www/index.html", 20000);
super.loadUrl("javascript: { var pageFlag = '" + flag + "';}");

そしてあなたのindex.htmlでこのように表示します

$("#loginPage").live('pagebeforeshow',function(event, ui){
alert(pageFlag);
});

その後、フラグを使用して、何を表示し、何を表示しないかを決定できます...

それが役に立てば幸い...

于 2012-07-12T10:26:57.453 に答える