nes-num lines-num-old"> 16
+        }
17
+    }
18
+    buildTypes {
19
+        release {
20
+            minifyEnabled false
21
+            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
22
+        }
23
+    }
24
+}
25
+
26
+repositories {
27
+    flatDir{
28
+        dirs '../capacitor-cordova-android-plugins/src/main/libs', 'libs'
29
+    }
30
+}
31
+
32
+dependencies {
33
+    implementation fileTree(include: ['*.jar'], dir: 'libs')
34
+    implementation "androidx.appcompat:appcompat:$androidxAppCompatVersion"
35
+    implementation project(':capacitor-android')
36
+    testImplementation "junit:junit:$junitVersion"
37
+    androidTestImplementation "androidx.test.ext:junit:$androidxJunitVersion"
38
+    androidTestImplementation "androidx.test.espresso:espresso-core:$androidxEspressoCoreVersion"
39
+    implementation project(':capacitor-cordova-android-plugins')
40
+}
41
+
42
+apply from: 'capacitor.build.gradle'
43
+
44
+try {
45
+    def servicesJSON = file('google-services.json')
46
+    if (servicesJSON.text) {
47
+        apply plugin: 'com.google.gms.google-services'
48
+    }
49
+} catch(Exception e) {
50
+    logger.warn("google-services.json not found, google-services plugin not applied. Push Notifications won't work")
51
+}

+ 22 - 0
android/app/capacitor.build.gradle

@@ -0,0 +1,22 @@
1
+// DO NOT EDIT THIS FILE! IT IS GENERATED EACH TIME "capacitor update" IS RUN
2
+
3
+android {
4
+  compileOptions {
5
+      sourceCompatibility JavaVersion.VERSION_1_8
6
+      targetCompatibility JavaVersion.VERSION_1_8
7
+  }
8
+}
9
+
10
+apply from: "../capacitor-cordova-android-plugins/cordova.variables.gradle"
11
+dependencies {
12
+    implementation project(':capacitor-app')
13
+    implementation project(':capacitor-haptics')
14
+    implementation project(':capacitor-keyboard')
15
+    implementation project(':capacitor-status-bar')
16
+    implementation "com.squareup.okhttp3:okhttp-urlconnection:3.10.0"
17
+}
18
+
19
+
20
+if (hasProperty('postBuildExtras')) {
21
+  postBuildExtras()
22
+}

+ 21 - 0
android/app/proguard-rules.pro

@@ -0,0 +1,21 @@
1
+# Add project specific ProGuard rules here.
2
+# You can control the set of applied configuration files using the
3
+# proguardFiles setting in build.gradle.
4
+#
5
+# For more details, see
6
+#   http://developer.android.com/guide/developing/tools/proguard.html
7
+
8
+# If your project uses WebView with JS, uncomment the following
9
+# and specify the fully qualified class name to the JavaScript interface
10
+# class:
11
+#-keepclassmembers class fqcn.of.javascript.interface.for.webview {
12
+#   public *;
13
+#}
14
+
15
+# Uncomment this to preserve the line number information for
16
+# debugging stack traces.
17
+#-keepattributes SourceFile,LineNumberTable
18
+
19
+# If you keep the line number information, uncomment this to
20
+# hide the original source file name.
21
+#-renamesourcefileattribute SourceFile

+ 26 - 0
android/app/src/androidTest/java/com/getcapacitor/myapp/ExampleInstrumentedTest.java

@@ -0,0 +1,26 @@
1
+package com.getcapacitor.myapp;
2
+
3
+import static org.junit.Assert.*;
4
+
5
+import android.content.Context;
6
+import androidx.test.ext.junit.runners.AndroidJUnit4;
7
+import androidx.test.platform.app.InstrumentationRegistry;
8
+import org.junit.Test;
9
+import org.junit.runner.RunWith;
10
+
11
+/**
12
+ * Instrumented test, which will execute on an Android device.
13
+ *
14
+ * @see <a href="http://d.android.com/tools/testing">Testing documentation</a>
15
+ */
16
+@RunWith(AndroidJUnit4.class)
17
+public class ExampleInstrumentedTest {
18
+
19
+    @Test
20
+    public void useAppContext() throws Exception {
21
+        // Context of the app under test.
22
+        Context appContext = InstrumentationRegistry.getInstrumentation().getTargetContext();
23
+
24
+        assertEquals("com.getcapacitor.app", appContext.getPackageName());
25
+    }
26
+}

+ 41 - 0
android/app/src/main/AndroidManifest.xml

@@ -0,0 +1,41 @@
1
+<?xml version="1.0" encoding="utf-8"?>
2
+<manifest xmlns:android="http://schemas.android.com/apk/res/android"
3
+    package="net.simplico.whitesports">
4
+
5
+    <application
6
+        android:allowBackup="true"
7
+        android:icon="@mipmap/ic_launcher"
8
+        android:label="@string/app_name"
9
+        android:roundIcon="@mipmap/ic_launcher_round"
10
+        android:supportsRtl="true"
11
+        android:theme="@style/AppTheme">
12
+
13
+        <activity
14
+            android:configChanges="orientation|keyboardHidden|keyboard|screenSize|locale|smallestScreenSize|screenLayout|uiMode"
15
+            android:name="net.simplico.whitesports.MainActivity"
16
+            android:label="@string/title_activity_main"
17
+            android:theme="@style/AppTheme.NoActionBarLaunch"
18
+            android:launchMode="singleTask">
19
+
20
+            <intent-filter>
21
+                <action android:name="android.intent.action.MAIN" />
22
+                <category android:name="android.intent.category.LAUNCHER" />
23
+            </intent-filter>
24
+
25
+        </activity>
26
+
27
+        <provider
28
+            android:name="androidx.core.content.FileProvider"
29
+            android:authorities="${applicationId}.fileprovider"
30
+            android:exported="false"
31
+            android:grantUriPermissions="true">
32
+            <meta-data
33
+                android:name="android.support.FILE_PROVIDER_PATHS"
34
+                android:resource="@xml/file_paths"></meta-data>
35
+        </provider>
36
+    </application>
37
+
38
+    <!-- Permissions -->
39
+
40
+    <uses-permission android:name="android.permission.INTERNET" />
41
+</manifest>

+ 19 - 0
android/app/src/main/assets/capacitor.config.json

@@ -0,0 +1,19 @@
1
+{
2
+	"appId": "io.ionic.starter",
3
+	"appName": "Stark",
4
+	"webDir": "www",
5
+	"bundledWebRuntime": false,
6
+	"cordova": {
7
+		"preferences": {
8
+			"ScrollEnabled": "false",
9
+			"android-minSdkVersion": "28",
10
+			"android-targetSdkVersion": "28",
11
+			"BackupWebStorage": "none",
12
+			"SplashMaintainAspectRatio": "true",
13
+			"FadeSplashScreenDuration": "300",
14
+			"SplashShowOnlyFirstTime": "false",
15
+			"SplashScreen": "screen",
16
+			"SplashScreenDelay": "3000"
17
+		}
18
+	}
19
+}

+ 18 - 0
android/app/src/main/assets/capacitor.plugins.json

