从eclipse为PhoneGap调用javascript
我正在尝试使用Android上的Phonegap加载网站,代码如下:从eclipse为PhoneGap调用javascript,java,javascript,android,cordova,code-injection,Java,Javascript,Android,Cordova,Code Injection,我正在尝试使用Android上的Phonegap加载网站,代码如下: public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); super.setBooleanProperty("loadInWebView", true); super.loadUrl("http://arriva.com.mt"); } 如何在webview上执行本地javascr
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
super.setBooleanProperty("loadInWebView", true);
super.loadUrl("http://arriva.com.mt");
}
如何在webview上执行本地javascript文件?我遇到了一些问题,但最终还是自己解决了。在你的活动中,你有
super.loadUrl(“javascript:yourFunction()”)代码>
在您的代码中--确保您有一个窗口范围的函数来激发window.yourFunction=function()
。当您使用PhoneGap时,我假设已经在webview中启用了javascript。如果没有,您也需要启用它,您可能会发现我的帖子对了解这一点很有用
HTH这对我来说是有效的,但在它工作后,应用程序返回一个错误,说“与服务器的连接不成功”。因此,即使javascript执行,它仍然尝试使用该行作为url发出请求。不确定是否有办法解决这个问题。@Caimen您是在正常的android设置中还是仅在实现phonegap的情况下才会发生这种情况?顺便说一句,根据我自己的经验,我开始使用phonegap,但很快意识到它对我没有多大帮助(我只需要几个公开的电话功能,连接和定位)。所以我放弃了这个想法,使用纯机器人代码来保持它的轻巧和简单。是的,我自己编写纯机器人代码的经验更好。不过,我们也在为IOS和其他OSs开发。我也在PhoneGap 1.0上,因为我们一直在开发1.2。我最终使用super.loadUrlTimeoutValue=20000000000实现了这一点;在调用javascript的url之前。这当然是一个极端的黑客行为,我正在寻找一种不同的方法来实现同样的目标。