Created android app

This commit is contained in:
frederikpyt 2020-08-03 21:21:21 +02:00
parent 84a1045747
commit 46154e43e9
31 changed files with 723 additions and 0 deletions

View File

@ -0,0 +1,116 @@
<component name="ProjectCodeStyleConfiguration">
<code_scheme name="Project" version="173">
<codeStyleSettings language="XML">
<indentOptions>
<option name="CONTINUATION_INDENT_SIZE" value="4" />
</indentOptions>
<arrangement>
<rules>
<section>
<rule>
<match>
<AND>
<NAME>xmlns:android</NAME>
<XML_ATTRIBUTE />
<XML_NAMESPACE>^$</XML_NAMESPACE>
</AND>
</match>
</rule>
</section>
<section>
<rule>
<match>
<AND>
<NAME>xmlns:.*</NAME>
<XML_ATTRIBUTE />
<XML_NAMESPACE>^$</XML_NAMESPACE>
</AND>
</match>
<order>BY_NAME</order>
</rule>
</section>
<section>
<rule>
<match>
<AND>
<NAME>.*:id</NAME>
<XML_ATTRIBUTE />
<XML_NAMESPACE>http://schemas.android.com/apk/res/android</XML_NAMESPACE>
</AND>
</match>
</rule>
</section>
<section>
<rule>
<match>
<AND>
<NAME>.*:name</NAME>
<XML_ATTRIBUTE />
<XML_NAMESPACE>http://schemas.android.com/apk/res/android</XML_NAMESPACE>
</AND>
</match>
</rule>
</section>
<section>
<rule>
<match>
<AND>
<NAME>name</NAME>
<XML_ATTRIBUTE />
<XML_NAMESPACE>^$</XML_NAMESPACE>
</AND>
</match>
</rule>
</section>
<section>
<rule>
<match>
<AND>
<NAME>style</NAME>
<XML_ATTRIBUTE />
<XML_NAMESPACE>^$</XML_NAMESPACE>
</AND>
</match>
</rule>
</section>
<section>
<rule>
<match>
<AND>
<NAME>.*</NAME>
<XML_ATTRIBUTE />
<XML_NAMESPACE>^$</XML_NAMESPACE>
</AND>
</match>
<order>BY_NAME</order>
</rule>
</section>
<section>
<rule>
<match>
<AND>
<NAME>.*</NAME>
<XML_ATTRIBUTE />
<XML_NAMESPACE>http://schemas.android.com/apk/res/android</XML_NAMESPACE>
</AND>
</match>
<order>ANDROID_ATTRIBUTE_ORDER</order>
</rule>
</section>
<section>
<rule>
<match>
<AND>
<NAME>.*</NAME>
<XML_ATTRIBUTE />
<XML_NAMESPACE>.*</XML_NAMESPACE>
</AND>
</match>
<order>BY_NAME</order>
</rule>
</section>
</rules>
</arrangement>
</codeStyleSettings>
</code_scheme>
</component>

1
mobileapp/android/app/.gitignore vendored Normal file
View File

@ -0,0 +1 @@
/build

View File