@@ -0,0 +1,18 @@
1
+[
2
+	{
3
+		"pkg": "@capacitor/app",
4
+		"classpath": "com.capacitorjs.plugins.app.AppPlugin"
5
+	},
6
+	{
7
+		"pkg": "@capacitor/haptics",
8
+		"classpath": "com.capacitorjs.plugins.haptics.HapticsPlugin"
9
+	},
10
+	{
11
+		"pkg": "@capacitor/keyboard",
12
+		"classpath": "com.capacitorjs.plugins.keyboard.KeyboardPlugin"
13
+	},
14
+	{
15
+		"pkg": "@capacitor/status-bar",
16
+		"classpath": "com.capacitorjs.plugins.statusbar.StatusBarPlugin"
17
+	}
18
+]

+ 5 - 0
android/app/src/main/java/net/simplico/whitesports/MainActivity.java

@@ -0,0 +1,5 @@
1
+package net.simplico.whitesports;
2
+
3
+import com.getcapacitor.BridgeActivity;
4
+
5
+public class MainActivity extends BridgeActivity {}

二進制
android/app/src/main/res/drawable-land-hdpi/splash.png


二進制
android/app/src/main/res/drawable-land-mdpi/splash.png


二進制
android/app/src/main/res/drawable-land-xhdpi/splash.png


二進制
android/app/src/main/res/drawable-land-xxhdpi/splash.png


二進制
android/app/src/main/res/drawable-land-xxxhdpi/splash.png


二進制
android/app/src/main/res/drawable-port-hdpi/splash.png


二進制
android/app/src/main/res/drawable-port-mdpi/splash.png


二進制
android/app/src/main/res/drawable-port-xhdpi/splash.png


二進制
android/app/src/main/res/drawable-port-xxhdpi/splash.png


二進制
android/app/src/main/res/drawable-port-xxxhdpi/splash.png


File diff suppressed because it is too large
+ 34 - 0
android/app/src/main/res/drawable-v24/ic_launcher_foreground.xml


+ 170 - 0
android/app/src/main/res/drawable/ic_launcher_background.xml

@@ -0,0 +1,170 @@
1
+<?xml version="1.0" encoding="utf-8"?>
2
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
3
+    android:width="108dp"
4
+    android:height="108dp"
5
+    android:viewportHeight="108"
6
+    android:viewportWidth="108">
7
+    <path
8
+        android:fillColor="#26A69A"
9
+        android:pathData="M0,0h108v108h-108z" />
10
+    <path
11
+        android:fillColor="#00000000"
12
+        android:pathData="M9,0L9,108"
13
+        android:strokeColor="#33FFFFFF"
14
+        android:strokeWidth="0.8" />
15
+    <path
16
+        android:fillColor="#00000000"
17
+        android:pathData="M19,0L19,108"
18
+        android:strokeColor="#33FFFFFF"
19
+        android:strokeWidth="0.8" />
20
+    <path
21
+        android:fillColor="#00000000"
22
+        android:pathData="M29,0L29,108"
23
+        android:strokeColor="#33FFFFFF"
24
+        android:strokeWidth="0.8" />
25
+    <path
26
+        android:fillColor="#00000000"
27
+        android:pathData="M39,0L39,108"
28
+        android:strokeColor="#33FFFFFF"
29
+        android:strokeWidth="0.8" />
30
+    <path
31
+        android:fillColor="#00000000"
32
+        android:pathData="M49,0L49,108"
33
+        android:strokeColor="#33FFFFFF"
34
+        android:strokeWidth="0.8" />
35
+    <path
36
+        android:fillColor="#00000000"
37
+        android:pathData="M59,0L59,108"
38
+        android:strokeColor="#33FFFFFF"
39
+        android:strokeWidth="0.8" />
40
+    <path
41
+        android:fillColor="#00000000"
42
+        android:pathData="M69,0L69,108"
43
+        android:strokeColor="#33FFFFFF"
44
+        android:strokeWidth="0.8" />
45
+    <path
46
+        android:fillColor="#00000000"
47
+        android:pathData="M79,0L79,108"
48
+        android:strokeColor="#33FFFFFF"
49
+        android:strokeWidth="0.8" />
50
+    <path
51
+        android:fillColor="#00000000"
52
+        android:pathData="M89,0L89,108"
53
+        android:strokeColor="#33FFFFFF"
54
+        android:strokeWidth="0.8" />
55
+    <path
56
+        android:fillColor="#00000000"
57
+        android:pathData="M99,0L99,108"
58
+        android:strokeColor="#33FFFFFF"
59
+        android:strokeWidth="0.8" />
60
+    <path
61
+        android:fillColor="#00000000"
62
+        android:pathData="M0,9L108,9"
63
+        android:strokeColor="#33FFFFFF"
64
+        android:strokeWidth="0.8" />
65
+    <path
66
+        android:fillColor="#00000000"
67
+        android:pathData="M0,19L108,19"
68
+        android:strokeColor="#33FFFFFF"
69
+        android:strokeWidth="0.8" />
70
+    <path
71
+        android:fillColor="#00000000"
72
+        android:pathData="M0,29L108,29"
73
+        android:strokeColor="#33FFFFFF"
74
+        android:strokeWidth="0.8" />
75
+    <path
76
+        android:fillColor="#00000000"
77
+        android:pathData="M0,39L108,39"
78
+        android:strokeColor="#33FFFFFF"
79
+        android:strokeWidth="0.8" />
80
+    <path
81
+        android:fillColor="#00000000"
82
+        android:pathData="M0,49L108,49"
83
+        android:strokeColor="#33FFFFFF"
84
+        android:strokeWidth="0.8" />
85
+    <path
86
+        android:fillColor="#00000000"
87
+        android:pathData="M0,59L108,59"
88
+        android:strokeColor="#33FFFFFF"
89
+        android:strokeWidth="0.8" />
90
+    <path
91
+        android:fillColor="#00000000"
92
+        android:pathData="M0,69L108,69"
93
+        android:strokeColor="#33FFFFFF"
94
+        android:strokeWidth="0.8" />
95
+    <path
96
+        android:fillColor="#00000000"
97
+        android:pathData="M0,79L108,79"
98
+        android:strokeColor="#33FFFFFF"
99
+        android:strokeWidth="0.8" />
100
+    <path
101
+        android:fillColor="#00000000"
102
+        android:pathData="M0,89L108,89"
103
+        android:strokeColor="#33FFFFFF"
104
+        android:strokeWidth="0.8" />
105
+    <path
106
+        android:fillColor="#00000000"
107
+        android:pathData="M0,99L108,99"
108
+        android:strokeColor="#33FFFFFF"
109
+        android:strokeWidth="0.8" />
110
+    <path
111
+        android:fillColor="#00000000"
112
+        android:pathData="M19,29L89,29"
113
+        android:strokeColor="#33FFFFFF"
114
+        android:strokeWidth="0.8" />
115
+    <path
116
+        android:fillColor="#00000000"
117
+        android:pathData="M19,39L89,39"
118
+        android:strokeColor="#33FFFFFF"
119
+        android:strokeWidth="0.8" />
120
+    <path
121
+        android:fillColor="#00000000"
122
+        android:pathData="M19,49L89,49"
123
+        android:strokeColor="#33FFFFFF"
124
+        android:strokeWidth="0.8" />
125
+    <path
126
+        android:fillColor="#00000000"
127
+        android:pathData="M19,59L89,59"
128
+        android:strokeColor="#33FFFFFF"
129
+        android:strokeWidth="0.8" />
130
+    <path
131
+        android:fillColor="#00000000"
132
+        android:pathData="M19,69L89,69"
133
+        android:strokeColor="#33FFFFFF"
134
+        android:strokeWidth="0.8" />
135
+    <path
136
+        android:fillColor="#00000000"
137
+        android:pathData="M19,79L89,79"
138
+        android:strokeColor="#33FFFFFF"
139
+        android:strokeWidth="0.8" />
140
+    <path
141
+        android:fillColor="#00000000"
142
+        android:pathData="M29,19L29,89"
143
+        android:strokeColor="#33FFFFFF"
144
+        android:strokeWidth="0.8" />
145
+    <path
146
+        android:fillColor="#00000000"
147
+        android:pathData="M39,19L39,89"
148
+        android:strokeColor="#33FFFFFF"
149
+        android:strokeWidth="0.8" />
150
+    <path
151
+        android:fillColor="#00000000"
152
+        android:pathData="M49,19L49,89"
153
+        android:strokeColor="#33FFFFFF"
154
+        android:strokeWidth="0.8" />
155
+    <path
156
+        android:fillColor="#00000000"
157
+        android:pathData="M59,19L59,89"
158
+        android:strokeColor="#33FFFFFF"
159
+        android:strokeWidth="0.8" />
160
+    <path
161
+        android:fillColor="#00000000"
162
+        android:pathData="M69,19L69,89"
163
+        android:strokeColor="#33FFFFFF"
164
+        android:strokeWidth="0.8" />
165
+    <path
166
+        android:fillColor="#00000000"
167
+        android:pathData="M79,19L79,89"
168
+        android:strokeColor="#33FFFFFF"
169
+        android:strokeWidth="0.8" />
170
+</vector>

