mirror of
https://github.com/apache/cordova-android.git
synced 2026-05-30 00:00:04 +08:00
Tests to verify Android native features.
This commit is contained in:
+23
@@ -0,0 +1,23 @@
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<title>Backbutton</title>
|
||||
<link rel="stylesheet" href="../master.css" type="text/css" media="screen" title="no title">
|
||||
<script type="text/javascript" charset="utf-8" src="../cordova.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="../main.js"></script>
|
||||
|
||||
<body onload="init();" id="stage" class="theme">
|
||||
<h1>Cordova Android Tests</h1>
|
||||
<div id="info">
|
||||
<h4>Platform: <span id="platform"> </span>, Version: <span id="version"> </span></h4>
|
||||
<h4>UUID: <span id="uuid"> </span>, Name: <span id="name"> </span></h4>
|
||||
<h4>Width: <span id="width"> </span>, Height: <span id="height"> </span>, Color Depth: <span id="colorDepth"></span></h4>
|
||||
</div>
|
||||
<div id="info">
|
||||
<h4>Page 1</h4>
|
||||
Go to next page.<br>
|
||||
If returning from previous page, press "backbutton". You should exit this app.
|
||||
</div>
|
||||
<a href="sample2.html" class="btn large">Next page</a>
|
||||
</body>
|
||||
</html>
|
||||
+23
@@ -0,0 +1,23 @@
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<title>Backbutton</title>
|
||||
<link rel="stylesheet" href="../master.css" type="text/css" media="screen" title="no title">
|
||||
<script type="text/javascript" charset="utf-8" src="../cordova.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="../main.js"></script>
|
||||
|
||||
<body onload="init();" id="stage" class="theme">
|
||||
<h1>Cordova Android Tests</h1>
|
||||
<div id="info">
|
||||
<h4>Platform: <span id="platform"> </span>, Version: <span id="version"> </span></h4>
|
||||
<h4>UUID: <span id="uuid"> </span>, Name: <span id="name"> </span></h4>
|
||||
<h4>Width: <span id="width"> </span>, Height: <span id="height"> </span>, Color Depth: <span id="colorDepth"></span></h4>
|
||||
</div>
|
||||
<div id="info">
|
||||
<h4>Page 2</h4>
|
||||
Go to next page.<br>
|
||||
If returning from previous page, press "backbutton". You should go to Page 1.
|
||||
</div>
|
||||
<a href="sample3.html" class="btn large">Next page</a>
|
||||
</body>
|
||||
</html>
|
||||
+26
@@ -0,0 +1,26 @@
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<title>Backbutton</title>
|
||||
<link rel="stylesheet" href="../master.css" type="text/css" media="screen" title="no title">
|
||||
<script type="text/javascript" charset="utf-8" src="../cordova.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="../main.js"></script>
|
||||
|
||||
<body onload="init();" id="stage" class="theme">
|
||||
<h1>Cordova Android Tests</h1>
|
||||
<div id="info">
|
||||
<h4>Platform: <span id="platform"> </span>, Version: <span id="version"> </span></h4>
|
||||
<h4>UUID: <span id="uuid"> </span>, Name: <span id="name"> </span></h4>
|
||||
<h4>Width: <span id="width"> </span>, Height: <span id="height"> </span>, Color Depth: <span id="colorDepth"></span></h4>
|
||||
</div>
|
||||
<div id="info">
|
||||
<h4>Page 3</h4>
|
||||
Press the 3 buttons below. You should stay on same page.<br>
|
||||
Press "backbutton" 4 times. This will go back to #test3, #test2, #test1, then return to previous Page 2.<br>
|
||||
(NOTE: IS THIS CORRECT BEHAVIOR?)
|
||||
</div>
|
||||
<a href="sample3.html#test1" class="btn large">page3#test1</a>
|
||||
<a href="sample3.html#test2" class="btn large">page3#test2</a>
|
||||
<a href="sample3.html#test3" class="btn large">page3#test3</a>
|
||||
</body>
|
||||
</html>
|
||||
Executable
+99
@@ -0,0 +1,99 @@
|
||||
<!DOCTYPE HTML>
|
||||
<html>
|
||||
<head>
|
||||
<head>
|
||||
<meta http-equiv="Content-type" content="text/html; charset=utf-8">
|
||||
<title>Background Page 1</title>
|
||||
<link rel="stylesheet" href="../master.css" type="text/css" media="screen" title="no title">
|
||||
<script type="text/javascript" charset="utf-8" src="../cordova.js"></script>
|
||||
|
||||
<script type="text/javascript" charset="utf-8">
|
||||
|
||||
function onLoad() {
|
||||
console.log("Page1: onload");
|
||||
log("Page1: onload @ " + new Date().toLocaleTimeString());
|
||||
document.addEventListener("deviceready", onDeviceReady, false);
|
||||
}
|
||||
|
||||
function onUnLoaded() {
|
||||
console.log("Page1: onunload");
|
||||
log("Page1: onunload @ " + new Date().toLocaleTimeString());
|
||||
}
|
||||
|
||||
function onDeviceReady() {
|
||||
// Register the event listener
|
||||
document.getElementById("platform").innerHTML = device.platform;
|
||||
document.getElementById("version").innerHTML = device.version;
|
||||
document.getElementById("uuid").innerHTML = device.uuid;
|
||||
document.getElementById("name").innerHTML = device.name;
|
||||
document.getElementById("width").innerHTML = screen.width;
|
||||
document.getElementById("height").innerHTML = screen.height;
|
||||
document.getElementById("colorDepth").innerHTML = screen.colorDepth;
|
||||
|
||||
document.addEventListener("pause", onPause, false);
|
||||
document.addEventListener("resume", onResume, false);
|
||||
|
||||
window.setInterval(function() {
|
||||
log("Page1: Running");
|
||||
}, 2000);
|
||||
}
|
||||
|
||||
function onPause() {
|
||||
console.log("Page1: onpause");
|
||||
log("Page1: onpause @ " + new Date().toLocaleTimeString());
|
||||
}
|
||||
|
||||
function onResume() {
|
||||
console.log("Page1: onresume");
|
||||
log("Page1: onresume @ " + new Date().toLocaleTimeString());
|
||||
}
|
||||
|
||||
function log(s) {
|
||||
var el = document.getElementById('status');
|
||||
var status = el.innerHTML + s + "<br>";
|
||||
el.innerHTML = status;
|
||||
localStorage.backgroundstatus = status;
|
||||
}
|
||||
|
||||
function clearStatus() {
|
||||
console.log("clear()");
|
||||
localStorage.backgroundstatus = "";
|
||||
document.getElementById('status').innerHTML = "";
|
||||
}
|
||||
|
||||
</script>
|
||||
</head>
|
||||
<body onload="onLoad()" onunload="onUnLoaded()" id="stage" class="theme">
|
||||
<h1>Events</h1>
|
||||
<div id="info">
|
||||
<h4>
|
||||
Platform: <span id="platform"> </span>, Version: <span
|
||||
id="version"> </span>
|
||||
</h4>
|
||||
<h4>
|
||||
UUID: <span id="uuid"> </span>, Name: <span id="name"> </span>
|
||||
</h4>
|
||||
<h4>
|
||||
Width: <span id="width"> </span>, Height: <span id="height">
|
||||
</span>, Color Depth: <span id="colorDepth"></span>
|
||||
</h4>
|
||||
</div>
|
||||
<div id="info">
|
||||
Press "Home" button, then return to this app to see pause/resume.<br>
|
||||
There shouldn't be any "Running" entries between pause and resume.<br>
|
||||
</div>
|
||||
<div id="info">
|
||||
<h4>Info for event testing:</h4>
|
||||
<div id="status"></div>
|
||||
</div>
|
||||
|
||||
<!-- a href="index2.html" class="btn large" >Load new page</a -->
|
||||
<a href="javascript:" class="btn large" onclick="clearStatus();">Clear status</a>
|
||||
|
||||
<script>
|
||||
document.getElementById('status').innerHTML = localStorage.backgroundstatus;
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
|
||||
Executable
+98
@@ -0,0 +1,98 @@
|
||||
<!DOCTYPE HTML>
|
||||
<html>
|
||||
<head>
|
||||
<head>
|
||||
<meta http-equiv="Content-type" content="text/html; charset=utf-8">
|
||||
<title>Background Page 2</title>
|
||||
<link rel="stylesheet" href="../master.css" type="text/css" media="screen" title="no title">
|
||||
<script type="text/javascript" charset="utf-8" src="../cordova.js"></script>
|
||||
|
||||
<script type="text/javascript" charset="utf-8">
|
||||
|
||||
function onLoad() {
|
||||
console.log("Page2: onload");
|
||||
log("Page2: onload @ " + new Date().toLocaleTimeString());
|
||||
document.addEventListener("deviceready", onDeviceReady, false);
|
||||
}
|
||||
|
||||
function onUnLoaded() {
|
||||
console.log("Page2: onunload");
|
||||
log("Page2: onunload @ " + new Date().toLocaleTimeString());
|
||||
}
|
||||
|
||||
function onDeviceReady() {
|
||||
// Register the event listener
|
||||
document.getElementById("platform").innerHTML = device.platform;
|
||||
document.getElementById("version").innerHTML = device.version;
|
||||
document.getElementById("uuid").innerHTML = device.uuid;
|
||||
document.getElementById("name").innerHTML = device.name;
|
||||
document.getElementById("width").innerHTML = screen.width;
|
||||
document.getElementById("height").innerHTML = screen.height;
|
||||
document.getElementById("colorDepth").innerHTML = screen.colorDepth;
|
||||
|
||||
document.addEventListener("pause", onPause, false);
|
||||
document.addEventListener("resume", onResume, false);
|
||||
|
||||
window.setInterval(function() {
|
||||
log("Page2: Running");
|
||||
}, 2000);
|
||||
}
|
||||
|
||||
function onPause() {
|
||||
console.log("Page2: onpause");
|
||||
log("Page2: onpause @ " + new Date().toLocaleTimeString());
|
||||
}
|
||||
|
||||
function onResume() {
|
||||
console.log("Page2: onresume");
|
||||
log("Page2: onresume @ " + new Date().toLocaleTimeString());
|
||||
}
|
||||
|
||||
function log(s) {
|
||||
var el = document.getElementById('status');
|
||||
var status = el.innerHTML + s + "<br>";
|
||||
el.innerHTML = status;
|
||||
localStorage.backgroundstatus = status;
|
||||
}
|
||||
|
||||
function clearStatus() {
|
||||
console.log("clear()");
|
||||
localStorage.backgroundstatus = "";
|
||||
document.getElementById('status').innerHTML = "";
|
||||
}
|
||||
|
||||
</script>
|
||||
</head>
|
||||
<body onload="onLoad()" onunload="onUnLoaded()" id="stage" class="theme">
|
||||
<h1>Events</h1>
|
||||
<div id="info">
|
||||
<h4>
|
||||
Platform: <span id="platform"> </span>, Version: <span
|
||||
id="version"> </span>
|
||||
</h4>
|
||||
<h4>
|
||||
UUID: <span id="uuid"> </span>, Name: <span id="name"> </span>
|
||||
</h4>
|
||||
<h4>
|
||||
Width: <span id="width"> </span>, Height: <span id="height">
|
||||
</span>, Color Depth: <span id="colorDepth"></span>
|
||||
</h4>
|
||||
</div>
|
||||
<div id="info">
|
||||
<h4>Press "Back" button to return to Page 1.</h4>
|
||||
</div>
|
||||
<div id="info">
|
||||
<h4>Info for event testing:</h4>
|
||||
<div id="status"></div>
|
||||
</div>
|
||||
|
||||
<a href="index.html" class="btn large" >Load new page</a>
|
||||
<a href="javascript:" class="btn large" onclick="clearStatus();">Clear status</a>
|
||||
|
||||
<script>
|
||||
document.getElementById('status').innerHTML = localStorage.backgroundstatus;
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
|
||||
Executable
+4897
File diff suppressed because it is too large
Load Diff
+2
@@ -0,0 +1,2 @@
|
||||
document.write('<script type="text/javascript" charset="utf-8" src="../cordova-1.6.0rc1.js"></script>');
|
||||
document.write('<script type="text/javascript" charset="utf-8" src="cordova-1.6.0rc1.js"></script>');
|
||||
Executable
+1
@@ -0,0 +1 @@
|
||||
This is an error page.
|
||||
Executable
+33
@@ -0,0 +1,33 @@
|
||||
<!DOCTYPE HTML>
|
||||
<html>
|
||||
<head>
|
||||
<meta name="viewport" content="width=320; user-scalable=no" />
|
||||
<meta http-equiv="Content-type" content="text/html; charset=utf-8">
|
||||
<title>Cordova Tests</title>
|
||||
<link rel="stylesheet" href="../master.css" type="text/css" media="screen" title="no title">
|
||||
<script type="text/javascript" charset="utf-8" src="../cordova.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="../main.js"></script>
|
||||
<script>
|
||||
function loadUrl(url) {
|
||||
document.getElementById('iframe').src = url;
|
||||
}</script>
|
||||
</head>
|
||||
<body onload="init();" id="stage" class="theme">
|
||||
<h1>IFrame</h1>
|
||||
<div id="info">
|
||||
<h4>Platform: <span id="platform"> </span>, Version: <span id="version"> </span></h4>
|
||||
<h4>UUID: <span id="uuid"> </span>, Name: <span id="name"> </span></h4>
|
||||
<h4>Width: <span id="width"> </span>, Height: <span id="height">
|
||||
</span>, Color Depth: <span id="colorDepth"></span></h4>
|
||||
</div>
|
||||
<div id="info">
|
||||
Press the two buttons:<br>
|
||||
1. Google Maps should display in iframe.<br>
|
||||
2. Page 2 replaces current page.<br>
|
||||
(NOTE: THIS BEHAVIOR IS WRONG - AND NEEDS TO BE FIXED IN FUTURE RELEASE.)
|
||||
</div>
|
||||
<iframe id="iframe" src="" width="90%" height="200px"></iframe>
|
||||
<a href="javascript:" class="btn large" onclick="loadUrl('http://maps.google.com/maps?output=embed');">Google Maps</a>
|
||||
<a href="javascript:" class="btn large" onclick="loadUrl('index2.html');">Page 2</a>
|
||||
</body>
|
||||
</html>
|
||||
Executable
+24
@@ -0,0 +1,24 @@
|
||||
<!DOCTYPE HTML>
|
||||
<html>
|
||||
<head>
|
||||
<meta name="viewport" content="width=320; user-scalable=no" />
|
||||
<meta http-equiv="Content-type" content="text/html; charset=utf-8">
|
||||
<title>Cordova Tests</title>
|
||||
<link rel="stylesheet" href="../master.css" type="text/css" media="screen" title="no title">
|
||||
<script type="text/javascript" charset="utf-8" src="../cordova.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="../main.js"></script>
|
||||
</head>
|
||||
<body onload="init();" id="stage" class="theme">
|
||||
<h1>IFrame window</h1>
|
||||
<div id="info">
|
||||
<h4>Platform: <span id="platform"> </span>, Version: <span id="version"> </span></h4>
|
||||
<h4>UUID: <span id="uuid"> </span>, Name: <span id="name"> </span></h4>
|
||||
<h4>Width: <span id="width"> </span>, Height: <span id="height">
|
||||
</span>, Color Depth: <span id="colorDepth"></span></h4>
|
||||
</div>
|
||||
<div id="info">
|
||||
This should display a Cordova page inside an iframe. The info above should be filled out.
|
||||
(NOTE: THIS DOES NOT WORK AND NEEDS TO BE FIXED IN FUTURE RELEASE.)
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
Executable
+47
@@ -0,0 +1,47 @@
|
||||
<!DOCTYPE HTML>
|
||||
<html>
|
||||
<head>
|
||||
<meta name="viewport" content="width=320; user-scalable=no" />
|
||||
<meta http-equiv="Content-type" content="text/html; charset=utf-8">
|
||||
<title>Cordova Tests</title>
|
||||
<link rel="stylesheet" href="master.css" type="text/css" media="screen" title="no title">
|
||||
<script type="text/javascript" charset="utf-8" src="cordova.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="main.js"></script>
|
||||
<script>
|
||||
function startActivity(className) {
|
||||
cordova.exec(function() {console.log("Success");}, function(e) {console.log("Error: "+e);}, "Activity", "start", [className]);
|
||||
};
|
||||
|
||||
localStorage.lifecyclestatus = "";
|
||||
localStorage.backgroundstatus = "";
|
||||
</script>
|
||||
|
||||
</head>
|
||||
<body onload="init();" id="stage" class="theme">
|
||||
<h1>Cordova Android Tests</h1>
|
||||
<div id="info">
|
||||
<h4>Platform: <span id="platform"> </span>, Version: <span id="version"> </span></h4>
|
||||
<h4>UUID: <span id="uuid"> </span>, Name: <span id="name"> </span></h4>
|
||||
<h4>Width: <span id="width"> </span>, Height: <span id="height">
|
||||
</span>, Color Depth: <span id="colorDepth"></span></h4>
|
||||
<h4>Cordova Version: <span id="cordova"> </span></h4>
|
||||
</div>
|
||||
<div id="info">
|
||||
<h4>Run each of the tests below:</h4>
|
||||
</div>
|
||||
<button class="btn large" onclick="startActivity('org.apache.cordova.test.jqmtabbackbutton');">Backbutton jQM tab</button>
|
||||
<button class="btn large" onclick="startActivity('org.apache.cordova.test.backbuttonmultipage');">Backbutton with multiple pages</button>
|
||||
<button class="btn large" onclick="startActivity('org.apache.cordova.test.errorurl');">Error URL</button>
|
||||
<button class="btn large" onclick="startActivity('org.apache.cordova.test.htmlnotfound');">HTML not found</button>
|
||||
<button class="btn large" onclick="startActivity('org.apache.cordova.test.iframe');">IFrame</button>
|
||||
<button class="btn large" onclick="startActivity('org.apache.cordova.test.lifecycle');">Lifecycle</button>
|
||||
<button class="btn large" onclick="startActivity('org.apache.cordova.test.loading');">Loading indicator</button>
|
||||
<button class="btn large" onclick="startActivity('org.apache.cordova.test.menus');">Menus</button>
|
||||
<button class="btn large" onclick="startActivity('org.apache.cordova.test.background');">No multitasking</button>
|
||||
<button class="btn large" onclick="startActivity('org.apache.cordova.test.splashscreen');">Splash screen</button>
|
||||
<button class="btn large" onclick="startActivity('org.apache.cordova.test.timeout');">Load timeout</button>
|
||||
<button class="btn large" onclick="startActivity('org.apache.cordova.test.userwebview');">User WebView/Client/Chrome</button>
|
||||
<button class="btn large" onclick="startActivity('org.apache.cordova.test.whitelist');">Whitelist</button>
|
||||
<button class="btn large" onclick="startActivity('org.apache.cordova.test.xhr');">XHR</button>
|
||||
</body>
|
||||
</html>
|
||||
Executable
+49
@@ -0,0 +1,49 @@
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<title>Backbutton</title>
|
||||
|
||||
<link rel="stylesheet" href="http://code.jquery.com/mobile/1.0.1/jquery.mobile-1.0.1.min.css" />
|
||||
<script src="http://code.jquery.com/jquery-1.7.1.min.js"></script>
|
||||
<script src="http://code.jquery.com/mobile/1.0.1/jquery.mobile-1.0.1.min.js"></script>
|
||||
<script type="text/javascript" src="../cordova.js"></script>
|
||||
|
||||
<script>
|
||||
document.addEventListener("deviceready", onDeviceReady, false);
|
||||
|
||||
// Without backbutton handler, each tab loaded will be popped off history until history is empty, then it will exit app.
|
||||
function handleBackButton() {
|
||||
alert("Back Button Pressed! - exiting app");
|
||||
navigator.app.exitApp();
|
||||
}
|
||||
|
||||
function onDeviceReady() {
|
||||
console.log("onDeviceReady()");
|
||||
document.addEventListener("backbutton", handleBackButton, false);
|
||||
}
|
||||
|
||||
|
||||
</script>
|
||||
</head>
|
||||
<body>
|
||||
<div data-role="page" id="tabTab">
|
||||
<div data-role="header">
|
||||
<h1>Main</h1>
|
||||
</div>
|
||||
<div data-role="content" id="tabContent">
|
||||
To test, press several tabs.<br>
|
||||
The "backbutton" can be pressed any time to exit app.
|
||||
</div>
|
||||
<div data-role="footer" data-position="fixed">
|
||||
<div data-role="navbar">
|
||||
<ul>
|
||||
<li><a href="tab1.html" data-transition="none">Tab 1</a>
|
||||
</li>
|
||||
<li><a href="tab2.html" data-transition="none">Tab 2</a>
|
||||
</li>
|
||||
<li><a href="tab3.html" data-transition="none">Tab 3</a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
Executable
+29
@@ -0,0 +1,29 @@
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<title>Tab 1</title>
|
||||
|
||||
</head>
|
||||
<body>
|
||||
<div data-role="page" id="tab1Tab">
|
||||
<div data-role="header">
|
||||
<h1>Tab 1</h1>
|
||||
</div>
|
||||
<div data-role="content" id="tab1Content">
|
||||
Tab 1 content.
|
||||
</div>
|
||||
<div data-role="footer" data-position="fixed">
|
||||
<div data-role="navbar">
|
||||
<ul>
|
||||
<li><a href="tab1.html" data-transition="none">Tab 1</a>
|
||||
</li>
|
||||
<li><a href="tab2.html" data-transition="none">Tab 2</a>
|
||||
</li>
|
||||
<li><a href="tab3.html" data-transition="none">Tab 3</a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<!-- /navbar -->
|
||||
</div>
|
||||
<!-- /footer -->
|
||||
</div>
|
||||
Executable
+30
@@ -0,0 +1,30 @@
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<title>Tab 2</title>
|
||||
|
||||
|
||||
</head>
|
||||
<body>
|
||||
<div data-role="page" id="tab2Tab">
|
||||
<div data-role="header">
|
||||
<h1>Tab 2</h1>
|
||||
</div>
|
||||
<div data-role="content" id="tab2Content">
|
||||
Tab 2 content.
|
||||
</div>
|
||||
<div data-role="footer" data-position="fixed">
|
||||
<div data-role="navbar">
|
||||
<ul>
|
||||
<li><a href="tab1.html" data-transition="none">Tab 1</a>
|
||||
</li>
|
||||
<li><a href="tab2.html" data-transition="none">Tab 2</a>
|
||||
</li>
|
||||
<li><a href="tab3.html" data-transition="none">Tab 3</a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<!-- /navbar -->
|
||||
</div>
|
||||
<!-- /footer -->
|
||||
</div>
|
||||
Executable
+30
@@ -0,0 +1,30 @@
|
||||
<html>
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<title>Tab 3</title>
|
||||
|
||||
|
||||
</head>
|
||||
<body>
|
||||
<div data-role="page" id="tab3Tab">
|
||||
<div data-role="header">
|
||||
<h1>Tab 3</h1>
|
||||
</div>
|
||||
<div data-role="content" id="tab3Content">
|
||||
Tab 3 content.
|
||||
</div>
|
||||
<div data-role="footer" data-position="fixed">
|
||||
<div data-role="navbar">
|
||||
<ul>
|
||||
<li><a href="tab1.html" data-transition="none">Tab 1</a>
|
||||
</li>
|
||||
<li><a href="tab2.html" data-transition="none">Tab 2</a>
|
||||
</li>
|
||||
<li><a href="tab3.html" data-transition="none">Tab 3</a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
<!-- /navbar -->
|
||||
</div>
|
||||
<!-- /footer -->
|
||||
</div>
|
||||
Executable
+108
@@ -0,0 +1,108 @@
|
||||
<!DOCTYPE HTML>
|
||||
<html>
|
||||
<head>
|
||||
<head>
|
||||
<meta http-equiv="Content-type" content="text/html; charset=utf-8">
|
||||
<title>Lifecycle Page 1</title>
|
||||
<link rel="stylesheet" href="../master.css" type="text/css" media="screen" title="no title">
|
||||
<script type="text/javascript" charset="utf-8" src="../cordova.js"></script>
|
||||
|
||||
<script type="text/javascript" charset="utf-8">
|
||||
|
||||
function onLoad() {
|
||||
console.log("Page1: onload");
|
||||
log("Page1: onload @ " + new Date().toLocaleTimeString());
|
||||
document.addEventListener("deviceready", onDeviceReady, false);
|
||||
}
|
||||
|
||||
function onUnLoaded() {
|
||||
console.log("Page1: onunload");
|
||||
log("Page1: onunload @ " + new Date().toLocaleTimeString());
|
||||
}
|
||||
|
||||
function onDeviceReady() {
|
||||
// Register the event listener
|
||||
document.getElementById("platform").innerHTML = device.platform;
|
||||
document.getElementById("version").innerHTML = device.version;
|
||||
document.getElementById("uuid").innerHTML = device.uuid;
|
||||
document.getElementById("name").innerHTML = device.name;
|
||||
document.getElementById("width").innerHTML = screen.width;
|
||||
document.getElementById("height").innerHTML = screen.height;
|
||||
document.getElementById("colorDepth").innerHTML = screen.colorDepth;
|
||||
|
||||
document.addEventListener("pause", onPause, false);
|
||||
document.addEventListener("resume", onResume, false);
|
||||
|
||||
window.setInterval(function() {
|
||||
log("Page1: Running");
|
||||
}, 2000);
|
||||
}
|
||||
|
||||
function onPause() {
|
||||
console.log("Page1: onpause");
|
||||
log("Page1: onpause @ " + new Date().toLocaleTimeString());
|
||||
}
|
||||
|
||||
function onResume() {
|
||||
console.log("Page1: onresume");
|
||||
log("Page1: onresume @ " + new Date().toLocaleTimeString());
|
||||
}
|
||||
|
||||
function log(s) {
|
||||
var el = document.getElementById('status');
|
||||
var status = el.innerHTML + s + "<br>";
|
||||
el.innerHTML = status;
|
||||
localStorage.lifecyclestatus = status;
|
||||
}
|
||||
|
||||
function clearStatus() {
|
||||
console.log("clear()");
|
||||
localStorage.lifecyclestatus = "";
|
||||
document.getElementById('status').innerHTML = "";
|
||||
}
|
||||
|
||||
</script>
|
||||
</head>
|
||||
<body onload="onLoad()" onunload="onUnLoaded()" id="stage" class="theme">
|
||||
<h1>Events</h1>
|
||||
<div id="info">
|
||||
<h4>
|
||||
Platform: <span id="platform"> </span>, Version: <span
|
||||
id="version"> </span>
|
||||
</h4>
|
||||
<h4>
|
||||
UUID: <span id="uuid"> </span>, Name: <span id="name"> </span>
|
||||
</h4>
|
||||
<h4>
|
||||
Width: <span id="width"> </span>, Height: <span id="height">
|
||||
</span>, Color Depth: <span id="colorDepth"></span>
|
||||
</h4>
|
||||
</div>
|
||||
<div id="info">
|
||||
<h4>Test 1</h4>
|
||||
Press "Home" button, then return to this app to see pause/resume.<br>
|
||||
There should be "Running" entries between pause and resume since app continues to run in the background.
|
||||
<h4>Test 2</h4>
|
||||
Press "Load new page" button to load a new Cordova page.<br>
|
||||
When returning, you should see
|
||||
<ul>
|
||||
<li>Page2: onunload</li>
|
||||
<li>Page1: onload</li>
|
||||
<li>Page1: Running</li>
|
||||
</ul>
|
||||
</div>
|
||||
<div id="info">
|
||||
<h4>Info for event testing:</h4>
|
||||
<div id="status"></div>
|
||||
</div>
|
||||
|
||||
<a href="index2.html" class="btn large" >Load new page</a>
|
||||
<a href="javascript:" class="btn large" onclick="clearStatus();">Clear status</a>
|
||||
|
||||
<script>
|
||||
document.getElementById('status').innerHTML = localStorage.lifecyclestatus;
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
|
||||
Executable
+104
@@ -0,0 +1,104 @@
|
||||
<!DOCTYPE HTML>
|
||||
<html>
|
||||
<head>
|
||||
<head>
|
||||
<meta http-equiv="Content-type" content="text/html; charset=utf-8">
|
||||
<title>Lifecycle Page 2</title>
|
||||
<link rel="stylesheet" href="../master.css" type="text/css" media="screen" title="no title">
|
||||
<script type="text/javascript" charset="utf-8" src="../cordova.js"></script>
|
||||
|
||||
<script type="text/javascript" charset="utf-8">
|
||||
|
||||
function onLoad() {
|
||||
console.log("Page2: onload");
|
||||
log("Page2: onload @ " + new Date().toLocaleTimeString());
|
||||
document.addEventListener("deviceready", onDeviceReady, false);
|
||||
}
|
||||
|
||||
function onUnLoaded() {
|
||||
console.log("Page2: onunload");
|
||||
log("Page2: onunload @ " + new Date().toLocaleTimeString());
|
||||
}
|
||||
|
||||
function onDeviceReady() {
|
||||
// Register the event listener
|
||||
document.getElementById("platform").innerHTML = device.platform;
|
||||
document.getElementById("version").innerHTML = device.version;
|
||||
document.getElementById("uuid").innerHTML = device.uuid;
|
||||
document.getElementById("name").innerHTML = device.name;
|
||||
document.getElementById("width").innerHTML = screen.width;
|
||||
document.getElementById("height").innerHTML = screen.height;
|
||||
document.getElementById("colorDepth").innerHTML = screen.colorDepth;
|
||||
|
||||
document.addEventListener("pause", onPause, false);
|
||||
document.addEventListener("resume", onResume, false);
|
||||
|
||||
window.setInterval(function() {
|
||||
log("Page2: Running");
|
||||
}, 2000);
|
||||
}
|
||||
|
||||
function onPause() {
|
||||
console.log("Page2: onpause");
|
||||
log("Page2: onpause @ " + new Date().toLocaleTimeString());
|
||||
}
|
||||
|
||||
function onResume() {
|
||||
console.log("Page2: onresume");
|
||||
log("Page2: onresume @ " + new Date().toLocaleTimeString());
|
||||
}
|
||||
|
||||
function log(s) {
|
||||
var el = document.getElementById('status');
|
||||
var status = el.innerHTML + s + "<br>";
|
||||
el.innerHTML = status;
|
||||
localStorage.lifecyclestatus = status;
|
||||
}
|
||||
|
||||
function clearStatus() {
|
||||
console.log("clear()");
|
||||
localStorage.lifecyclestatus = "";
|
||||
document.getElementById('status').innerHTML = "";
|
||||
}
|
||||
|
||||
</script>
|
||||
</head>
|
||||
<body onload="onLoad()" onunload="onUnLoaded()" id="stage" class="theme">
|
||||
<h1>Events</h1>
|
||||
<div id="info">
|
||||
<h4>
|
||||
Platform: <span id="platform"> </span>, Version: <span
|
||||
id="version"> </span>
|
||||
</h4>
|
||||
<h4>
|
||||
UUID: <span id="uuid"> </span>, Name: <span id="name"> </span>
|
||||
</h4>
|
||||
<h4>
|
||||
Width: <span id="width"> </span>, Height: <span id="height">
|
||||
</span>, Color Depth: <span id="colorDepth"></span>
|
||||
</h4>
|
||||
</div>
|
||||
<div id="info">
|
||||
You should see<br>
|
||||
<ul>
|
||||
<li>Page1: onunload</li>
|
||||
<li>Page2: onload</li>
|
||||
<li>Page2: Running</li>
|
||||
</ul>
|
||||
Press "backbutton" to return to Page 1.
|
||||
</div>
|
||||
<div id="info">
|
||||
<h4>Info for event testing:</h4>
|
||||
<div id="status"></div>
|
||||
</div>
|
||||
|
||||
<a href="index.html" class="btn large" >Load new page</a>
|
||||
<a href="javascript:" class="btn large" onclick="clearStatus();">Clear status</a>
|
||||
|
||||
<script>
|
||||
document.getElementById('status').innerHTML = localStorage.lifecyclestatus;
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
|
||||
Executable
+150
@@ -0,0 +1,150 @@
|
||||
var deviceInfo = function() {
|
||||
document.getElementById("platform").innerHTML = device.platform;
|
||||
document.getElementById("version").innerHTML = device.version;
|
||||
document.getElementById("uuid").innerHTML = device.uuid;
|
||||
document.getElementById("name").innerHTML = device.name;
|
||||
document.getElementById("width").innerHTML = screen.width;
|
||||
document.getElementById("height").innerHTML = screen.height;
|
||||
document.getElementById("colorDepth").innerHTML = screen.colorDepth;
|
||||
var el = document.getElementById("cordova");
|
||||
if (el) {
|
||||
el.innerHTML = device.cordova;
|
||||
}
|
||||
};
|
||||
|
||||
var getLocation = function() {
|
||||
var suc = function(p) {
|
||||
alert(p.coords.latitude + " " + p.coords.longitude);
|
||||
};
|
||||
var locFail = function() {
|
||||
};
|
||||
navigator.geolocation.getCurrentPosition(suc, locFail);
|
||||
};
|
||||
|
||||
var beep = function() {
|
||||
navigator.notification.beep(2);
|
||||
};
|
||||
|
||||
var vibrate = function() {
|
||||
navigator.notification.vibrate(0);
|
||||
};
|
||||
|
||||
function roundNumber(num) {
|
||||
var dec = 3;
|
||||
var result = Math.round(num * Math.pow(10, dec)) / Math.pow(10, dec);
|
||||
return result;
|
||||
}
|
||||
|
||||
var accelerationWatch = null;
|
||||
|
||||
function updateAcceleration(a) {
|
||||
document.getElementById('x').innerHTML = roundNumber(a.x);
|
||||
document.getElementById('y').innerHTML = roundNumber(a.y);
|
||||
document.getElementById('z').innerHTML = roundNumber(a.z);
|
||||
}
|
||||
|
||||
var toggleAccel = function() {
|
||||
if (accelerationWatch !== null) {
|
||||
navigator.accelerometer.clearWatch(accelerationWatch);
|
||||
updateAcceleration({
|
||||
x : "",
|
||||
y : "",
|
||||
z : ""
|
||||
});
|
||||
accelerationWatch = null;
|
||||
} else {
|
||||
var options = {};
|
||||
options.frequency = 1000;
|
||||
accelerationWatch = navigator.accelerometer.watchAcceleration(
|
||||
updateAcceleration, function(ex) {
|
||||
alert("accel fail (" + ex.name + ": " + ex.message + ")");
|
||||
}, options);
|
||||
}
|
||||
};
|
||||
|
||||
var preventBehavior = function(e) {
|
||||
e.preventDefault();
|
||||
};
|
||||
|
||||
function dump_pic(data) {
|
||||
var viewport = document.getElementById('viewport');
|
||||
console.log(data);
|
||||
viewport.style.display = "";
|
||||
viewport.style.position = "absolute";
|
||||
viewport.style.top = "10px";
|
||||
viewport.style.left = "10px";
|
||||
document.getElementById("test_img").src = "data:image/jpeg;base64," + data;
|
||||
}
|
||||
|
||||
function fail(msg) {
|
||||
alert(msg);
|
||||
}
|
||||
|
||||
function show_pic() {
|
||||
navigator.camera.getPicture(dump_pic, fail, {
|
||||
quality : 50
|
||||
});
|
||||
}
|
||||
|
||||
function close() {
|
||||
var viewport = document.getElementById('viewport');
|
||||
viewport.style.position = "relative";
|
||||
viewport.style.display = "none";
|
||||
}
|
||||
|
||||
function contacts_success(contacts) {
|
||||
alert(contacts.length
|
||||
+ ' contacts returned.'
|
||||
+ (contacts[2] && contacts[2].name ? (' Third contact is ' + contacts[2].name.formatted)
|
||||
: ''));
|
||||
}
|
||||
|
||||
function get_contacts() {
|
||||
var obj = new ContactFindOptions();
|
||||
obj.filter = "";
|
||||
obj.multiple = true;
|
||||
navigator.contacts.find(
|
||||
[ "displayName", "name" ], contacts_success,
|
||||
fail, obj);
|
||||
}
|
||||
|
||||
function check_network() {
|
||||
var networkState = navigator.network.connection.type;
|
||||
|
||||
var states = {};
|
||||
states[Connection.UNKNOWN] = 'Unknown connection';
|
||||
states[Connection.ETHERNET] = 'Ethernet connection';
|
||||
states[Connection.WIFI] = 'WiFi connection';
|
||||
states[Connection.CELL_2G] = 'Cell 2G connection';
|
||||
states[Connection.CELL_3G] = 'Cell 3G connection';
|
||||
states[Connection.CELL_4G] = 'Cell 4G connection';
|
||||
states[Connection.NONE] = 'No network connection';
|
||||
|
||||
confirm('Connection type:\n ' + states[networkState]);
|
||||
}
|
||||
|
||||
var watchID = null;
|
||||
|
||||
function updateHeading(h) {
|
||||
document.getElementById('h').innerHTML = h.magneticHeading;
|
||||
}
|
||||
|
||||
function toggleCompass() {
|
||||
if (watchID !== null) {
|
||||
navigator.compass.clearWatch(watchID);
|
||||
watchID = null;
|
||||
updateHeading({ magneticHeading : "Off"});
|
||||
} else {
|
||||
var options = { frequency: 1000 };
|
||||
watchID = navigator.compass.watchHeading(updateHeading, function(e) {
|
||||
alert('Compass Error: ' + e.code);
|
||||
}, options);
|
||||
}
|
||||
}
|
||||
|
||||
function init() {
|
||||
// the next line makes it impossible to see Contacts on the HTC Evo since it
|
||||
// doesn't have a scroll button
|
||||
// document.addEventListener("touchmove", preventBehavior, false);
|
||||
document.addEventListener("deviceready", deviceInfo, true);
|
||||
}
|
||||
Executable
+117
@@ -0,0 +1,117 @@
|
||||
body {
|
||||
background:#222 none repeat scroll 0 0;
|
||||
color:#666;
|
||||
font-family:Helvetica;
|
||||
font-size:72%;
|
||||
line-height:1.5em;
|
||||
margin:0;
|
||||
border-top:1px solid #393939;
|
||||
}
|
||||
|
||||
#info{
|
||||
background:#ffa;
|
||||
border: 1px solid #ffd324;
|
||||
-webkit-border-radius: 5px;
|
||||
border-radius: 5px;
|
||||
clear:both;
|
||||
margin:15px 6px 0;
|
||||
width:295px;
|
||||
padding:4px 0px 2px 10px;
|
||||
}
|
||||
|
||||
#info > h4{
|
||||
font-size:.95em;
|
||||
margin:5px 0;
|
||||
}
|
||||
|
||||
#stage.theme{
|
||||
padding-top:3px;
|
||||
}
|
||||
|
||||
/* Definition List */
|
||||
#stage.theme > dl{
|
||||
padding-top:10px;
|
||||
clear:both;
|
||||
margin:0;
|
||||
list-style-type:none;
|
||||
padding-left:10px;
|
||||
overflow:auto;
|
||||
}
|
||||
|
||||
#stage.theme > dl > dt{
|
||||
font-weight:bold;
|
||||
float:left;
|
||||
margin-left:5px;
|
||||
}
|
||||
|
||||
#stage.theme > dl > dd{
|
||||
width:45px;
|
||||
float:left;
|
||||
color:#a87;
|
||||
font-weight:bold;
|
||||
}
|
||||
|
||||
/* Content Styling */
|
||||
#stage.theme > h1, #stage.theme > h2, #stage.theme > p{
|
||||
margin:1em 0 .5em 13px;
|
||||
}
|
||||
|
||||
#stage.theme > h1{
|
||||
color:#eee;
|
||||
font-size:1.6em;
|
||||
text-align:center;
|
||||
margin:0;
|
||||
margin-top:15px;
|
||||
padding:0;
|
||||
}
|
||||
|
||||
#stage.theme > h2{
|
||||
clear:both;
|
||||
margin:0;
|
||||
padding:3px;
|
||||
font-size:1em;
|
||||
text-align:center;
|
||||
}
|
||||
|
||||
/* Stage Buttons */
|
||||
#stage.theme a.btn{
|
||||
border: 1px solid #555;
|
||||
-webkit-border-radius: 5px;
|
||||
border-radius: 5px;
|
||||
text-align:center;
|
||||
display:block;
|
||||
float:left;
|
||||
background:#444;
|
||||
width:150px;
|
||||
color:#9ab;
|
||||
font-size:1.1em;
|
||||
text-decoration:none;
|
||||
padding:1.2em 0;
|
||||
margin:3px 0px 3px 5px;
|
||||
}
|
||||
#stage.theme a.btn.large{
|
||||
width:308px;
|
||||
padding:1.2em 0;
|
||||
}
|
||||
|
||||
/* Stage Buttons */
|
||||
#stage.theme button.btn{
|
||||
border: 1px solid #555;
|
||||
-webkit-border-radius: 5px;
|
||||
border-radius: 5px;
|
||||
text-align:center;
|
||||
display:block;
|
||||
float:left;
|
||||
background:#444;
|
||||
width:150px;
|
||||
color:#9ab;
|
||||
font-size:1.1em;
|
||||
text-decoration:none;
|
||||
padding:1.2em 0;
|
||||
margin:3px 0px 3px 5px;
|
||||
}
|
||||
#stage.theme button.btn.large{
|
||||
width:308px;
|
||||
padding:1.2em 0;
|
||||
}
|
||||
|
||||
Executable
+29
@@ -0,0 +1,29 @@
|
||||
<!DOCTYPE HTML>
|
||||
<html>
|
||||
<head>
|
||||
<meta name="viewport" content="width=320; user-scalable=no" />
|
||||
<meta http-equiv="Content-type" content="text/html; charset=utf-8">
|
||||
<title>Cordova Tests</title>
|
||||
<link rel="stylesheet" href="../master.css" type="text/css" media="screen" title="no title">
|
||||
<script type="text/javascript" charset="utf-8" src="../cordova.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="../main.js"></script>
|
||||
</head>
|
||||
<body onload="init();" id="stage" class="theme">
|
||||
<h1>Menu Test</h1>
|
||||
<div id="info">
|
||||
<h4>Platform: <span id="platform"> </span>, Version: <span id="version"> </span></h4>
|
||||
<h4>UUID: <span id="uuid"> </span>, Name: <span id="name"> </span></h4>
|
||||
<h4>Width: <span id="width"> </span>, Height: <span id="height">
|
||||
</span>, Color Depth: <span id="colorDepth"></span></h4>
|
||||
</div>
|
||||
<div id="info">
|
||||
<h4>The menu items should be:</h4>
|
||||
<li>Item1<br>
|
||||
<li>Item2<br>
|
||||
<li>Item3<br>
|
||||
<h4>There is also a context menu. Touch and hold finger here to see:</h4>
|
||||
<li>Context Item1<br>
|
||||
</div>
|
||||
|
||||
</body>
|
||||
</html>
|
||||
Executable
+22
@@ -0,0 +1,22 @@
|
||||
<!DOCTYPE HTML>
|
||||
<html>
|
||||
<head>
|
||||
<meta name="viewport" content="width=320; user-scalable=no" />
|
||||
<meta http-equiv="Content-type" content="text/html; charset=utf-8">
|
||||
<title>Cordova Tests</title>
|
||||
<link rel="stylesheet" href="../master.css" type="text/css" media="screen" title="no title">
|
||||
<script type="text/javascript" charset="utf-8" src="../cordova.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="../main.js"></script>
|
||||
</head>
|
||||
<body onload="init();" id="stage" class="theme">
|
||||
<h1>Splash Screen Test</h1>
|
||||
<div id="info">
|
||||
<h4>Platform: <span id="platform"> </span>, Version: <span id="version"> </span></h4>
|
||||
<h4>UUID: <span id="uuid"> </span>, Name: <span id="name"> </span></h4>
|
||||
<h4>Width: <span id="width"> </span>, Height: <span id="height">
|
||||
</span>, Color Depth: <span id="colorDepth"></span></h4>
|
||||
</div>
|
||||
<div id="info">
|
||||
You should have seen the splash screen for 2 seconds.</div>
|
||||
</body>
|
||||
</html>
|
||||
Executable
+49
@@ -0,0 +1,49 @@
|
||||
<!DOCTYPE HTML>
|
||||
<html>
|
||||
<head>
|
||||
<meta name="viewport" content="width=320; user-scalable=no" />
|
||||
<meta http-equiv="Content-type" content="text/html; charset=utf-8">
|
||||
<title>Cordova Tests</title>
|
||||
<link rel="stylesheet" href="../master.css" type="text/css" media="screen" title="no title">
|
||||
<script type="text/javascript" charset="utf-8" src="../cordova.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="../main.js"></script>
|
||||
</head>
|
||||
<body onload="init();" id="stage" class="theme">
|
||||
<h1>User WebView/Client/Chrome Test</h1>
|
||||
<div id="info">
|
||||
<h4>Platform: <span id="platform"> </span>, Version: <span id="version"> </span></h4>
|
||||
<h4>UUID: <span id="uuid"> </span>, Name: <span id="name"> </span></h4>
|
||||
<h4>Width: <span id="width"> </span>, Height: <span id="height">
|
||||
</span>, Color Depth: <span id="colorDepth"></span></h4>
|
||||
</div>
|
||||
<div id="info">
|
||||
<h4>The following should be seen in LogCat:</h4>
|
||||
<li>userwebview: TestViewClient()<br>
|
||||
<li>userwebview: TestChromeClient()<br>
|
||||
<li>userwebview: onGeolocationPermissionsShowPrompt(file://)<br>
|
||||
<li>userwebview: shouldOverrideUrlLoading(test://this_will_call_shouldOverrideUrlLoading)<br>
|
||||
|
||||
</div>
|
||||
<script>
|
||||
/**
|
||||
* Get current location
|
||||
*/
|
||||
console.log("getLocation()");
|
||||
|
||||
// Success callback
|
||||
var success = function(p){
|
||||
console.log("Location = "+p.coords.latitude+","+p.coords.longitude);
|
||||
window.location = "test://this_will_call_shouldOverrideUrlLoading";
|
||||
};
|
||||
|
||||
// Fail callback
|
||||
var fail = function(e){
|
||||
console.log("Error: "+e.code);
|
||||
};
|
||||
|
||||
// Get location
|
||||
navigator.geolocation.getCurrentPosition(success, fail, {enableHighAccuracy: true});
|
||||
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
Executable
+29
@@ -0,0 +1,29 @@
|
||||
<!DOCTYPE HTML>
|
||||
<html>
|
||||
<head>
|
||||
<meta name="viewport" content="width=320; user-scalable=no" />
|
||||
<meta http-equiv="Content-type" content="text/html; charset=utf-8">
|
||||
<title>Cordova Tests</title>
|
||||
<link rel="stylesheet" href="../master.css" type="text/css" media="screen" title="no title">
|
||||
<script type="text/javascript" charset="utf-8" src="../cordova.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="../main.js"></script>
|
||||
</head>
|
||||
<body onload="init();" id="stage" class="theme">
|
||||
<h1>Whitelist Page 1</h1>
|
||||
<div id="info">
|
||||
<h4>Platform: <span id="platform"> </span>, Version: <span id="version"> </span></h4>
|
||||
<h4>UUID: <span id="uuid"> </span>, Name: <span id="name"> </span></h4>
|
||||
<h4>Width: <span id="width"> </span>, Height: <span id="height">
|
||||
</span>, Color Depth: <span id="colorDepth"></span></h4>
|
||||
</div>
|
||||
<div id="info">
|
||||
Loading Page 2 should be successful.<br>
|
||||
Loading Page 3 should be in web browser.<br>
|
||||
Loading Page 2 with target=_blank should be in web browser? <br>
|
||||
(THIS DOESN'T HAPPEN.) https://issues.apache.org/jira/browse/CB-362
|
||||
</div>
|
||||
<a href="index2.html" class="btn large">Page 2</a>
|
||||
<a href="http://www.google.com" class="btn large">Page 3</a>
|
||||
<a href="index2.html" class="btn large" target="_blank">Page 2 with target=_blank</a>
|
||||
</body>
|
||||
</html>
|
||||
Executable
+23
@@ -0,0 +1,23 @@
|
||||
<!DOCTYPE HTML>
|
||||
<html>
|
||||
<head>
|
||||
<meta name="viewport" content="width=320; user-scalable=no" />
|
||||
<meta http-equiv="Content-type" content="text/html; charset=utf-8">
|
||||
<title>Cordova Tests</title>
|
||||
<link rel="stylesheet" href="../master.css" type="text/css" media="screen" title="no title">
|
||||
<script type="text/javascript" charset="utf-8" src="../cordova.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="../main.js"></script>
|
||||
</head>
|
||||
<body onload="init();" id="stage" class="theme">
|
||||
<h1>Whitelist Page 2</h1>
|
||||
<div id="info">
|
||||
<h4>Platform: <span id="platform"> </span>, Version: <span id="version"> </span></h4>
|
||||
<h4>UUID: <span id="uuid"> </span>, Name: <span id="name"> </span></h4>
|
||||
<h4>Width: <span id="width"> </span>, Height: <span id="height">
|
||||
</span>, Color Depth: <span id="colorDepth"></span></h4>
|
||||
</div>
|
||||
<div id="info">
|
||||
Press "backbutton"
|
||||
</div>
|
||||
</body>
|
||||
</html>
|
||||
Executable
+48
@@ -0,0 +1,48 @@
|
||||
<!DOCTYPE HTML>
|
||||
<html>
|
||||
<head>
|
||||
<meta name="viewport" content="width=320; user-scalable=no" />
|
||||
<meta http-equiv="Content-type" content="text/html; charset=utf-8">
|
||||
<title>Cordova Tests</title>
|
||||
<link rel="stylesheet" href="../master.css" type="text/css" media="screen" title="no title">
|
||||
<script type="text/javascript" charset="utf-8" src="../cordova.js"></script>
|
||||
<script type="text/javascript" charset="utf-8" src="../main.js"></script>
|
||||
<script>
|
||||
function XHR(url) {
|
||||
var xmlhttp = new XMLHttpRequest();
|
||||
xmlhttp.onreadystatechange=function(){
|
||||
if(xmlhttp.readyState === 4){
|
||||
// If success
|
||||
if (xmlhttp.status === 200) {
|
||||
alert("XHR success. Result="+xmlhttp.responseText);
|
||||
}
|
||||
// If error
|
||||
else {
|
||||
alert("XHR error. Status="+xmlhttp.status);
|
||||
}
|
||||
}
|
||||
};
|
||||
console.log("GET "+url);
|
||||
xmlhttp.open("GET", url , true);
|
||||
xmlhttp.send();
|
||||
}
|
||||
</script>
|
||||
</head>
|
||||
<body onload="init();" id="stage" class="theme">
|
||||
<h1>XHR</h1>
|
||||
<div id="info">
|
||||
<h4>Platform: <span id="platform"> </span>, Version: <span id="version"> </span></h4>
|
||||
<h4>UUID: <span id="uuid"> </span>, Name: <span id="name"> </span></h4>
|
||||
<h4>Width: <span id="width"> </span>, Height: <span id="height">
|
||||
</span>, Color Depth: <span id="colorDepth"></span></h4>
|
||||
</div>
|
||||
<div id="info">
|
||||
Press buttons below to test. You should see an alert with results displayed.
|
||||
</div>
|
||||
<a href="javascript:" class="btn large" onclick="XHR('file:///android_asset/www/xhr/index.html')">Load file://</a>
|
||||
<a href="javascript:" class="btn large" onclick="XHR('http://www.google.com');">Load Google</a>
|
||||
<!--
|
||||
<a href="javascript:" class="btn large" onclick="XHR('content://com.android.contacts/data/1');">Load content://</a>
|
||||
-->
|
||||
</body>
|
||||
</html>
|
||||
Reference in New Issue
Block a user