@ -0,0 +1,33 @@
apply plugin: 'com.android.application'
android {
compileSdkVersion 30
buildToolsVersion "30.0.1"
defaultConfig {
applicationId "sde.odense.skolehjem"
minSdkVersion 16
targetSdkVersion 30
versionCode 1
versionName "1.0"
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
implementation fileTree(dir: "libs", include: ["*.jar"])
implementation 'androidx.appcompat:appcompat:1.1.0'
implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'androidx.test.ext:junit:1.1.1'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0'
}

View File

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

Binary file not shown.

View File

@ -0,0 +1,20 @@
{
"version": 1,
"artifactType": {
"type": "APK",
"kind": "Directory"
},
"applicationId": "sde.odense.skolehjem",
"variantName": "release",
"elements": [
{
"type": "SINGLE",
"filters": [],
"properties": [],
"versionCode": 1,
"versionName": "1.0",
"enabled": true,
"outputFile": "app-release.apk"
}
]
}

View File

@ -0,0 +1,26 @@
package sde.odense.skolehjem;
import android.content.Context;
import androidx.test.platform.app.InstrumentationRegistry;
import androidx.test.ext.junit.runners.AndroidJUnit4;
import org.junit.Test;
import org.junit.runner.RunWith;
import static org.junit.Assert.*;
/**
* Instrumented test, which will execute on an Android device.
*
* @see <a href="http://d.android.com/tools/testing">Testing documentation</a>
*/
@RunWith(AndroidJUnit4.class)
public class ExampleInstrumentedTest {
@Test
public void useAppContext() {
// Context of the app under test.
Context appContext = InstrumentationRegistry.getInstrumentation().getTargetContext();
assertEquals("sde.odense.skolehjem", appContext.getPackageName());
}
}

View File

@ -0,0 +1,21 @@
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="sde.odense.skolehjem">
<uses-permission android:name="android.permission.INTERNET" />
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/AppTheme">
<activity android:name=".MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>

Binary file not shown.

After

Width:  |  Height:  |  Size: 25 KiB

View File

@ -0,0 +1,105 @@
package sde.odense.skolehjem;
import androidx.appcompat.app.AppCompatActivity;
import android.annotation.SuppressLint;
import android.app.AlertDialog;
import android.content.Context;
import android.content.DialogInterface;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.webkit.JavascriptInterface;
import android.webkit.JsResult;
import android.webkit.WebChromeClient;
import android.webkit.WebSettings;
import android.webkit.WebView;
import android.webkit.WebViewClient;
public class MainActivity extends AppCompatActivity {
private WebView webView;
private static final String TEL_PREFIX = "tel:";
@SuppressLint({"SetJavaScriptEnabled", "AddJavascriptInterface"})
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
webView = findViewById(R.id.webView);
webView.setWebViewClient(new CustomWebViewClient());
webView.setWebChromeClient(new CustomWebChromeClient(this));
//Settings
WebSettings webSettings = webView.getSettings();
webSettings.setJavaScriptEnabled(true);
webSettings.setDomStorageEnabled(true);
webSettings.setLoadWithOverviewMode(true);
webSettings.setUseWideViewPort(true);
webSettings.setBuiltInZoomControls(true);
webSettings.setDisplayZoomControls(false);
webSettings.setSupportZoom(true);
webSettings.setDefaultTextEncodingName("utf-8");
webSettings.setCacheMode(WebSettings.LOAD_NO_CACHE);
webView.loadUrl("https://ekapp.sde.dk");
}
@Override
public void onBackPressed() {
if(webView.canGoBack())
webView.goBack();
else
super.onBackPressed();
}
private class CustomWebViewClient extends WebViewClient {
@Override
public boolean shouldOverrideUrlLoading(WebView wv, String url) {
if(url.startsWith(TEL_PREFIX)) {
Intent intent = new Intent(Intent.ACTION_DIAL);
intent.setData(Uri.parse(url));
startActivity(intent);
return true;
}
return false;
}
}
static final class CustomWebChromeClient extends WebChromeClient {
Context myApp;
CustomWebChromeClient(Context mContext){
myApp = mContext;
}
@Override
public boolean onJsConfirm(WebView view, String url, String message, final JsResult result) {
new AlertDialog.Builder(myApp)
.setTitle("Confirm")
.setMessage(message)
.setPositiveButton(android.R.string.ok,
new DialogInterface.OnClickListener()
{
public void onClick(DialogInterface dialog, int which)
{
result.confirm();
}
})
.setNegativeButton(android.R.string.cancel,
new DialogInterface.OnClickListener()
{
public void onClick(DialogInterface dialog, int which)
{
result.cancel();
}
})
.create()
.show();
return true;
}
}
}

View File

@ -0,0 +1,30 @@
<vector xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:aapt="http://schemas.android.com/aapt"
android:width="108dp"
android:height="108dp"
android:viewportWidth="108"
android:viewportHeight="108">
<path android:pathData="M31,63.928c0,0 6.4,-11 12.1,-13.1c7.2,-2.6 26,-1.4 26,-1.4l38.1,38.1L107,108.928l-32,-1L31,63.928z">
<aapt:attr name="android:fillColor">
<gradient
android:endX="85.84757"
android:endY="92.4963"
android:startX="42.9492"
android:startY="49.59793"
android:type="linear">
<item
android:color="#44000000"
android:offset="0.0" />
<item
android:color="#00000000"
android:offset="1.0" />
</gradient>
</aapt:attr>
</path>
<path
android:fillColor="#FFFFFF"
android:fillType="nonZero"
android:pathData="M65.3,45.828l3.8,-6.6c0.2,-0.4 0.1,-0.9 -0.3,-1.1c-0.4,-0.2 -0.9,-0.1 -1.1,0.3l-3.9,6.7c-6.3,-2.8 -13.4,-2.8 -19.7,0l-3.9,-6.7c-0.2,-0.4 -0.7,-0.5 -1.1,-0.3C38.8,38.328 38.7,38.828 38.9,39.228l3.8,6.6C36.2,49.428 31.7,56.028 31,63.928h46C76.3,56.028 71.8,49.428 65.3,45.828zM43.4,57.328c-0.8,0 -1.5,-0.5 -1.8,-1.2c-0.3,-0.7 -0.1,-1.5 0.4,-2.1c0.5,-0.5 1.4,-0.7 2.1,-0.4c0.7,0.3 1.2,1 1.2,1.8C45.3,56.528 44.5,57.328 43.4,57.328L43.4,57.328zM64.6,57.328c-0.8,0 -1.5,-0.5 -1.8,-1.2s-0.1,-1.5 0.4,-2.1c0.5,-0.5 1.4,-0.7 2.1,-0.4c0.7,0.3 1.2,1 1.2,1.8C66.5,56.528 65.6,57.328 64.6,57.328L64.6,57.328z"
android:strokeWidth="1"
android:strokeColor="#00000000" />
</vector>