二進制
android/app/src/main/res/drawable/splash.png


+ 12 - 0
android/app/src/main/res/layout/activity_main.xml

@@ -0,0 +1,12 @@
1
+<?xml version="1.0" encoding="utf-8"?>
2
+<androidx.coordinatorlayout.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android"
3
+    xmlns:app="http://schemas.android.com/apk/res-auto"
4
+    xmlns:tools="http://schemas.android.com/tools"
5
+    android:layout_width="match_parent"
6
+    android:layout_height="match_parent"
7
+    tools:context=".MainActivity">
8
+
9
+    <WebView
10
+        android:layout_width="match_parent"
11
+        android:layout_height="match_parent" />
12
+</androidx.coordinatorlayout.widget.CoordinatorLayout>

+ 5 - 0
android/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml

@@ -0,0 +1,5 @@
1
+<?xml version="1.0" encoding="utf-8"?>
2
+<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
3
+    <background android:drawable="@color/ic_launcher_background"/>
4
+    <foreground android:drawable="@mipmap/ic_launcher_foreground"/>
5
+</adaptive-icon>

+ 5 - 0
android/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml

@@ -0,0 +1,5 @@
1
+<?xml version="1.0" encoding="utf-8"?>
2
+<adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
3
+    <background android:drawable="@color/ic_launcher_background"/>
4
+    <foreground android:drawable="@mipmap/ic_launcher_foreground"/>
5
+</adaptive-icon>

二進制
android/app/src/main/res/mipmap-hdpi/ic_launcher.png


二進制
android/app/src/main/res/mipmap-hdpi/ic_launcher_foreground.png


二進制
android/app/src/main/res/mipmap-hdpi/ic_launcher_round.png


二進制
android/app/src/main/res/mipmap-mdpi/ic_launcher.png


二進制
android/app/src/main/res/mipmap-mdpi/ic_launcher_foreground.png


二進制
android/app/src/main/res/mipmap-mdpi/ic_launcher_round.png


二進制
android/app/src/main/res/mipmap-xhdpi/ic_launcher.png


二進制
android/app/src/main/res/mipmap-xhdpi/ic_launcher_foreground.png


二進制
android/app/src/main/res/mipmap-xhdpi/ic_launcher_round.png


二進制
android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png


二進制
android/app/src/main/res/mipmap-xxhdpi/ic_launcher_foreground.png


二進制
android/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.png


二進制
android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.png


二進制
android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_foreground.png


二進制
android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.png


+ 4 - 0
android/app/src/main/res/values/ic_launcher_background.xml

@@ -0,0 +1,4 @@
1
+<?xml version="1.0" encoding="utf-8"?>
2
+<resources>
3
+    <color name="ic_launcher_background">#FFFFFF</color>
4
+</resources>

+ 7 - 0
android/app/src/main/res/values/strings.xml

@@ -0,0 +1,7 @@
1
+<?xml version='1.0' encoding='utf-8'?>
2
+<resources>
3
+    <string name="app_name">whitesports</string>
4
+    <string name="title_activity_main">whitesports</string>
5
+    <string name="package_name">net.simplico.whitesports</string>
6
+    <string name="custom_url_scheme">net.simplico.whitesports</string>
7
+</resources>

+ 22 - 0
android/app/src/main/res/values/styles.xml

@@ -0,0 +1,22 @@
1
+<?xml version="1.0" encoding="utf-8"?>
2
+<resources>
3
+
4
+    <!-- Base application theme. -->
5
+    <style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
6
+        <!-- Customize your theme here. -->
7
+        <item name="colorPrimary">@color/colorPrimary</item>
8
+        <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
9
+        <item name="colorAccent">@color/colorAccent</item>
10
+    </style>
11
+
12
+    <style name="AppTheme.NoActionBar" parent="Theme.AppCompat.NoActionBar">
13
+        <item name="windowActionBar">false</item>
14
+        <item name="windowNoTitle">true</item>
15
+        <item name="android:background">@null</item>
16
+    </style>
17
+
18
+
19
+    <style name="AppTheme.NoActionBarLaunch" parent="AppTheme.NoActionBar">
20
+        <item name="android:background">@drawable/splash</item>
21
+    </style>
22
+</resources>

+ 46 - 0
android/app/src/main/res/xml/config.xml

@@ -0,0 +1,46 @@
1
+<?xml version='1.0' encoding='utf-8'?>
2
+<widget version="1.0.0" xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0">
3
+  <access origin="*" />
4
+  
5
+  <feature name="CordovaHttpPlugin">
6
+    <param name="android-package" value="com.synconset.cordovahttp.CordovaHttpPlugin"/>
7
+  </feature>
8
+
9
+  <feature name="File">
10
+    <param name="android-package" value="org.apache.cordova.file.FileUtils"/>
11
+    <param name="onload" value="true"/>
12
+  </feature>
13
+
14
+  <feature name="NativeStorage">
15
+    <param name="android-package" value="NativeStorage"/>
16
+  </feature>
17
+
18
+  <feature name="Device">
19
+    <param name="android-package" value="org.apache.cordova.device.Device"/>
20
+  </feature>
21
+
22
+  <feature name="InAppBrowser">
23
+    <param name="android-package" value="org.apache.cordova.inappbrowser.InAppBrowser"/>
24
+  </feature>
25
+
26
+  <feature name="UserAgent">
27
+    <param name="android-package" value="im.ltdev.cordova.UserAgent"/>
28
+    <param name="onload" value="true"/>
29
+  </feature>
30
+
31
+  <feature name="Whitelist">
32
+    <param name="android-package" value="org.apache.cordova.whitelist.WhitelistPlugin"/>
33
+    <param name="onload" value="true"/>
34
+  </feature>
35
+
36
+  
37
+  <preference name="ScrollEnabled" value="false" />
38
+  <preference name="android-minSdkVersion" value="28" />
39
+  <preference name="android-targetSdkVersion" value="28" />
40
+  <preference name="BackupWebStorage" value="none" />
41
+  <preference name="SplashMaintainAspectRatio" value="true" />
42
+  <preference name="FadeSplashScreenDuration" value="300" />
43
+  <preference name="SplashShowOnlyFirstTime" value="false" />
44
+  <preference name="SplashScreen" value="screen" />
45
+  <preference name="SplashScreenDelay" value="3000" />
46
+</widget>

