td1
This commit is contained in:
parent
ec451f8d50
commit
587f861a52
3
TD1/.idea/.gitignore
generated
vendored
Normal file
3
TD1/.idea/.gitignore
generated
vendored
Normal file
@ -0,0 +1,3 @@
|
||||
# Default ignored files
|
||||
/shelf/
|
||||
/workspace.xml
|
9
TD1/.idea/TD1.iml
generated
Normal file
9
TD1/.idea/TD1.iml
generated
Normal file
@ -0,0 +1,9 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<module type="JAVA_MODULE" version="4">
|
||||
<component name="NewModuleRootManager" inherit-compiler-output="true">
|
||||
<exclude-output />
|
||||
<content url="file://$MODULE_DIR$" />
|
||||
<orderEntry type="inheritedJdk" />
|
||||
<orderEntry type="sourceFolder" forTests="false" />
|
||||
</component>
|
||||
</module>
|
8
TD1/.idea/modules.xml
generated
Normal file
8
TD1/.idea/modules.xml
generated
Normal file
@ -0,0 +1,8 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="ProjectModuleManager">
|
||||
<modules>
|
||||
<module fileurl="file://$PROJECT_DIR$/.idea/TD1.iml" filepath="$PROJECT_DIR$/.idea/TD1.iml" />
|
||||
</modules>
|
||||
</component>
|
||||
</project>
|
6
TD1/.idea/vcs.xml
generated
Normal file
6
TD1/.idea/vcs.xml
generated
Normal file
@ -0,0 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="VcsDirectoryMappings">
|
||||
<mapping directory="$PROJECT_DIR$/.." vcs="Git" />
|
||||
</component>
|
||||
</project>
|
11
TD1/config.xml
Normal file
11
TD1/config.xml
Normal file
@ -0,0 +1,11 @@
|
||||
<?xml version='1.0' encoding='utf-8'?>
|
||||
<widget id="io.cordova.hellocordova" version="1.0.0" xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0">
|
||||
<name>HelloCordova</name>
|
||||
<description>Sample Apache Cordova App</description>
|
||||
<author email="dev@cordova.apache.org" href="https://cordova.apache.org">
|
||||
Apache Cordova Team
|
||||
</author>
|
||||
<content src="index.html" />
|
||||
<allow-intent href="http://*/*" />
|
||||
<allow-intent href="https://*/*" />
|
||||
</widget>
|
1039
TD1/package-lock.json
generated
Normal file
1039
TD1/package-lock.json
generated
Normal file
File diff suppressed because it is too large
Load Diff
33
TD1/package.json
Normal file
33
TD1/package.json
Normal file
@ -0,0 +1,33 @@
|
||||
{
|
||||
"name": "io.cordova.hellocordova",
|
||||
"displayName": "HelloCordova",
|
||||
"version": "1.0.0",
|
||||
"description": "A sample Apache Cordova application that responds to the deviceready event.",
|
||||
"main": "index.js",
|
||||
"scripts": {
|
||||
"test": "echo \"Error: no test specified\" && exit 1"
|
||||
},
|
||||
"keywords": [
|
||||
"ecosystem:cordova"
|
||||
],
|
||||
"author": "Apache Cordova Team",
|
||||
"license": "Apache-2.0",
|
||||
"devDependencies": {
|
||||
"cordova-android": "^10.1.2",
|
||||
"cordova-plugin-camera": "^6.0.0",
|
||||
"cordova-plugin-geolocation": "^4.1.0",
|
||||
"cordova-plugin-network-information": "^3.0.0"
|
||||
},
|
||||
"cordova": {
|
||||
"platforms": [
|
||||
"android"
|
||||
],
|
||||
"plugins": {
|
||||
"cordova-plugin-geolocation": {},
|
||||
"cordova-plugin-camera": {
|
||||
"ANDROIDX_CORE_VERSION": "1.6.+"
|
||||
},
|
||||
"cordova-plugin-network-information": {}
|
||||
}
|
||||
}
|
||||
}
|
7
TD1/www/css/bootstrap.min.css
vendored
Normal file
7
TD1/www/css/bootstrap.min.css
vendored
Normal file
File diff suppressed because one or more lines are too long
124
TD1/www/css/index.css
Normal file
124
TD1/www/css/index.css
Normal file
@ -0,0 +1,124 @@
|
||||
/*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one
|
||||
* or more contributor license agreements. See the NOTICE file
|
||||
* distributed with this work for additional information
|
||||
* regarding copyright ownership. The ASF licenses this file
|
||||
* to you under the Apache License, Version 2.0 (the
|
||||
* "License"); you may not use this file except in compliance
|
||||
* with the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing,
|
||||
* software distributed under the License is distributed on an
|
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
* KIND, either express or implied. See the License for the
|
||||
* specific language governing permissions and limitations
|
||||
* under the License.
|
||||
*/
|
||||
* {
|
||||
-webkit-tap-highlight-color: rgba(0,0,0,0); /* make transparent link selection, adjust last value opacity 0 to 1.0 */
|
||||
}
|
||||
|
||||
body {
|
||||
-webkit-touch-callout: none; /* prevent callout to copy image, etc when tap to hold */
|
||||
-webkit-text-size-adjust: none; /* prevent webkit from resizing text to fit */
|
||||
-webkit-user-select: none; /* prevent copy paste, to allow, change 'none' to 'text' */
|
||||
background-color:#E4E4E4;
|
||||
background-image:linear-gradient(to bottom, #A7A7A7 0%, #E4E4E4 51%);
|
||||
font-family: system-ui, -apple-system, -apple-system-font, 'Segoe UI', 'Roboto', sans-serif;
|
||||
font-size:12px;
|
||||
height:100vh;
|
||||
margin:0px;
|
||||
padding:0px;
|
||||
/* Padding to avoid the "unsafe" areas behind notches in the screen */
|
||||
padding: env(safe-area-inset-top, 0px) env(safe-area-inset-right, 0px) env(safe-area-inset-bottom, 0px) env(safe-area-inset-left, 0px);
|
||||
text-transform:uppercase;
|
||||
width:100%;
|
||||
}
|
||||
|
||||
/* Portrait layout (default) */
|
||||
.app {
|
||||
background:url(../img/logo.png) no-repeat center top; /* 170px x 200px */
|
||||
position:absolute; /* position in the center of the screen */
|
||||
left:50%;
|
||||
top:50%;
|
||||
height:50px; /* text area height */
|
||||
width:225px; /* text area width */
|
||||
text-align:center;
|
||||
padding:180px 0px 0px 0px; /* image height is 200px (bottom 20px are overlapped with text) */
|
||||
margin:-115px 0px 0px -112px; /* offset vertical: half of image height and text area height */
|
||||
/* offset horizontal: half of text area width */
|
||||
}
|
||||
|
||||
/* Landscape layout (with min-width) */
|
||||
@media screen and (min-aspect-ratio: 1/1) and (min-width:400px) {
|
||||
.app {
|
||||
background-position:left center;
|
||||
padding:75px 0px 75px 170px; /* padding-top + padding-bottom + text area = image height */
|
||||
margin:-90px 0px 0px -198px; /* offset vertical: half of image height */
|
||||
/* offset horizontal: half of image width and text area width */
|
||||
}
|
||||
}
|
||||
|
||||
h1 {
|
||||
font-size:24px;
|
||||
font-weight:normal;
|
||||
margin:0px;
|
||||
overflow:visible;
|
||||
padding:0px;
|
||||
text-align:center;
|
||||
}
|
||||
|
||||
.event {
|
||||
border-radius:4px;
|
||||
color:#FFFFFF;
|
||||
font-size:12px;
|
||||
margin:0px 30px;
|
||||
padding:2px 0px;
|
||||
}
|
||||
|
||||
.event.listening {
|
||||
background-color:#333333;
|
||||
display:block;
|
||||
}
|
||||
|
||||
.event.received {
|
||||
background-color:#4B946A;
|
||||
display:none;
|
||||
}
|
||||
|
||||
#deviceready.ready .event.listening { display: none; }
|
||||
#deviceready.ready .event.received { display: block; }
|
||||
|
||||
@keyframes fade {
|
||||
from { opacity: 1.0; }
|
||||
50% { opacity: 0.4; }
|
||||
to { opacity: 1.0; }
|
||||
}
|
||||
|
||||
.blink {
|
||||
animation:fade 3000ms infinite;
|
||||
-webkit-animation:fade 3000ms infinite;
|
||||
}
|
||||
|
||||
|
||||
@media screen and (prefers-color-scheme: dark) {
|
||||
body {
|
||||
background-image:linear-gradient(to bottom, #585858 0%, #1B1B1B 51%);
|
||||
}
|
||||
}
|
||||
|
||||
#aj {
|
||||
width: 50%;
|
||||
margin-bottom: 15px;
|
||||
}
|
||||
|
||||
#imgToReplace {
|
||||
margin-top: 20px;
|
||||
width: 50%;
|
||||
}
|
||||
|
||||
.btn {
|
||||
margin: 5px 0;
|
||||
}
|
BIN
TD1/www/img/aj.gif
Normal file
BIN
TD1/www/img/aj.gif
Normal file
Binary file not shown.
After Width: | Height: | Size: 684 KiB |
BIN
TD1/www/img/logo.png
Normal file
BIN
TD1/www/img/logo.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 21 KiB |
61
TD1/www/index.html
Normal file
61
TD1/www/index.html
Normal file
@ -0,0 +1,61 @@
|
||||
<!DOCTYPE html>
|
||||
<!--
|
||||
Licensed to the Apache Software Foundation (ASF) under one
|
||||
or more contributor license agreements. See the NOTICE file
|
||||
distributed with this work for additional information
|
||||
regarding copyright ownership. The ASF licenses this file
|
||||
to you under the Apache License, Version 2.0 (the
|
||||
"License"); you may not use this file except in compliance
|
||||
with the License. You may obtain a copy of the License at
|
||||
|
||||
http://www.apache.org/licenses/LICENSE-2.0
|
||||
|
||||
Unless required by applicable law or agreed to in writing,
|
||||
software distributed under the License is distributed on an
|
||||
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
KIND, either express or implied. See the License for the
|
||||
specific language governing permissions and limitations
|
||||
under the License.
|
||||
-->
|
||||
<html>
|
||||
<head>
|
||||
<meta charset="utf-8">
|
||||
<!--
|
||||
Customize this policy to fit your own app's needs. For more guidance, please refer to the docs:
|
||||
https://cordova.apache.org/docs/en/latest/
|
||||
Some notes:
|
||||
* https://ssl.gstatic.com is required only on Android and is needed for TalkBack to function properly
|
||||
* Disables use of inline scripts in order to mitigate risk of XSS vulnerabilities. To change this:
|
||||
* Enable inline JS: add 'unsafe-inline' to default-src
|
||||
-->
|
||||
<meta http-equiv="Content-Security-Policy" content="default-src 'self' data: https://ssl.gstatic.com 'unsafe-eval'; style-src 'self' 'unsafe-inline'; media-src *; img-src 'self' data: content:;">
|
||||
<meta name="format-detection" content="telephone=no">
|
||||
<meta name="msapplication-tap-highlight" content="no">
|
||||
<meta name="viewport" content="initial-scale=1, width=device-width, viewport-fit=cover">
|
||||
<meta name="color-scheme" content="light dark">
|
||||
<link rel="stylesheet" href="css/index.css">
|
||||
<link rel="stylesheet" href="css/bootstrap.min.css">
|
||||
<!-- JavaScript Bundle with Popper -->
|
||||
<script src="js/bootstrap.bundle.min.js"></script>
|
||||
<title>Hello World</title>
|
||||
</head>
|
||||
<body>
|
||||
<div>
|
||||
<h1>Applejack is best pony</h1>
|
||||
<div>
|
||||
<img src="./img/aj.gif" width="100%" alt="aj" id="aj" class="mx-auto d-block" />
|
||||
</div>
|
||||
<div class="content justify-content-center">
|
||||
<button class="btn btn-primary mx-auto d-block" id="takePicture">Camera</button>
|
||||
<button class="btn btn-secondary mx-auto d-block" id="getPosition">Position</button>
|
||||
<button class="btn btn-info mx-auto d-block" id="getCon">Est connecté ?</button>
|
||||
<div class="camera">
|
||||
<img src="" alt=" " class="mx-auto d-block" id="imgToReplace">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
<script src="cordova.js"></script>
|
||||
<script src="js/index.js"></script>
|
||||
</body>
|
||||
</html>
|
7
TD1/www/js/bootstrap.bundle.min.js
vendored
Normal file
7
TD1/www/js/bootstrap.bundle.min.js
vendored
Normal file
File diff suppressed because one or more lines are too long
101
TD1/www/js/index.js
Normal file
101
TD1/www/js/index.js
Normal file
@ -0,0 +1,101 @@
|
||||
/*
|
||||
* Licensed to the Apache Software Foundation (ASF) under one
|
||||
* or more contributor license agreements. See the NOTICE file
|
||||
* distributed with this work for additional information
|
||||
* regarding copyright ownership. The ASF licenses this file
|
||||
* to you under the Apache License, Version 2.0 (the
|
||||
* "License"); you may not use this file except in compliance
|
||||
* with the License. You may obtain a copy of the License at
|
||||
*
|
||||
* http://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing,
|
||||
* software distributed under the License is distributed on an
|
||||
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||
* KIND, either express or implied. See the License for the
|
||||
* specific language governing permissions and limitations
|
||||
* under the License.
|
||||
*/
|
||||
|
||||
// Wait for the deviceready event before using any of Cordova's device APIs.
|
||||
// See https://cordova.apache.org/docs/en/latest/cordova/events/events.html#deviceready
|
||||
document.addEventListener('deviceready', onDeviceReady, false);
|
||||
|
||||
function onDeviceReady() {
|
||||
// Cordova is now initialized. Have fun!
|
||||
|
||||
console.log('Running cordova-' + cordova.platformId + '@' + cordova.version);
|
||||
|
||||
document.getElementById("takePicture").addEventListener("click", (e) => {
|
||||
navigator.camera.getPicture(sucessCallbackImage,errorCallbackImage,{ quality: 50,
|
||||
destinationType: Camera.DestinationType.DATA_URL
|
||||
})
|
||||
});
|
||||
|
||||
document.getElementById("getPosition").addEventListener("click", (e) => {
|
||||
navigator.geolocation.watchPosition(sucessCallbackPos,errorCallbackPos,{})
|
||||
});
|
||||
|
||||
var networkState = navigator.connection.type;
|
||||
document.getElementById("getCon").addEventListener("click", (e) => {
|
||||
let con = navigator.connection.type;
|
||||
if(con == "none") {
|
||||
errorCallbackCon();
|
||||
} else {
|
||||
sucessCallbackCon();
|
||||
}
|
||||
});
|
||||
|
||||
document.addEventListener("offline", decoNet, false);
|
||||
}
|
||||
|
||||
|
||||
function sucessCallbackImage(imageData) {
|
||||
//alert("Zipp is best princess !");
|
||||
var image = document.getElementById('imgToReplace') ;
|
||||
image.src = "data:image/jpeg;base64," + imageData;
|
||||
|
||||
}
|
||||
|
||||
function errorCallbackImage() {
|
||||
alert("prout");
|
||||
}
|
||||
|
||||
function sucessCallbackPos(position) {
|
||||
alert('Latitude: ' + position.coords.latitude + '\n' +
|
||||
'Longitude: ' + position.coords.longitude + '\n' +
|
||||
'Altitude: ' + position.coords.altitude + '\n' +
|
||||
'Timestamp: ' + new Date(position.timestamp) + '\n');
|
||||
}
|
||||
|
||||
function errorCallbackPos() {
|
||||
alert("proutPos");
|
||||
}
|
||||
|
||||
function sucessCallbackCon() {
|
||||
alert("Equestria.social reachable !");
|
||||
let btn = document.getElementById('getCon');
|
||||
btn.innerHTML = "Equestria.social Online";
|
||||
btn.classList.remove("btn-info");
|
||||
btn.classList.add("btn-success");
|
||||
}
|
||||
|
||||
|
||||
function errorCallbackCon() {
|
||||
alert("Equestria.social unreachable !");
|
||||
let btn = document.getElementById('getCon');
|
||||
btn.innerHTML = "Equestria.social Offline";
|
||||
btn.classList.remove("btn-info");
|
||||
btn.classList.remove("btn-success");
|
||||
btn.classList.add("btn-danger");
|
||||
}
|
||||
|
||||
function decoNet() {
|
||||
alert("Equestria.social : lost connexion");
|
||||
let btn = document.getElementById('getCon');
|
||||
btn.innerHTML = "Equestria.social Offline (Lost Connexion)";
|
||||
btn.classList.remove("btn-info");
|
||||
btn.classList.remove("btn-success");
|
||||
btn.classList.add("btn-danger");
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user