根据Phonegap Android应用程序的要求显示不同的登录页面?

时间:2012-07-12 10:23:01

标签: html5 jquery-mobile cordova

我的Phonegap应用程序登录页面包含一些输入字段,如用户名,密码,网址,设备类型等......用户在第一次登录时必须输入以激活应用程序。用户下次只需输入用户名和密码,因为应用程序已被激活。所以我想在登录时第二次只显示用户名和密码字段。

我有一个phonegap插件来检查应用是否被激活。我想调用这个插件,并根据回调响应,我将只在登录页面上显示必要的字段。那么最简单的方法是什么?

我试过了..

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

但是我收到了这个错误:未捕获的TypeError:无法调用未定义的方法'appIsActive'

提前致谢。

1 个答案:

答案 0 :(得分:0)

您收到Uncaught TypeError因为您尝试在设备准备就绪之前调用插件...仅在设备准备就绪时调用插件...

<强>更新

您需要做的是确定您需要在原生方面显示的所有字段... 之后,将一个变量(flag)从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);
});

在使用旗帜后,您可以确定要显示的内容和不显示的内容......

希望它有所帮助...