+ 5 - 0
android/app/src/main/res/xml/file_paths.xml

@@ -0,0 +1,5 @@
1
+<?xml version="1.0" encoding="utf-8"?>
2
+<paths xmlns:android="http://schemas.android.com/apk/res/android">
3
+    <external-path name="my_images" path="." />
4
+    <cache-path name="my_cache_images" path="." />
5
+</paths>

+ 18 - 0
android/app/src/test/java/com/getcapacitor/myapp/ExampleUnitTest.java

@@ -0,0 +1,18 @@
1
+package com.getcapacitor.myapp;
2
+
3
+import static org.junit.Assert.*;
4
+
5
+import org.junit.Test;
6
+
7
+/**
8
+ * Example local unit test, which will execute on the development machine (host).
9
+ *
10
+ * @see <a href="http://d.android.com/tools/testing">Testing documentation</a>
11
+ */
12
+public class ExampleUnitTest {
13
+
14
+    @Test
15
+    public void addition_isCorrect() throws Exception {
16
+        assertEquals(4, 2 + 2);
17
+    }
18
+}

+ 29 - 0
android/build.gradle

@@ -0,0 +1,29 @@
1
+// Top-level build file where you can add configuration options common to all sub-projects/modules.
2
+
3
+buildscript {
4
+    
5
+    repositories {
6
+        google()
7
+        jcenter()
8
+    }
9
+    dependencies {
10
+        classpath 'com.android.tools.build:gradle:4.2.1'
11
+        classpath 'com.google.gms:google-services:4.3.5'
12
+
13
+        // NOTE: Do not place your application dependencies here; they belong
14
+        // in the individual module build.gradle files
15
+    }
16
+}
17
+
18
+apply from: "variables.gradle"
19
+
20
+allprojects {
21
+    repositories {
22
+        google()
23
+        jcenter()
24
+    }
25
+}
26
+
27
+task clean(type: Delete) {
28
+    delete rootProject.buildDir
29
+}

+ 15 - 0
android/capacitor.settings.gradle

@@ -0,0 +1,15 @@
1
+// DO NOT EDIT THIS FILE! IT IS GENERATED EACH TIME "capacitor update" IS RUN
2
+include ':capacitor-android'
3
+project(':capacitor-android').projectDir = new File('../node_modules/@capacitor/android/capacitor')
4
+
5
+include ':capacitor-app'
6
+project(':capacitor-app').projectDir = new File('../node_modules/@capacitor/app/android')
7
+
8
+include ':capacitor-haptics'
9
+project(':capacitor-haptics').projectDir = new File('../node_modules/@capacitor/haptics/android')
10
+
11
+include ':capacitor-keyboard'
12
+project(':capacitor-keyboard').projectDir = new File('../node_modules/@capacitor/keyboard/android')
13
+
14
+include ':capacitor-status-bar'
15
+project(':capacitor-status-bar').projectDir = new File('../node_modules/@capacitor/status-bar/android')

+ 24 - 0
android/gradle.properties

@@ -0,0 +1,24 @@
1
+# Project-wide Gradle settings.
2
+
3
+# IDE (e.g. Android Studio) users:
4
+# Gradle settings configured through the IDE *will override*
5
+# any settings specified in this file.
6
+
7
+# For more details on how to configure your build environment visit
8
+# http://www.gradle.org/docs/current/userguide/build_environment.html
9
+
10
+# Specifies the JVM arguments used for the daemon process.
11
+# The setting is particularly useful for tweaking memory settings.
12
+org.gradle.jvmargs=-Xmx1536m
13
+
14
+# When configured, Gradle will run in incubating parallel mode.
15
+# This option should only be used with decoupled projects. More details, visit
16
+# http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects
17
+# org.gradle.parallel=true
18
+
19
+# AndroidX package structure to make it clearer which packages are bundled with the
20
+# Android operating system, and which are packaged with your app's APK
21
+# https://developer.android.com/topic/libraries/support-library/androidx-rn
22
+android.useAndroidX=true
23
+# Automatically convert third-party libraries to use AndroidX
24
+android.enableJetifier=true

二進制
android/gradle/wrapper/gradle-wrapper.jar


+ 5 - 0
android/gradle/wrapper/gradle-wrapper.properties

@@ -0,0 +1,5 @@
1
+distributionBase=GRADLE_USER_HOME
2
+distributionPath=wrapper/dists
3
+distributionUrl=https\://services.gradle.org/distributions/gradle-7.0-all.zip
4
+zipStoreBase=GRADLE_USER_HOME
5
+zipStorePath=wrapper/dists

+ 185 - 0
android/gradlew

