我正在尝试使用其中一个包含Phonegap / javascript代码的片段创建和应用标签和片段。
我有一些代码只能在一个phonegap应用程序中运行(没有片段)但是当我把代码放入一个片段时它停止工作......
例如,下面的代码甚至没有工作......:
<!DOCTYPE html>
<html>
<head>
<title>Test</title>
<script type="text/javascript" src="cordova.js"></script>
<script type="text/javascript" src="jquery-2.0.3.min.js"></script>
<script type="text/javascript" src="jquery.mobile-1.3.2.min.js"></script>
<script>
document.addEventListener("deviceready", onDeviceReady, false);
function onDeviceReady(){
alert("woot i loaded");
}
</script>
</head>
</html>
我的第一个问题是,在我转到选项卡之前,代码正在运行。带有phonegap代码的选项卡不是默认选项卡,因此可能会在应用程序加载时加载,这就是为什么我看不到任何内容?
public class DevicesListFragment extends Fragment{
CordovaWebView webView;
@Override
public void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
webView = new CordovaWebView(getActivity());
**webView.loadUrl("file:///android_asset/www/index.html");**
//maybe this is loading and running js before I switch to that tab?
}
}
在带有标签和片段的Android应用程序中使用PhoneGap时,我是否需要做一些特别的事情?
答案 0 :(得分:1)
首先尝试在移动设备/模拟器中实现不在浏览器中的应用
<!DOCTYPE html>
<html>
<head>
<title>Device Ready Example</title>
<script type="text/javascript" charset="utf-8" src="cordova.js"></script>
<script type="text/javascript" charset="utf-8">
// Wait for device API libraries to load
//
function onLoad() {
document.addEventListener("deviceready", onDeviceReady, false);
}
// device APIs are available
//
function onDeviceReady() {
// Now safe to use device APIs
}
</script>
</head>
<body onload="onLoad()">
</body>
</html>
MyPhoneGapActivity.java
import org.apache.cordova.DroidGap;
import android.os.Bundle;
public class MyPhoneGapActivity extends DroidGap {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
super.loadUrl("file:///android_asset/www/index.html");
}
}
或者参考下面提供的行
http://docs.phonegap.com/en/3.0.0/cordova_events_events.md.html#Events