View File

@ -0,0 +1,170 @@
<?xml version="1.0" encoding="utf-8"?>
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="108dp"
android:height="108dp"
android:viewportWidth="108"
android:viewportHeight="108">
<path
android:fillColor="#3DDC84"
android:pathData="M0,0h108v108h-108z" />
<path
android:fillColor="#00000000"
android:pathData="M9,0L9,108"
android:strokeWidth="0.8"
android:strokeColor="#33FFFFFF" />
<path
android:fillColor="#00000000"
android:pathData="M19,0L19,108"
android:strokeWidth="0.8"
android:strokeColor="#33FFFFFF" />
<path
android:fillColor="#00000000"
android:pathData="M29,0L29,108"
android:strokeWidth="0.8"
android:strokeColor="#33FFFFFF" />
<path
android:fillColor="#00000000"
android:pathData="M39,0L39,108"
android:strokeWidth="0.8"
android:strokeColor="#33FFFFFF" />
<path
android:fillColor="#00000000"
android:pathData="M49,0L49,108"
android:strokeWidth="0.8"
android:strokeColor="#33FFFFFF" />
<path
android:fillColor="#00000000"
android:pathData="M59,0L59,108"
android:strokeWidth="0.8"
android:strokeColor="#33FFFFFF" />
<path
android:fillColor="#00000000"
android:pathData="M69,0L69,108"
android:strokeWidth="0.8"
android:strokeColor="#33FFFFFF" />
<path
android:fillColor="#00000000"
android:pathData="M79,0L79,108"
android:strokeWidth="0.8"
android:strokeColor="#33FFFFFF" />
<path
android:fillColor="#00000000"
android:pathData="M89,0L89,108"
android:strokeWidth="0.8"
android:strokeColor="#33FFFFFF" />
<path
android:fillColor="#00000000"
android:pathData="M99,0L99,108"
android:strokeWidth="0.8"
android:strokeColor="#33FFFFFF" />
<path
android:fillColor="#00000000"
android:pathData="M0,9L108,9"
android:strokeWidth="0.8"
android:strokeColor="#33FFFFFF" />
<path
android:fillColor="#00000000"
android:pathData="M0,19L108,19"
android:strokeWidth="0.8"
android:strokeColor="#33FFFFFF" />
<path
android:fillColor="#00000000"
android:pathData="M0,29L108,29"
android:strokeWidth="0.8"
android:strokeColor="#33FFFFFF" />
<path
android:fillColor="#00000000"
android:pathData="M0,39L108,39"
android:strokeWidth="0.8"
android:strokeColor="#33FFFFFF" />
<path
android:fillColor="#00000000"
android:pathData="M0,49L108,49"
android:strokeWidth="0.8"
android:strokeColor="#33FFFFFF" />
<path
android:fillColor="#00000000"
android:pathData="M0,59L108,59"
android:strokeWidth="0.8"
android:strokeColor="#33FFFFFF" />
<path
android:fillColor="#00000000"
android:pathData="M0,69L108,69"
android:strokeWidth="0.8"
android:strokeColor="#33FFFFFF" />
<path
android:fillColor="#00000000"
android:pathData="M0,79L108,79"
android:strokeWidth="0.8"
android:strokeColor="#33FFFFFF" />
<path
android:fillColor="#00000000"
android:pathData="M0,89L108,89"
android:strokeWidth="0.8"
android:strokeColor="#33FFFFFF" />
<path
android:fillColor="#00000000"
android:pathData="M0,99L108,99"
android:strokeWidth="0.8"
android:strokeColor="#33FFFFFF" />
<path
android:fillColor="#00000000"
android:pathData="M19,29L89,29"
android:strokeWidth="0.8"
android:strokeColor="#33FFFFFF" />
<path
android:fillColor="#00000000"
android:pathData="M19,39L89,39"
android:strokeWidth="0.8"
android:strokeColor="#33FFFFFF" />
<path
android:fillColor="#00000000"
android:pathData="M19,49L89,49"
android:strokeWidth="0.8"
android:strokeColor="#33FFFFFF" />
<path
android:fillColor="#00000000"
android:pathData="M19,59L89,59"
android:strokeWidth="0.8"
android:strokeColor="#33FFFFFF" />
<path
android:fillColor="#00000000"
android:pathData="M19,69L89,69"
android:strokeWidth="0.8"
android:strokeColor="#33FFFFFF" />
<path
android:fillColor="#00000000"
android:pathData="M19,79L89,79"
android:strokeWidth="0.8"
android:strokeColor="#33FFFFFF" />
<path
android:fillColor="#00000000"
android:pathData="M29,19L29,89"
android:strokeWidth="0.8"
android:strokeColor="#33FFFFFF" />
<path
android:fillColor="#00000000"
android:pathData="M39,19L39,89"
android:strokeWidth="0.8"
android:strokeColor="#33FFFFFF" />
<path
android:fillColor="#00000000"
android:pathData="M49,19L49,89"
android:strokeWidth="0.8"
android:strokeColor="#33FFFFFF" />
<path
android:fillColor="#00000000"
android:pathData="M59,19L59,89"
android:strokeWidth="0.8"
android:strokeColor="#33FFFFFF" />
<path
android:fillColor="#00000000"
android:pathData="M69,19L69,89"
android:strokeWidth="0.8"
android:strokeColor="#33FFFFFF" />
<path
android:fillColor="#00000000"
android:pathData="M79,19L79,89"
android:strokeWidth="0.8"
android:strokeColor="#33FFFFFF" />
</vector>