@@ -0,0 +1,185 @@
1
+#!/usr/bin/env sh
2
+
3
+#
4
+# Copyright 2015 the original author or authors.
5
+#
6
+# Licensed under the Apache License, Version 2.0 (the "License");
7
+# you may not use this file except in compliance with the License.
8
+# You may obtain a copy of the License at
9
+#
10
+#      https://www.apache.org/licenses/LICENSE-2.0
11
+#
12
+# Unless required by applicable law or agreed to in writing, software
13
+# distributed under the License is distributed on an "AS IS" BASIS,
14
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15
+# See the License for the specific language governing permissions and
16
+# limitations under the License.
17
+#
18
+
19
+##############################################################################
20
+##
21
+##  Gradle start up script for UN*X
22
+##
23
+##############################################################################
24
+
25
+# Attempt to set APP_HOME
26
+# Resolve links: $0 may be a link
27
+PRG="$0"
28
+# Need this for relative symlinks.
29
+while [ -h "$PRG" ] ; do
30
+    ls=`ls -ld "$PRG"`
31
+    link=`expr "$ls" : '.*-> \(.*\)$'`
32
+    if expr "$link" : '/.*' > /dev/null; then
33
+        PRG="$link"
34
+    else
35
+        PRG=`dirname "$PRG"`"/$link"
36
+    fi
37
+done
38
+SAVED="`pwd`"
39
+cd "`dirname \"$PRG\"`/" >/dev/null
40
+APP_HOME="`pwd -P`"
41
+cd "$SAVED" >/dev/null
42
+
43
+APP_NAME="Gradle"
44
+APP_BASE_NAME=`basename "$0"`
45
+
46
+# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
47
+DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"'
48
+
49
+# Use the maximum available, or set MAX_FD != -1 to use that value.
50
+MAX_FD="maximum"
51
+
52
+warn () {
53
+    echo "$*"
54
+}
55
+
56
+die () {
57
+    echo
58
+    echo "$*"
59
+    echo
60
+    exit 1
61
+}
62
+
63
+# OS specific support (must be 'true' or 'false').
64
+cygwin=false
65
+msys=false
66
+darwin=false
67
+nonstop=false
68
+case "`uname`" in
69
+  CYGWIN* )
70
+    cygwin=true
71
+    ;;
72
+  Darwin* )
73
+    darwin=true
74
+    ;;
75
+  MINGW* )
76
+    msys=true
77
+    ;;
78
+  NONSTOP* )
79
+    nonstop=true
80
+    ;;
81
+esac
82
+
83
+CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar
84
+
85
+
86
+# Determine the Java command to use to start the JVM.
87
+if [ -n "$JAVA_HOME" ] ; then
88
+    if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
89
+        # IBM's JDK on AIX uses strange locations for the executables
90
+        JAVACMD="$JAVA_HOME/jre/sh/java"
91
+    else
92
+        JAVACMD="$JAVA_HOME/bin/java"
93
+    fi
94
+    if [ ! -x "$JAVACMD" ] ; then
95
+        die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME
96
+
97
+Please set the JAVA_HOME variable in your environment to match the
98
+location of your Java installation."
99
+    fi
100
+else
101
+    JAVACMD="java"
102
+    which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
103
+
104
+Please set the JAVA_HOME variable in your environment to match the
105
+location of your Java installation."
106
+fi
107
+
108
+# Increase the maximum file descriptors if we can.
109
+if [ "$cygwin" = "false" -a "$darwin" = "false" -a "$nonstop" = "false" ] ; then
110
+    MAX_FD_LIMIT=`ulimit -H -n`
111
+    if [ $? -eq 0 ] ; then
112
+        if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then
113
+            MAX_FD="$MAX_FD_LIMIT"
114
+        fi
115
+        ulimit -n $MAX_FD
116
+        if [ $? -ne 0 ] ; then
117
+            warn "Could not set maximum file descriptor limit: $MAX_FD"
118
+        fi
119
+    else
120
+        warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT"
121
+    fi
122
+fi
123
+
124
+# For Darwin, add options to specify how the application appears in the dock
125
+if $darwin; then
126
+    GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\""
127
+fi
128
+
129
+# For Cygwin or MSYS, switch paths to Windows format before running java
130
+if [ "$cygwin" = "true" -o "$msys" = "true" ] ; then
131
+    APP_HOME=`cygpath --path --mixed "$APP_HOME"`
132
+    CLASSPATH=`cygpath --path --mixed "$CLASSPATH"`
133
+
134
+    JAVACMD=`cygpath --unix "$JAVACMD"`
135
+
136
+    # We build the pattern for arguments to be converted via cygpath
137
+    ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null`
138
+    SEP=""
139
+    for dir in $ROOTDIRSRAW ; do
140
+        ROOTDIRS="$ROOTDIRS$SEP$dir"
141
+        SEP="|"
142
+    done
143
+    OURCYGPATTERN="(^($ROOTDIRS))"
144
+    # Add a user-defined pattern to the cygpath arguments
145
+    if [ "$GRADLE_CYGPATTERN" != "" ] ; then
146
+        OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)"
147
+    fi
148
+    # Now convert the arguments - kludge to limit ourselves to /bin/sh
149
+    i=0
150
+    for arg in "$@" ; do
151
+        CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -`
152
+        CHECK2=`echo "$arg"|egrep -c "^-"`                                 ### Determine if an option
153
+
154
+        if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then                    ### Added a condition
155
+            eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"`
156
+        else
157
+            eval `echo args$i`="\"$arg\""
158
+        fi
159
+        i=`expr $i + 1`
160
+    done
161
+    case $i in
162
+        0) set -- ;;
163
+        1) set -- "$args0" ;;
164
+        2) set -- "$args0" "$args1" ;;
165
+        3) set -- "$args0" "$args1" "$args2" ;;
166
+        4) set -- "$args0" "$args1" "$args2" "$args3" ;;
167
+        5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;;
168
+        6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;;
169
+        7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;;
170
+        8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;;
171
+        9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;;
172
+    esac
173
+fi
174
+
175
+# Escape application args
176
+save () {
177
+    for i do printf %s\\n "$i" | sed "s/'/'\\\\''/g;1s/^/'/;\$s/\$/' \\\\/" ; done
178
+    echo " "
179
+}
180
+APP_ARGS=`save "$@"`
181
+
182
+# Collect all arguments for the java command, following the shell quoting and substitution rules
183
+eval set -- $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS "\"-Dorg.gradle.appname=$APP_BASE_NAME\"" -classpath "\"$CLASSPATH\"" org.gradle.wrapper.GradleWrapperMain "$APP_ARGS"
184
+
185
+exec "$JAVACMD" "$@"

+ 89 - 0
android/gradlew.bat

@@ -0,0 +1,89 @@
1
+@rem
2
+@rem Copyright 2015 the original author or authors.
3
+@rem
4
+@rem Licensed under the Apache License, Version 2.0 (the "License");
5
+@rem you may not use this file except in compliance with the License.
6
+@rem You may obtain a copy of the License at
7
+@rem
8
+@rem      https://www.apache.org/licenses/LICENSE-2.0
9
+@rem
10
+@rem Unless required by applicable law or agreed to in writing, software
11
+@rem distributed under the License is distributed on an "AS IS" BASIS,
12
+@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
+@rem See the License for the specific language governing permissions and
14
+@rem limitations under the License.
15
+@rem
16
+
17
+@if "%DEBUG%" == "" @echo off
18
+@rem ##########################################################################
19
+@rem
20
+@rem  Gradle startup script for Windows
21
+@rem
22
+@rem ##########################################################################
23
+
24
+@rem Set local scope for the variables with windows NT shell
25
+if "%OS%"=="Windows_NT" setlocal
26
+
27
+set DIRNAME=%~dp0
28
+if "%DIRNAME%" == "" set DIRNAME=.
29
+set APP_BASE_NAME=%~n0
30
+set APP_HOME=%DIRNAME%
31
+
32
+@rem Resolve any "." and ".." in APP_HOME to make it shorter.
33
+for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi
34
+
35
+@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
36
+set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m"
37
+
38
+@rem Find java.exe
39
+if defined JAVA_HOME goto findJavaFromJavaHome
40
+
41
+set JAVA_EXE=java.exe
42
+%JAVA_EXE% -version >NUL 2>&1
43
+if "%ERRORLEVEL%" == "0" goto execute
44
+
45
+echo.
46
+echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
47
+echo.
48
+echo Please set the JAVA_HOME variable in your environment to match the
49
+echo location of your Java installation.
50
+
51
+goto fail
52
+
53
+:findJavaFromJavaHome
54
+set JAVA_HOME=%JAVA_HOME:"=%
55
+set JAVA_EXE=%JAVA_HOME%/bin/java.exe
56
+
57
+if exist "%JAVA_EXE%" goto execute
58
+
59
+echo.
60
+echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME%
61
+echo.
62
+echo Please set the JAVA_HOME variable in your environment to match the
63
+echo location of your Java installation.
64
+
65
+goto fail
66
+
67
+:execute
68
+@rem Setup the command line
69
+
70
+set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar
71
+
72
+
73
+@rem Execute Gradle
74
+"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %*
75
+
76
+:end
77
+@rem End local scope for the variables with windows NT shell
78
+if "%ERRORLEVEL%"=="0" goto mainEnd
79
+
80
+:fail
81
+rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of
82
+rem the _cmd.exe /c_ return code!
83
+if  not "" == "%GRADLE_EXIT_CONSOLE%" exit 1
84
+exit /b 1
85
+
86
+:mainEnd
87
+if "%OS%"=="Windows_NT" endlocal
88
+
89
+:omega

+ 5 - 0
android/settings.gradle

@@ -0,0 +1,5 @@
1
+include ':app'
2
+include ':capacitor-cordova-android-plugins'
3
+project(':capacitor-cordova-android-plugins').projectDir = new File('./capacitor-cordova-android-plugins/')
4
+
5
+apply from: 'capacitor.settings.gradle'

+ 14 - 0
android/variables.gradle

@@ -0,0 +1,14 @@
1
+ext {
2
+    minSdkVersion = 21
3
+    compileSdkVersion = 30
4
+    targetSdkVersion = 30
5
+    androidxActivityVersion = '1.2.0'
6
+    androidxAppCompatVersion = '1.2.0'
7
+    androidxCoordinatorLayoutVersion = '1.1.0'
8
+    androidxCoreVersion = '1.3.2'
9
+    androidxFragmentVersion = '1.3.0'
10
+    junitVersion = '4.13.1'
11
+    androidxJunitVersion = '1.1.2'
12
+    androidxEspressoCoreVersion = '3.3.0'
13
+    cordovaAndroidVersion = '7.0.0'
14
+}

+ 23 - 0
capacitor.config.ts

@@ -0,0 +1,23 @@
1
+import { CapacitorConfig } from '@capacitor/cli';
2
+
3
+const config: CapacitorConfig = {
4
+  appId: 'io.ionic.starter',
5
+  appName: 'Stark',
6
+  webDir: 'www',
7
+  bundledWebRuntime: false,
8
+  cordova: {
9
+    preferences: {
10
+      ScrollEnabled: 'false',
11
+      'android-minSdkVersion': '28',
12
+      'android-targetSdkVersion': '28',
13
+      BackupWebStorage: 'none',
14
+      SplashMaintainAspectRatio: 'true',
15
+      FadeSplashScreenDuration: '300',
16
+      SplashShowOnlyFirstTime: 'false',
17
+      SplashScreen: 'screen',
18
+      SplashScreenDelay: '3000'
19
+    }
20
+  }
21
+};
22
+
23
+export default config;

+ 143 - 0
config.xml