View File

@ -0,0 +1,116 @@
<vector xmlns:android="http://schemas.android.com/apk/res/android"
android:width="108dp"
android:height="108dp"
android:viewportWidth="108"
android:viewportHeight="108">
<group android:scaleX="0.118125"
android:scaleY="0.118125"
android:translateX="16.2"
android:translateY="16.2">
<path
android:pathData="M266.72,445.44C262.95,442.69 261.18,437.98 257.28,435.46C254.97,426.61 246.02,417.02 245.42,409.16C238.03,403.12 237.6,396.21 236.3,390.4C234.93,388.75 232.04,387.01 234.55,385.69C239.07,389.3 239.73,396.05 247.18,398.37C249.71,395.66 245.98,392.38 246.64,389.52C236.55,366.07 228.3,342.61 223.92,319.64C226.47,318.23 228.86,318.8 231.31,318.17C233.3,319.15 230.29,319.7 231.97,320.66C233.68,319.44 235.06,321.27 236.71,320.66C239.99,315.52 231.47,310.71 236.28,305.41C233.16,298.34 231.29,290.79 230.74,283.07C230.13,276.32 232.27,178.61 204.96,149.94C190.92,135.16 178.65,135.78 169.98,138.08C162.58,140.13 157.91,145.48 156.97,149.38C176.01,170.93 174.03,194.6 175.65,216.47C177.14,237.62 177.33,258.83 180.17,278.61C186.63,323.04 200.78,365.99 221.99,405.55C223.77,405.55 222.91,402.83 221.08,401.53C216.09,387.26 204.34,372.44 205.88,358.89C210.02,362.15 211.27,366.79 212.99,370.78C218.2,382.72 224.25,395.49 230.82,407.96C232.95,408.43 231.44,404.4 229.82,404.53C229.56,403.27 230.61,402.17 230.13,400.91C220.82,383.68 210.7,365.03 207.71,347.61C207.47,347.39 205.54,345.69 205.31,345.47C201.74,331.72 198.14,318.14 195.54,304.65C195.07,303.63 194.2,302.85 193.13,302.52C194.73,294.86 190.99,286.72 191.27,278.92C193.61,283.24 195.23,287.9 196.09,292.73C197.59,299.13 198.23,305.29 200.03,311.64C201.85,317.99 204.11,324.3 205.73,330.7C206.75,334.97 206.39,339.23 207.62,343.34C211.53,356.39 219.29,368.69 223.19,381.84C223.72,382.59 223.62,383.61 222.98,384.26C227.11,388.97 250.37,432.86 249.54,434.69C247.4,436.4 248.43,432.09 246.17,433.78C258.97,453.63 292.15,499.87 333.75,534.17C344.86,543.85 367.37,557.37 386.28,566.15C378.31,561.5 367.22,553.59 357.05,546.3C345.88,538.08 335.21,529.2 325.07,519.72C302.19,498.8 281.88,475.23 264.59,449.51C264.83,448.11 266.25,446.81 266.72,445.44Z"
android:fillColor="#00788a"/>
<path
android:fillColor="#FF000000"
android:pathData="M266.72,445.44C262.95,442.69 261.18,437.98 257.28,435.46C254.97,426.61 246.02,417.02 245.42,409.16C238.03,403.12 237.6,396.21 236.3,390.4C234.93,388.75 232.04,387.01 234.55,385.69C239.07,389.3 239.73,396.05 247.18,398.37C249.71,395.66 245.98,392.38 246.64,389.52C236.55,366.07 228.3,342.61 223.92,319.64C226.47,318.23 228.86,318.8 231.31,318.17C233.3,319.15 230.29,319.7 231.97,320.66C233.68,319.44 235.06,321.27 236.71,320.66C239.99,315.52 231.47,310.71 236.28,305.41C233.16,298.34 231.29,290.79 230.74,283.07C230.13,276.32 232.27,178.61 204.96,149.94C190.92,135.16 178.65,135.78 169.98,138.08C162.58,140.13 157.91,145.48 156.97,149.38C176.01,170.93 174.03,194.6 175.65,216.47C177.14,237.62 177.33,258.83 180.17,278.61C186.63,323.04 200.78,365.99 221.99,405.55C223.77,405.55 222.91,402.83 221.08,401.53C216.09,387.26 204.34,372.44 205.88,358.89C210.02,362.15 211.27,366.79 212.99,370.78C218.2,382.72 224.25,395.49 230.82,407.96C232.95,408.43 231.44,404.4 229.82,404.53C229.56,403.27 230.61,402.17 230.13,400.91C220.82,383.68 210.7,365.03 207.71,347.61C207.47,347.39 205.54,345.69 205.31,345.47C201.74,331.72 198.14,318.14 195.54,304.65C195.07,303.63 194.2,302.85 193.13,302.52C194.73,294.86 190.99,286.72 191.27,278.92C193.61,283.24 195.23,287.9 196.09,292.73C197.59,299.13 198.23,305.29 200.03,311.64C201.85,317.99 204.11,324.3 205.73,330.7C206.75,334.97 206.39,339.23 207.62,343.34C211.53,356.39 219.29,368.69 223.19,381.84C223.72,382.59 223.62,383.61 222.98,384.26C227.11,388.97 250.37,432.86 249.54,434.69C247.4,436.4 248.43,432.09 246.17,433.78C258.97,453.63 292.15,499.87 333.75,534.17C344.86,543.85 367.37,557.37 386.28,566.15C378.31,561.5 367.22,553.59 357.05,546.3C345.88,538.08 335.21,529.2 325.07,519.72C302.19,498.8 281.88,475.23 264.59,449.51C264.83,448.11 266.25,446.81 266.72,445.44Z"
android:strokeAlpha="0"
android:strokeWidth="1"
android:fillAlpha="0"
android:strokeColor="#000000"/>
<path
android:pathData="M266.72,445.44C262.95,442.69 261.18,437.98 257.28,435.46C254.97,426.61 246.02,417.02 245.42,409.16C238.03,403.12 237.6,396.21 236.3,390.4C234.93,388.75 232.04,387.01 234.55,385.69C239.07,389.3 239.73,396.05 247.18,398.37C249.71,395.66 245.98,392.38 246.64,389.52C236.55,366.07 228.3,342.61 223.92,319.64C226.47,318.23 228.86,318.8 231.31,318.17C233.3,319.15 230.29,319.7 231.97,320.66C233.68,319.44 235.06,321.27 236.71,320.66C239.99,315.52 231.47,310.71 236.28,305.41C233.16,298.34 231.29,290.79 230.74,283.07C230.13,276.32 232.27,178.61 204.96,149.94C190.92,135.16 178.65,135.78 169.98,138.08C162.58,140.13 157.91,145.48 156.97,149.38C176.01,170.93 174.03,194.6 175.65,216.47C177.14,237.62 177.33,258.83 180.17,278.61C186.63,323.04 200.78,365.99 221.99,405.55C223.77,405.55 222.91,402.83 221.08,401.53C216.09,387.26 204.34,372.44 205.88,358.89C210.02,362.15 211.27,366.79 212.99,370.78C218.2,382.72 224.25,395.49 230.82,407.96C232.95,408.43 231.44,404.4 229.82,404.53C229.56,403.27 230.61,402.17 230.13,400.91C220.82,383.68 210.7,365.03 207.71,347.61C207.47,347.39 205.54,345.69 205.31,345.47C201.74,331.72 198.14,318.14 195.54,304.65C195.07,303.63 194.2,302.85 193.13,302.52C194.73,294.86 190.99,286.72 191.27,278.92C193.61,283.24 195.23,287.9 196.09,292.73C197.59,299.13 198.23,305.29 200.03,311.64C201.85,317.99 204.11,324.3 205.73,330.7C206.75,334.97 206.39,339.23 207.62,343.34C211.53,356.39 219.29,368.69 223.19,381.84C223.72,382.59 223.62,383.61 222.98,384.26C227.11,388.97 250.37,432.86 249.54,434.69C247.4,436.4 248.43,432.09 246.17,433.78C258.97,453.63 292.15,499.87 333.75,534.17C344.86,543.85 367.37,557.37 386.28,566.15C378.31,561.5 367.22,553.59 357.05,546.3C345.88,538.08 335.21,529.2 325.07,519.72C302.19,498.8 281.88,475.23 264.59,449.51C264.83,448.11 266.25,446.81 266.72,445.44Z"
android:fillColor="#000000"
android:fillAlpha="0"/>
<path
android:fillColor="#FF000000"
android:pathData="M266.72,445.44C262.95,442.69 261.18,437.98 257.28,435.46C254.97,426.61 246.02,417.02 245.42,409.16C238.03,403.12 237.6,396.21 236.3,390.4C234.93,388.75 232.04,387.01 234.55,385.69C239.07,389.3 239.73,396.05 247.18,398.37C249.71,395.66 245.98,392.38 246.64,389.52C236.55,366.07 228.3,342.61 223.92,319.64C226.47,318.23 228.86,318.8 231.31,318.17C233.3,319.15 230.29,319.7 231.97,320.66C233.68,319.44 235.06,321.27 236.71,320.66C239.99,315.52 231.47,310.71 236.28,305.41C233.16,298.34 231.29,290.79 230.74,283.07C230.13,276.32 232.27,178.61 204.96,149.94C190.92,135.16 178.65,135.78 169.98,138.08C162.58,140.13 157.91,145.48 156.97,149.38C176.01,170.93 174.03,194.6 175.65,216.47C177.14,237.62 177.33,258.83 180.17,278.61C186.63,323.04 200.78,365.99 221.99,405.55C223.77,405.55 222.91,402.83 221.08,401.53C216.09,387.26 204.34,372.44 205.88,358.89C210.02,362.15 211.27,366.79 212.99,370.78C218.2,382.72 224.25,395.49 230.82,407.96C232.95,408.43 231.44,404.4 229.82,404.53C229.56,403.27 230.61,402.17 230.13,400.91C220.82,383.68 210.7,365.03 207.71,347.61C207.47,347.39 205.54,345.69 205.31,345.47C201.74,331.72 198.14,318.14 195.54,304.65C195.07,303.63 194.2,302.85 193.13,302.52C194.73,294.86 190.99,286.72 191.27,278.92C193.61,283.24 195.23,287.9 196.09,292.73C197.59,299.13 198.23,305.29 200.03,311.64C201.85,317.99 204.11,324.3 205.73,330.7C206.75,334.97 206.39,339.23 207.62,343.34C211.53,356.39 219.29,368.69 223.19,381.84C223.72,382.59 223.62,383.61 222.98,384.26C227.11,388.97 250.37,432.86 249.54,434.69C247.4,436.4 248.43,432.09 246.17,433.78C258.97,453.63 292.15,499.87 333.75,534.17C344.86,543.85 367.37,557.37 386.28,566.15C378.31,561.5 367.22,553.59 357.05,546.3C345.88,538.08 335.21,529.2 325.07,519.72C302.19,498.8 281.88,475.23 264.59,449.51C264.83,448.11 266.25,446.81 266.72,445.44Z"
android:strokeAlpha="0"
android:strokeWidth="1"
android:fillAlpha="0"
android:strokeColor="#000000"/>
<path
android:pathData="M293.69,244.31C301.84,229.72 367.04,112.95 375.19,98.37C379.43,90.7 376.69,81.04 369.05,76.74C368.88,76.66 367.49,75.98 367.31,75.89C359.66,71.6 349.97,74.29 345.64,81.93C337.49,96.52 272.29,213.27 264.14,227.85C259.88,235.54 262.63,245.21 270.28,249.52C270.28,249.52 271.92,250.4 272.09,250.49C279.77,254.71 289.41,251.95 293.69,244.31Z"
android:fillColor="#00788a"/>
<path
android:fillColor="#FF000000"
android:pathData="M293.69,244.31C301.84,229.72 367.04,112.95 375.19,98.37C379.43,90.7 376.69,81.04 369.05,76.74C368.88,76.66 367.49,75.98 367.31,75.89C359.66,71.6 349.97,74.29 345.64,81.93C337.49,96.52 272.29,213.27 264.14,227.85C259.88,235.54 262.63,245.21 270.28,249.52C270.28,249.52 271.92,250.4 272.09,250.49C279.77,254.71 289.41,251.95 293.69,244.31Z"
android:strokeAlpha="0"
android:strokeWidth="1"
android:fillAlpha="0"
android:strokeColor="#000000"/>
<path
android:pathData="M293.69,244.31C301.84,229.72 367.04,112.95 375.19,98.37C379.43,90.7 376.69,81.04 369.05,76.74C368.88,76.66 367.49,75.98 367.31,75.89C359.66,71.6 349.97,74.29 345.64,81.93C337.49,96.52 272.29,213.27 264.14,227.85C259.88,235.54 262.63,245.21 270.28,249.52C270.28,249.52 271.92,250.4 272.09,250.49C279.77,254.71 289.41,251.95 293.69,244.31Z"
android:fillColor="#000000"
android:fillAlpha="0"/>
<path
android:fillColor="#FF000000"
android:pathData="M293.69,244.31C301.84,229.72 367.04,112.95 375.19,98.37C379.43,90.7 376.69,81.04 369.05,76.74C368.88,76.66 367.49,75.98 367.31,75.89C359.66,71.6 349.97,74.29 345.64,81.93C337.49,96.52 272.29,213.27 264.14,227.85C259.88,235.54 262.63,245.21 270.28,249.52C270.28,249.52 271.92,250.4 272.09,250.49C279.77,254.71 289.41,251.95 293.69,244.31Z"
android:strokeAlpha="0"
android:strokeWidth="1"
android:fillAlpha="0"
android:strokeColor="#000000"/>
<path
android:pathData="M345.77,274.17C345.77,274.17 345.77,274.17 345.77,274.16C353.92,259.57 419.13,142.81 427.28,128.21C431.53,120.53 428.79,110.86 421.14,106.55C420.96,106.47 419.57,105.82 419.39,105.74C411.71,101.46 402.01,104.2 397.73,111.88C389.58,126.47 324.37,243.14 316.22,257.73C311.96,265.41 314.71,275.09 322.36,279.38C322.72,279.58 323.94,280.27 324.12,280.37C331.81,284.64 341.49,281.87 345.77,274.17Z"
android:fillColor="#00788a"/>
<path
android:fillColor="#FF000000"
android:pathData="M345.77,274.17C345.77,274.17 345.77,274.17 345.77,274.16C353.92,259.57 419.13,142.81 427.28,128.21C431.53,120.53 428.79,110.86 421.14,106.55C420.96,106.47 419.57,105.82 419.39,105.74C411.71,101.46 402.01,104.2 397.73,111.88C389.58,126.47 324.37,243.14 316.22,257.73C311.96,265.41 314.71,275.09 322.36,279.38C322.72,279.58 323.94,280.27 324.12,280.37C331.81,284.64 341.49,281.87 345.77,274.17Z"
android:strokeAlpha="0"
android:strokeWidth="1"
android:fillAlpha="0"
android:strokeColor="#000000"/>
<path
android:pathData="M345.77,274.17C345.77,274.17 345.77,274.17 345.77,274.16C353.92,259.57 419.13,142.81 427.28,128.21C431.53,120.53 428.79,110.86 421.14,106.55C420.96,106.47 419.57,105.82 419.39,105.74C411.71,101.46 402.01,104.2 397.73,111.88C389.58,126.47 324.37,243.14 316.22,257.73C311.96,265.41 314.71,275.09 322.36,279.38C322.72,279.58 323.94,280.27 324.12,280.37C331.81,284.64 341.49,281.87 345.77,274.17Z"
android:fillColor="#000000"
android:fillAlpha="0"/>
<path
android:fillColor="#FF000000"
android:pathData="M345.77,274.17C345.77,274.17 345.77,274.17 345.77,274.16C353.92,259.57 419.13,142.81 427.28,128.21C431.53,120.53 428.79,110.86 421.14,106.55C420.96,106.47 419.57,105.82 419.39,105.74C411.71,101.46 402.01,104.2 397.73,111.88C389.58,126.47 324.37,243.14 316.22,257.73C311.96,265.41 314.71,275.09 322.36,279.38C322.72,279.58 323.94,280.27 324.12,280.37C331.81,284.64 341.49,281.87 345.77,274.17Z"
android:strokeAlpha="0"
android:strokeWidth="1"
android:fillAlpha="0"
android:strokeColor="#000000"/>
<path
android:pathData="M397.87,302.94C397.87,302.94 397.87,302.94 397.87,302.94C446.75,215.33 473.91,166.64 479.34,156.91C483.6,149.23 480.86,139.55 473.2,135.25C473.02,135.15 471.62,134.38 471.45,134.28C463.78,130.01 454.08,132.76 449.79,140.43C441.65,155.03 376.46,271.84 368.3,286.44C364.02,294.12 366.76,303.82 374.43,308.13C374.78,308.32 376,309 376.18,309.1C383.87,313.39 393.58,310.63 397.87,302.94Z"
android:fillColor="#00788a"/>
<path
android:fillColor="#FF000000"
android:pathData="M397.87,302.94C397.87,302.94 397.87,302.94 397.87,302.94C446.75,215.33 473.91,166.64 479.34,156.91C483.6,149.23 480.86,139.55 473.2,135.25C473.02,135.15 471.62,134.38 471.45,134.28C463.78,130.01 454.08,132.76 449.79,140.43C441.65,155.03 376.46,271.84 368.3,286.44C364.02,294.12 366.76,303.82 374.43,308.13C374.78,308.32 376,309 376.18,309.1C383.87,313.39 393.58,310.63 397.87,302.94Z"
android:strokeAlpha="0"
android:strokeWidth="1"
android:fillAlpha="0"
android:strokeColor="#000000"/>
<path
android:pathData="M397.87,302.94C397.87,302.94 397.87,302.94 397.87,302.94C446.75,215.33 473.91,166.64 479.34,156.91C483.6,149.23 480.86,139.55 473.2,135.25C473.02,135.15 471.62,134.38 471.45,134.28C463.78,130.01 454.08,132.76 449.79,140.43C441.65,155.03 376.46,271.84 368.3,286.44C364.02,294.12 366.76,303.82 374.43,308.13C374.78,308.32 376,309 376.18,309.1C383.87,313.39 393.58,310.63 397.87,302.94Z"
android:fillColor="#000000"
android:fillAlpha="0"/>
<path
android:fillColor="#FF000000"
android:pathData="M397.87,302.94C397.87,302.94 397.87,302.94 397.87,302.94C446.75,215.33 473.91,166.64 479.34,156.91C483.6,149.23 480.86,139.55 473.2,135.25C473.02,135.15 471.62,134.38 471.45,134.28C463.78,130.01 454.08,132.76 449.79,140.43C441.65,155.03 376.46,271.84 368.3,286.44C364.02,294.12 366.76,303.82 374.43,308.13C374.78,308.32 376,309 376.18,309.1C383.87,313.39 393.58,310.63 397.87,302.94Z"
android:strokeAlpha="0"
android:strokeWidth="1"
android:fillAlpha="0"
android:strokeColor="#000000"/>
<path
android:pathData="M451.47,257.42C446.63,266.12 422.36,309.53 378.69,387.71C356.44,375.26 344.07,368.35 341.59,366.97C333.91,362.71 324.24,365.45 319.94,373.1C319.84,373.28 319.07,374.68 318.97,374.85C314.71,382.53 317.46,392.21 325.11,396.51C328.63,398.48 346.24,408.31 377.91,426C377.91,426 377.91,426 377.91,426C385.57,430.27 395.25,427.52 399.54,419.86C407.69,405.26 472.87,288.5 481.02,273.9C485.28,266.23 482.54,256.55 474.88,252.25C474.88,252.25 473.31,251.38 473.14,251.28C465.45,247.03 455.78,249.77 451.47,257.42Z"
android:fillColor="#00788a"/>
<path
android:fillColor="#FF000000"
android:pathData="M451.47,257.42C446.63,266.12 422.36,309.53 378.69,387.71C356.44,375.26 344.07,368.35 341.59,366.97C333.91,362.71 324.24,365.45 319.94,373.1C319.84,373.28 319.07,374.68 318.97,374.85C314.71,382.53 317.46,392.21 325.11,396.51C328.63,398.48 346.24,408.31 377.91,426C377.91,426 377.91,426 377.91,426C385.57,430.27 395.25,427.52 399.54,419.86C407.69,405.26 472.87,288.5 481.02,273.9C485.28,266.23 482.54,256.55 474.88,252.25C474.88,252.25 473.31,251.38 473.14,251.28C465.45,247.03 455.78,249.77 451.47,257.42Z"
android:strokeAlpha="0"
android:strokeWidth="1"
android:fillAlpha="0"
android:strokeColor="#000000"/>
<path
android:pathData="M451.47,257.42C446.63,266.12 422.36,309.53 378.69,387.71C356.44,375.26 344.07,368.35 341.59,366.97C333.91,362.71 324.24,365.45 319.94,373.1C319.84,373.28 319.07,374.68 318.97,374.85C314.71,382.53 317.46,392.21 325.11,396.51C328.63,398.48 346.24,408.31 377.91,426C377.91,426 377.91,426 377.91,426C385.57,430.27 395.25,427.52 399.54,419.86C407.69,405.26 472.87,288.5 481.02,273.9C485.28,266.23 482.54,256.55 474.88,252.25C474.88,252.25 473.31,251.38 473.14,251.28C465.45,247.03 455.78,249.77 451.47,257.42Z"
android:fillColor="#000000"
android:fillAlpha="0"/>
<path
android:fillColor="#FF000000"
android:pathData="M451.47,257.42C446.63,266.12 422.36,309.53 378.69,387.71C356.44,375.26 344.07,368.35 341.59,366.97C333.91,362.71 324.24,365.45 319.94,373.1C319.84,373.28 319.07,374.68 318.97,374.85C314.71,382.53 317.46,392.21 325.11,396.51C328.63,398.48 346.24,408.31 377.91,426C377.91,426 377.91,426 377.91,426C385.57,430.27 395.25,427.52 399.54,419.86C407.69,405.26 472.87,288.5 481.02,273.9C485.28,266.23 482.54,256.55 474.88,252.25C474.88,252.25 473.31,251.38 473.14,251.28C465.45,247.03 455.78,249.77 451.47,257.42Z"
android:strokeAlpha="0"
android:strokeWidth="1"
android:fillAlpha="0"
android:strokeColor="#000000"/>
</group>
</vector>

View File

@ -0,0 +1,19 @@
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">
<WebView
android:id="@+id/webView"
android:layout_width="0dp"
android:layout_height="0dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="1.0" />
</androidx.constraintlayout.widget.ConstraintLayout>

View File

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

View File

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

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 6.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

View File

@ -0,0 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<resources>
<color name="colorPrimary">#6200EE</color>
<color name="colorPrimaryDark">#3700B3</color>
<color name="colorAccent">#03DAC5</color>
</resources>

View File

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

View File

@ -0,0 +1,3 @@
<resources>
<string name="app_name">SDE Skolehjem</string>
</resources>

View File

@ -0,0 +1,5 @@
<resources>
<!-- Base application theme. -->
<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
</style>
</resources>

View File

@ -0,0 +1,17 @@
package sde.odense.skolehjem;
import org.junit.Test;
import static org.junit.Assert.*;
/**
* Example local unit test, which will execute on the development machine (host).
*
* @see <a href="http://d.android.com/tools/testing">Testing documentation</a>
*/
public class ExampleUnitTest {
@Test
public void addition_isCorrect() {
assertEquals(4, 2 + 2);
}
}