@@ -0,0 +1,143 @@
1
+<?xml version='1.0' encoding='utf-8'?>
2
+<widget id="net.simplico.whitesports" version="0.1.3" xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0">
3
+    <name>White Sports</name>
4
+    <description>Burn More, Get More</description>
5
+    <author email="patumos@gmail.com" href="http://www.simplico.net/">Suebpong Sittimalairut</author>
6
+    <content src="index.html" />
7
+    <access origin="*" />
8
+    <allow-intent href="http://*/*" />
9
+    <allow-intent href="https://*/*" />
10
+    <allow-intent href="tel:*" />
11
+    <allow-intent href="sms:*" />
12
+    <allow-intent href="mailto:*" />
13
+    <allow-intent href="geo:*" />
14
+    <allow-intent href="line://*/*" />
15
+    <preference name="ScrollEnabled" value="false" />
16
+    <preference name="android-minSdkVersion" value="28" />
17
+    <preference name="android-targetSdkVersion" value="28" />
18
+    <preference name="BackupWebStorage" value="none" />
19
+    <preference name="SplashMaintainAspectRatio" value="true" />
20
+    <preference name="FadeSplashScreenDuration" value="300" />
21
+    <preference name="SplashShowOnlyFirstTime" value="false" />
22
+    <preference name="SplashScreen" value="screen" />
23
+    <preference name="SplashScreenDelay" value="3000" />
24
+    <platform name="android">
25
+        <allow-intent href="market:*" />
26
+        <icon density="ldpi" src="resources/android/icon/drawable-ldpi-icon.png" />
27
+        <icon density="mdpi" src="resources/android/icon/drawable-mdpi-icon.png" />
28
+        <icon density="hdpi" src="resources/android/icon/drawable-hdpi-icon.png" />
29
+        <icon density="xhdpi" src="resources/android/icon/drawable-xhdpi-icon.png" />
30
+        <icon density="xxhdpi" src="resources/android/icon/drawable-xxhdpi-icon.png" />
31
+        <icon density="xxxhdpi" src="resources/android/icon/drawable-xxxhdpi-icon.png" />
32
+        <splash density="land-ldpi" src="resources/android/splash/drawable-land-ldpi-screen.png" />
33
+        <splash density="land-mdpi" src="resources/android/splash/drawable-land-mdpi-screen.png" />
34
+        <splash density="land-hdpi" src="resources/android/splash/drawable-land-hdpi-screen.png" />
35
+        <splash density="land-xhdpi" src="resources/android/splash/drawable-land-xhdpi-screen.png" />
36
+        <splash density="land-xxhdpi" src="resources/android/splash/drawable-land-xxhdpi-screen.png" />
37
+        <splash density="land-xxxhdpi" src="resources/android/splash/drawable-land-xxxhdpi-screen.png" />
38
+        <splash density="port-ldpi" src="resources/android/splash/drawable-port-ldpi-screen.png" />
39
+        <splash density="port-mdpi" src="resources/android/splash/drawable-port-mdpi-screen.png" />
40
+        <splash density="port-hdpi" src="resources/android/splash/drawable-port-hdpi-screen.png" />
41
+        <splash density="port-xhdpi" src="resources/android/splash/drawable-port-xhdpi-screen.png" />
42
+        <splash density="port-xxhdpi" src="resources/android/splash/drawable-port-xxhdpi-screen.png" />
43
+        <splash density="port-xxxhdpi" src="resources/android/splash/drawable-port-xxxhdpi-screen.png" />
44
+    </platform>
45
+    <platform name="ios">
46
+        <allow-intent href="itms:*" />
47
+        <allow-intent href="itms-apps:*" />
48
+        <icon height="57" src="resources/ios/icon/icon.png" width="57" />
49
+        <icon height="114" src="resources/ios/icon/icon@2x.png" width="114" />
50
+        <icon height="40" src="resources/ios/icon/icon-40.png" width="40" />
51
+        <icon height="80" src="resources/ios/icon/icon-40@2x.png" width="80" />
52
+        <icon height="120" src="resources/ios/icon/icon-40@3x.png" width="120" />
53
+        <icon height="50" src="resources/ios/icon/icon-50.png" width="50" />
54
+        <icon height="100" src="resources/ios/icon/icon-50@2x.png" width="100" />
55
+        <icon height="60" src="resources/ios/icon/icon-60.png" width="60" />
56
+        <icon height="120" src="resources/ios/icon/icon-60@2x.png" width="120" />
57
+        <icon height="180" src="resources/ios/icon/icon-60@3x.png" width="180" />
58
+        <icon height="72" src="resources/ios/icon/icon-72.png" width="72" />
59
+        <icon height="144" src="resources/ios/icon/icon-72@2x.png" width="144" />
60
+        <icon height="76" src="resources/ios/icon/icon-76.png" width="76" />
61
+        <icon height="152" src="resources/ios/icon/icon-76@2x.png" width="152" />
62
+        <icon height="167" src="resources/ios/icon/icon-83.5@2x.png" width="167" />
63
+        <icon height="29" src="resources/ios/icon/icon-small.png" width="29" />
64
+        <icon height="58" src="resources/ios/icon/icon-small@2x.png" width="58" />
65
+        <icon height="87" src="resources/ios/icon/icon-small@3x.png" width="87" />
66
+        <icon height="1024" src="resources/ios/icon/icon-1024.png" width="1024" />
67
+        <splash height="1136" src="resources/ios/splash/Default-568h@2x~iphone.png" width="640" />
68
+        <splash height="1334" src="resources/ios/splash/Default-667h.png" width="750" />
69
+        <splash height="2208" src="resources/ios/splash/Default-736h.png" width="1242" />
70
+        <splash height="1242" src="resources/ios/splash/Default-Landscape-736h.png" width="2208" />
71
+        <splash height="1536" src="resources/ios/splash/Default-Landscape@2x~ipad.png" width="2048" />
72
+        <splash height="2048" src="resources/ios/splash/Default-Landscape@~ipadpro.png" width="2732" />
73
+        <splash height="768" src="resources/ios/splash/Default-Landscape~ipad.png" width="1024" />
74
+        <splash height="2048" src="resources/ios/splash/Default-Portrait@2x~ipad.png" width="1536" />
75
+        <splash height="2732" src="resources/ios/splash/Default-Portrait@~ipadpro.png" width="2048" />
76
+        <splash height="1024" src="resources/ios/splash/Default-Portrait~ipad.png" width="768" />
77
+        <splash height="960" src="resources/ios/splash/Default@2x~iphone.png" width="640" />
78
+        <splash height="480" src="resources/ios/splash/Default~iphone.png" width="320" />
79
+        <splash height="2732" src="resources/ios/splash/Default@2x~universal~anyany.png" width="2732" />
80
+        <icon height="20" src="resources/ios/icon/icon-20.png" width="20" />
81
+        <icon height="40" src="resources/ios/icon/icon-20@2x.png" width="40" />
82
+        <icon height="60" src="resources/ios/icon/icon-20@3x.png" width="60" />
83
+        <icon height="29" src="resources/ios/icon/icon-29.png" width="29" />
84
+        <icon height="58" src="resources/ios/icon/icon-29@2x.png" width="58" />
85
+        <icon height="87" src="resources/ios/icon/icon-29@3x.png" width="87" />
86
+        <icon height="48" src="resources/ios/icon/icon-24@2x.png" width="48" />
87
+        <icon height="55" src="resources/ios/icon/icon-27.5@2x.png" width="55" />
88
+        <icon height="88" src="resources/ios/icon/icon-44@2x.png" width="88" />
89
+        <icon height="172" src="resources/ios/icon/icon-86@2x.png" width="172" />
90
+        <icon height="196" src="resources/ios/icon/icon-98@2x.png" width="196" />
91
+        <icon height="216" src="resources/ios/icon/icon-108@2x.png" width="216" />
92
+        <splash height="2688" src="resources/ios/splash/Default-2688h~iphone.png" width="1242" />
93
+        <splash height="1242" src="resources/ios/splash/Default-Landscape-2688h~iphone.png" width="2688" />
94
+        <splash height="1792" src="resources/ios/splash/Default-1792h~iphone.png" width="828" />
95
+        <splash height="828" src="resources/ios/splash/Default-Landscape-1792h~iphone.png" width="1792" />
96
+        <splash height="2436" src="resources/ios/splash/Default-2436h.png" width="1125" />
97
+        <splash height="1125" src="resources/ios/splash/Default-Landscape-2436h.png" width="2436" />
98
+    </platform>
99
+    <allow-navigation href="http://10.107.171.102:8100" />
100
+    <allow-navigation href="http://192.168.1.39:8100" />
101
+    <allow-navigation href="http://10.107.148.35:8100" />
102
+    <allow-navigation href="http://10.107.148.35:8101" />
103
+    <allow-navigation href="http://203.159.50.9:8100" />
104
+    <allow-navigation href="http://203.159.50.9:8102" />
105
+    <allow-navigation href="http://192.168.1.120:8100" />
106
+    <allow-navigation href="http://10.101.132.38:8100" />
107
+    <allow-navigation href="http://172.20.10.3:8100" />
108
+    <allow-navigation href="http://192.168.1.25:8100" />
109
+    <allow-navigation href="http://10.104.141.236:8100" />
110
+    <allow-navigation href="http://192.168.1.35:8100" />
111
+    <allow-navigation href="http://10.107.187.12:8100" />
112
+    <allow-navigation href="http://10.115.171.197:8100" />
113
+    <allow-navigation href="http://203.159.50.212:8100" />
114
+    <allow-navigation href="http://10.101.159.161:8100" />
115
+    <allow-navigation href="http://169.254.91.222:8100" />
116
+    <allow-navigation href="http://169.254.152.237:8100" />
117
+    <allow-navigation href="http://169.254.163.68:8100" />
118
+    <allow-navigation href="http://192.168.1.122:8100" />
119
+    <allow-navigation href="http://203.159.50.59:8100" />
120
+    <allow-navigation href="http://10.107.149.166:8100" />
121
+    <allow-navigation href="http://203.159.50.236:8100" />
122
+    <allow-navigation href="http://10.107.179.120:8100" />
123
+    <allow-navigation href="http://192.168.1.35:8101" />
124
+    <allow-navigation href="http://10.107.173.42:8100" />
125
+    <allow-navigation href="http://10.107.183.33:8100" />
126
+    <allow-navigation href="http://203.159.52.24:8100" />
127
+    <allow-navigation href="http://10.107.187.173:8100" />
128
+    <allow-navigation href="http://203.159.52.240:8100" />
129
+    <allow-navigation href="http://10.57.107.67:8100" />
130
+    <allow-navigation href="http://10.107.175.185:8100" />
131
+    <allow-navigation href="http://10.43.1.33:8100" />
132
+    <plugin name="cordova-plugin-whitelist" spec="~1.3.3" />
133
+    <plugin name="cordova-plugin-device" spec="^2.0.2" />
134
+    <plugin name="cordova-plugin-splashscreen" spec="~5.0.2" />
135
+    <plugin name="cordova-plugin-ionic-keyboard" spec="~2.0.5" />
136
+    <plugin name="cordova-plugin-inappbrowser" spec="~3.0.0" />
137
+    <plugin name="cordova-plugin-nativestorage" spec="~2.3.1" />
138
+    <plugin name="cordova-plugin-x-socialsharing" spec="~5.4.0" />
139
+    <plugin name="cordova-plugin-advanced-http" spec="~1.11.1" />
140
+    <allow-navigation href="http://10.107.138.80:8100" />
141
+    <allow-navigation href="http://203.159.52.44:8100" />
142
+    <allow-navigation href="http://203.159.52.32:8100" />
143
+</widget>

+ 8 - 0
ionic.config.json

@@ -0,0 +1,8 @@
1
+{
2
+  "name": "Stark",
3
+  "integrations": {
4
+    "cordova": {},
5
+    "capacitor": {}
6
+  },
7
+  "type": "ionic-angular"
8
+}

File diff suppressed because it is too large
+ 9066 - 0
package-lock.json


+ 93 - 0
package.json

@@ -0,0 +1,93 @@
1
+{
2
+  "name": "health",
3
+  "version": "0.0.1",
4
+  "author": "Ionic Framework",
5
+  "homepage": "http://ionicframework.com/",
6
+  "private": true,
7
+  "scripts": {
8
+    "clean": "ionic-app-scripts clean",
9
+    "build": "ionic-app-scripts build",
10
+    "lint": "ionic-app-scripts lint",
11
+    "ionic:build": "ionic-app-scripts build",
12
+    "ionic:serve": "ionic-app-scripts serve"
13
+  },
14
+  "dependencies": {
15
+    "@angular/animations": "5.2.10",
16
+    "@angular/common": "5.2.10",
17
+    "@angular/compiler": "5.2.10",
18
+    "@angular/compiler-cli": "^12.2.5",
19
+    "@angular/core": "5.2.10",
20
+    "@angular/forms": "5.2.10",
21
+    "@angular/http": "5.2.10",
22
+    "@angular/platform-browser": "5.2.10",
23
+    "@angular/platform-browser-dynamic": "5.2.10",
24
+    "@capacitor/android": "^3.2.5",
25
+    "@capacitor/app": "1.0.3",
26
+    "@capacitor/core": "3.2.5",
27
+    "@capacitor/haptics": "1.1.0",
28
+    "@capacitor/ios": "^3.2.4",
29
+    "@capacitor/keyboard": "1.1.0",
30
+    "@capacitor/status-bar": "1.0.3",
31
+    "@ionic-native/core": "4.7.0",
32
+    "@ionic-native/device": "^4.7.0",
33
+    "@ionic-native/health": "^4.7.0",
34
+    "@ionic-native/http": "^4.9.1",
35
+    "@ionic-native/in-app-browser": "^4.7.0",
36
+    "@ionic-native/native-storage": "^4.20.0",
37
+    "@ionic-native/social-sharing": "^4.7.0",
38
+    "@ionic-native/splash-screen": "4.7.0",
39
+    "@ionic-native/status-bar": "4.7.0",
40
+    "@ionic-native/user-agent": "^4.20.0",
41
+    "@ionic/storage": "2.1.3",
42
+    "@swimlane/ngx-charts": "^8.1.0",
43
+    "angular2-humanize": "^2.1.0",
44
+    "cordova-plugin-advanced-http": "^1.11.1",
45
+    "cordova-plugin-file": "^6.0.2",
46
+    "cordova-plugin-nativestorage": "^2.3.2",
47
+    "es6-promise-plugin": "4.2.2",
48
+    "ionic-angular": "3.9.2",
49
+    "ionicons": "3.0.0",
50
+    "moment": "^2.22.2",
51
+    "ngx-moment": "^3.0.1",
52
+    "rxjs": "^6.2.1",
53
+    "rxjs-compat": "^6.2.1",
54
+    "sw-toolbox": "3.6.0",
55
+    "target": "0.0.2",
56
+    "zone.js": "0.8.26"
57
+  },
58
+  "devDependencies": {
59
+    "@capacitor/cli": "3.2.5",
60
+    "@ionic/app-scripts": "^3.2.4",
61
+    "cordova-android": "^9.0.0",
62
+    "cordova-ios": "^6.2.0",
63
+    "cordova-plugin-device": "^2.0.3",
64
+    "cordova-plugin-inappbrowser": "^5.0.0",
65
+    "cordova-plugin-ionic-keyboard": "^2.0.5",
66
+    "cordova-plugin-splashscreen": "^5.0.4",
67
+    "cordova-plugin-useragent": "^1.0.6",
68
+    "cordova-plugin-whitelist": "^1.3.5",
69
+    "typescript": "~2.6.2"
70
+  },
71
+  "description": "An Ionic project",
72
+  "cordova": {
73
+    "plugins": {
74
+      "cordova-plugin-advanced-http": {},
75
+      "cordova-plugin-x-socialsharing": {
76
+        "PHOTO_LIBRARY_ADD_USAGE_DESCRIPTION": "This app requires photo library access to function properly.",
77
+        "PHOTO_LIBRARY_USAGE_DESCRIPTION": "This app requires photo library access to function properly."
78
+      },
79
+      "cordova-plugin-nativestorage": {},
80
+      "cordova-plugin-ionic-keyboard": {},
81
+      "cordova-plugin-splashscreen": {},
82
+      "cordova-plugin-device": {},
83
+      "cordova-plugin-whitelist": {},
84
+      "cordova-plugin-inappbrowser": {},
85
+      "im.ltdev.cordova.UserAgent": {},
86
+      "cordova-plugin-ionic-webview": {}
87
+    },
88
+    "platforms": [
89
+      "ios",
90
+      "android"
91
+    ]
92
+  }
93
+}

+ 1 - 0
postdata.txt

@@ -0,0 +1 @@
1
+{"action":"TOPRUNNERS"}

+ 8 - 0
resources/README.md

@@ -0,0 +1,8 @@
1
+These are Cordova resources. You can replace icon.png and splash.png and run
2
+`ionic cordova resources` to generate custom icons and splash screens for your
3
+app. See `ionic cordova resources --help` for details.
4
+
5
+Cordova reference documentation:
6
+
7
+- Icons: https://cordova.apache.org/docs/en/latest/config_ref/images.html
8
+- Splash Screens: https://cordova.apache.org/docs/en/latest/reference/cordova-plugin-splashscreen/

二進制
resources/android/icon/drawable-hdpi-icon.png


二進制
resources/android/icon/drawable-ldpi-icon.png


二進制
resources/android/icon/drawable-mdpi-icon.png


二進制
resources/android/icon/drawable-xhdpi-icon.png


二進制
resources/android/icon/drawable-xxhdpi-icon.png


二進制
resources/android/icon/drawable-xxxhdpi-icon.png


二進制
resources/android/splash/drawable-land-hdpi-screen.png


二進制
resources/android/splash/drawable-land-ldpi-screen.png


二進制
resources/android/splash/drawable-land-mdpi-screen.png


二進制
resources/android/splash/drawable-land-xhdpi-screen.png


二進制
resources/android/splash/drawable-land-xxhdpi-screen.png


二進制
resources/android/splash/drawable-land-xxxhdpi-screen.png


二進制
resources/android/splash/drawable-port-hdpi-screen.png


二進制
resources/android/splash/drawable-port-ldpi-screen.png


二進制
resources/android/splash/drawable-port-mdpi-screen.png


二進制
resources/android/splash/drawable-port-xhdpi-screen.png


二進制
resources/android/splash/drawable-port-xxhdpi-screen.png


二進制
resources/android/splash/drawable-port-xxxhdpi-screen.png


二進制
resources/icon.png


+ 1 - 0
resources/icon.png.md5

@@ -0,0 +1 @@
1
+a8051c5f33bc638063855adbdf7fba0e

二進制
resources/ios/icon/icon-1024.png


二進制
resources/ios/icon/icon-108@2x.png


二進制
resources/ios/icon/icon-20.png


二進制
resources/ios/icon/icon-20@2x.png


二進制
resources/ios/icon/icon-20@3x.png


二進制
resources/ios/icon/icon-24@2x.png


二進制
resources/ios/icon/icon-27.5@2x.png


二進制
resources/ios/icon/icon-29.png


二進制
resources/ios/icon/icon-29@2x.png


二進制
resources/ios/icon/icon-29@3x.png


二進制
resources/ios/icon/icon-40.png


二進制
resources/ios/icon/icon-40@2x.png


二進制
resources/ios/icon/icon-40@3x.png


二進制
resources/ios/icon/icon-44@2x.png


+ 0 - 0
resources/ios/icon/icon-50.png


部分文件因文件數量過多而無法顯示

Pull Requests - Gogs: Simplico Git Service