Compare commits
No commits in common. "ff3243695faa249f10da3faf833707f732ac89a8" and "22d30658929c80b42a5f87345480972d8a4a4d70" have entirely different histories.
ff3243695f
...
22d3065892
|
|
@ -5,6 +5,7 @@
|
||||||
android:icon="@mipmap/ic_launcher">
|
android:icon="@mipmap/ic_launcher">
|
||||||
<activity
|
<activity
|
||||||
android:name=".MainActivity"
|
android:name=".MainActivity"
|
||||||
|
android:screenOrientation="portrait"
|
||||||
android:exported="true"
|
android:exported="true"
|
||||||
android:launchMode="singleTop"
|
android:launchMode="singleTop"
|
||||||
android:taskAffinity=""
|
android:taskAffinity=""
|
||||||
|
|
@ -17,15 +18,9 @@
|
||||||
while the Flutter UI initializes. After that, this theme continues
|
while the Flutter UI initializes. After that, this theme continues
|
||||||
to determine the Window background behind the Flutter UI. -->
|
to determine the Window background behind the Flutter UI. -->
|
||||||
<meta-data
|
<meta-data
|
||||||
android:name="io.flutter.embedding.android.NormalTheme"
|
android:name="io.flutter.embedding.android.NormalTheme"
|
||||||
android:resource="@style/NormalTheme"/>
|
android:resource="@style/NormalTheme"
|
||||||
<!-- <meta-data
|
/>
|
||||||
android:name="io.flutter.app.android.SplashScreenUntilFirstFrame"
|
|
||||||
android:value="true" />
|
|
||||||
<meta-data
|
|
||||||
android:name="io.flutter.embedding.android.SplashScreenDrawable"
|
|
||||||
android:resource="@drawable/background"
|
|
||||||
/>-->
|
|
||||||
<intent-filter>
|
<intent-filter>
|
||||||
<action android:name="android.intent.action.MAIN"/>
|
<action android:name="android.intent.action.MAIN"/>
|
||||||
<category android:name="android.intent.category.LAUNCHER"/>
|
<category android:name="android.intent.category.LAUNCHER"/>
|
||||||
|
|
@ -35,53 +30,39 @@
|
||||||
This is used by the Flutter tool to generate GeneratedPluginRegistrant.java -->
|
This is used by the Flutter tool to generate GeneratedPluginRegistrant.java -->
|
||||||
<meta-data
|
<meta-data
|
||||||
android:name="flutterEmbedding"
|
android:name="flutterEmbedding"
|
||||||
android:value="2"/>
|
android:value="2" />
|
||||||
|
|
||||||
<!-- Provider -->
|
<!-- Provider -->
|
||||||
<provider
|
<provider
|
||||||
android:name="androidx.core.content.FileProvider"
|
android:name="androidx.core.content.FileProvider"
|
||||||
android:authorities="${applicationId}.fileProvider"
|
android:authorities="${applicationId}.fileProvider"
|
||||||
android:exported="false"
|
android:exported="false"
|
||||||
android:grantUriPermissions="true">
|
android:grantUriPermissions="true">
|
||||||
<meta-data
|
<meta-data android:name="android.support.FILE_PROVIDER_PATHS" android:resource="@xml/file_paths" />
|
||||||
android:name="android.support.FILE_PROVIDER_PATHS"
|
|
||||||
android:resource="@xml/file_paths"/>
|
|
||||||
</provider>
|
</provider>
|
||||||
</application>
|
</application>
|
||||||
<!-- 访问电话状态 -->
|
<!-- 访问电话状态 -->
|
||||||
<uses-permission
|
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
|
||||||
android:name="android.permission.READ_PHONE_STATE"/>
|
|
||||||
<!-- 允许全部网络访问 -->
|
<!-- 允许全部网络访问 -->
|
||||||
<uses-permission
|
<uses-permission android:name="android.permission.INTERNET" />
|
||||||
android:name="android.permission.INTERNET"/>
|
|
||||||
<!-- 获取网络信息状态 -->
|
<!-- 获取网络信息状态 -->
|
||||||
<uses-permission
|
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
|
||||||
android:name="android.permission.ACCESS_NETWORK_STATE"/>
|
|
||||||
<!-- 获取当前WiFi接入的状态以及WLAN热点的信息 -->
|
<!-- 获取当前WiFi接入的状态以及WLAN热点的信息 -->
|
||||||
<uses-permission
|
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
|
||||||
android:name="android.permission.ACCESS_WIFI_STATE"/>
|
|
||||||
<!-- 获取当前设备存储权限 -->
|
<!-- 获取当前设备存储权限 -->
|
||||||
<uses-permission
|
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
|
||||||
android:name="android.permission.READ_EXTERNAL_STORAGE"/>
|
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
|
||||||
<uses-permission
|
<uses-permission android:name="android.permission.MANAGE_EXTERNAL_STORAGE" />
|
||||||
android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
|
<uses-permission android:name="android.permission.ACTION_MANAGE_UNKNOWN_APP_SOURCES"/>
|
||||||
<uses-permission
|
|
||||||
android:name="android.permission.MANAGE_EXTERNAL_STORAGE"/>
|
|
||||||
<uses-permission
|
|
||||||
android:name="android.permission.ACTION_MANAGE_UNKNOWN_APP_SOURCES"/>
|
|
||||||
<!-- 这个权限用于app安装 -->
|
<!-- 这个权限用于app安装 -->
|
||||||
<uses-permission
|
<uses-permission android:name="android.permission.REQUEST_INSTALL_PACKAGES" />
|
||||||
android:name="android.permission.REQUEST_INSTALL_PACKAGES"/>
|
|
||||||
<!-- 屏幕常亮权限 -->
|
<!-- 屏幕常亮权限 -->
|
||||||
<uses-permission
|
<uses-permission android:name="android.permission.WAKE_LOCK" />
|
||||||
android:name="android.permission.WAKE_LOCK"/>
|
<uses-permission android:name="android.permission.CAMERA"/>
|
||||||
<uses-permission
|
|
||||||
android:name="android.permission.CAMERA"/>
|
|
||||||
<!-- Permissions options for the `access notification policy` group -->
|
<!-- Permissions options for the `access notification policy` group -->
|
||||||
<uses-permission
|
<uses-permission android:name="android.permission.ACCESS_NOTIFICATION_POLICY"/>
|
||||||
android:name="android.permission.ACCESS_NOTIFICATION_POLICY"/>
|
|
||||||
<!-- Permissions options for the `notification` group -->
|
<!-- Permissions options for the `notification` group -->
|
||||||
<uses-permission
|
<uses-permission android:name="android.permission.POST_NOTIFICATIONS"/>
|
||||||
android:name="android.permission.POST_NOTIFICATIONS"/>
|
|
||||||
<!-- Required to query activities that can process text, see:
|
<!-- Required to query activities that can process text, see:
|
||||||
https://developer.android.com/training/package-visibility and
|
https://developer.android.com/training/package-visibility and
|
||||||
https://developer.android.com/reference/android/content/Intent#ACTION_PROCESS_TEXT.
|
https://developer.android.com/reference/android/content/Intent#ACTION_PROCESS_TEXT.
|
||||||
|
|
@ -89,10 +70,8 @@
|
||||||
In particular, this is used by the Flutter engine in io.flutter.plugin.text.ProcessTextPlugin. -->
|
In particular, this is used by the Flutter engine in io.flutter.plugin.text.ProcessTextPlugin. -->
|
||||||
<queries>
|
<queries>
|
||||||
<intent>
|
<intent>
|
||||||
<action
|
<action android:name="android.intent.action.PROCESS_TEXT"/>
|
||||||
android:name="android.intent.action.PROCESS_TEXT"/>
|
<data android:mimeType="text/plain"/>
|
||||||
<data
|
|
||||||
android:mimeType="text/plain"/>
|
|
||||||
</intent>
|
</intent>
|
||||||
</queries>
|
</queries>
|
||||||
</manifest>
|
</manifest>
|
||||||
|
Before Width: | Height: | Size: 43 KiB |
|
Before Width: | Height: | Size: 19 KiB |
|
|
@ -1,6 +0,0 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
|
|
||||||
<item>
|
|
||||||
<bitmap android:gravity="fill" android:src="@drawable/background"/>
|
|
||||||
</item>
|
|
||||||
</layer-list>
|
|
||||||
|
|
@ -1,6 +0,0 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
|
|
||||||
<item>
|
|
||||||
<bitmap android:gravity="fill" android:src="@drawable/background"/>
|
|
||||||
</item>
|
|
||||||
</layer-list>
|
|
||||||
|
Before Width: | Height: | Size: 305 KiB |
|
|
@ -1,6 +1,12 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<!-- Modify this file to customize your launch splash screen -->
|
||||||
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
|
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
|
||||||
<item>
|
<item android:drawable="?android:colorBackground" />
|
||||||
<bitmap android:gravity="fill" android:src="@drawable/background"/>
|
|
||||||
</item>
|
<!-- You can insert your own image assets here -->
|
||||||
|
<!-- <item>
|
||||||
|
<bitmap
|
||||||
|
android:gravity="center"
|
||||||
|
android:src="@mipmap/launch_image" />
|
||||||
|
</item> -->
|
||||||
</layer-list>
|
</layer-list>
|
||||||
|
|
|
||||||
|
Before Width: | Height: | Size: 74 KiB |
|
Before Width: | Height: | Size: 165 KiB |
|
Before Width: | Height: | Size: 272 KiB |
|
Before Width: | Height: | Size: 305 KiB |
|
|
@ -1,6 +1,12 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<!-- Modify this file to customize your launch splash screen -->
|
||||||
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
|
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
|
||||||
<item>
|
<item android:drawable="@android:color/white" />
|
||||||
<bitmap android:gravity="fill" android:src="@drawable/background"/>
|
|
||||||
</item>
|
<!-- You can insert your own image assets here -->
|
||||||
|
<!-- <item>
|
||||||
|
<bitmap
|
||||||
|
android:gravity="center"
|
||||||
|
android:src="@mipmap/launch_image" />
|
||||||
|
</item> -->
|
||||||
</layer-list>
|
</layer-list>
|
||||||
|
|
|
||||||
|
Before Width: | Height: | Size: 305 KiB |
|
Before Width: | Height: | Size: 305 KiB |
|
Before Width: | Height: | Size: 305 KiB |
|
Before Width: | Height: | Size: 305 KiB |
|
Before Width: | Height: | Size: 305 KiB |
|
|
@ -1,20 +0,0 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<resources>
|
|
||||||
<!-- Theme applied to the Android Window while the process is starting when the OS's Dark Mode setting is on -->
|
|
||||||
<style name="LaunchTheme" parent="@android:style/Theme.Black.NoTitleBar">
|
|
||||||
<item name="android:forceDarkAllowed">false</item>
|
|
||||||
<item name="android:windowFullscreen">false</item>
|
|
||||||
<item name="android:windowDrawsSystemBarBackgrounds">false</item>
|
|
||||||
<item name="android:windowLayoutInDisplayCutoutMode">shortEdges</item>
|
|
||||||
<item name="android:windowSplashScreenAnimatedIcon">@drawable/android12splash</item>
|
|
||||||
</style>
|
|
||||||
<!-- Theme applied to the Android Window as soon as the process has started.
|
|
||||||
This theme determines the color of the Android Window while your
|
|
||||||
Flutter UI initializes, as well as behind your Flutter UI while its
|
|
||||||
running.
|
|
||||||
|
|
||||||
This Theme is only used starting with V2 of Flutter's Android embedding. -->
|
|
||||||
<style name="NormalTheme" parent="@android:style/Theme.Black.NoTitleBar">
|
|
||||||
<item name="android:windowBackground">?android:colorBackground</item>
|
|
||||||
</style>
|
|
||||||
</resources>
|
|
||||||
|
|
@ -5,10 +5,6 @@
|
||||||
<!-- Show a splash screen on the activity. Automatically removed when
|
<!-- Show a splash screen on the activity. Automatically removed when
|
||||||
the Flutter engine draws its first frame -->
|
the Flutter engine draws its first frame -->
|
||||||
<item name="android:windowBackground">@drawable/launch_background</item>
|
<item name="android:windowBackground">@drawable/launch_background</item>
|
||||||
<item name="android:forceDarkAllowed">false</item>
|
|
||||||
<item name="android:windowFullscreen">false</item>
|
|
||||||
<item name="android:windowDrawsSystemBarBackgrounds">false</item>
|
|
||||||
<item name="android:windowLayoutInDisplayCutoutMode">shortEdges</item>
|
|
||||||
</style>
|
</style>
|
||||||
<!-- Theme applied to the Android Window as soon as the process has started.
|
<!-- Theme applied to the Android Window as soon as the process has started.
|
||||||
This theme determines the color of the Android Window while your
|
This theme determines the color of the Android Window while your
|
||||||
|
|
|
||||||
|
|
@ -1,20 +0,0 @@
|
||||||
<?xml version="1.0" encoding="utf-8"?>
|
|
||||||
<resources>
|
|
||||||
<!-- Theme applied to the Android Window while the process is starting when the OS's Dark Mode setting is off -->
|
|
||||||
<style name="LaunchTheme" parent="@android:style/Theme.Light.NoTitleBar">
|
|
||||||
<item name="android:forceDarkAllowed">false</item>
|
|
||||||
<item name="android:windowFullscreen">false</item>
|
|
||||||
<item name="android:windowDrawsSystemBarBackgrounds">false</item>
|
|
||||||
<item name="android:windowLayoutInDisplayCutoutMode">shortEdges</item>
|
|
||||||
<item name="android:windowSplashScreenAnimatedIcon">@drawable/android12splash</item>
|
|
||||||
</style>
|
|
||||||
<!-- Theme applied to the Android Window as soon as the process has started.
|
|
||||||
This theme determines the color of the Android Window while your
|
|
||||||
Flutter UI initializes, as well as behind your Flutter UI while its
|
|
||||||
running.
|
|
||||||
|
|
||||||
This Theme is only used starting with V2 of Flutter's Android embedding. -->
|
|
||||||
<style name="NormalTheme" parent="@android:style/Theme.Light.NoTitleBar">
|
|
||||||
<item name="android:windowBackground">?android:colorBackground</item>
|
|
||||||
</style>
|
|
||||||
</resources>
|
|
||||||
|
|
@ -5,10 +5,6 @@
|
||||||
<!-- Show a splash screen on the activity. Automatically removed when
|
<!-- Show a splash screen on the activity. Automatically removed when
|
||||||
the Flutter engine draws its first frame -->
|
the Flutter engine draws its first frame -->
|
||||||
<item name="android:windowBackground">@drawable/launch_background</item>
|
<item name="android:windowBackground">@drawable/launch_background</item>
|
||||||
<item name="android:forceDarkAllowed">false</item>
|
|
||||||
<item name="android:windowFullscreen">false</item>
|
|
||||||
<item name="android:windowDrawsSystemBarBackgrounds">false</item>
|
|
||||||
<item name="android:windowLayoutInDisplayCutoutMode">shortEdges</item>
|
|
||||||
</style>
|
</style>
|
||||||
<!-- Theme applied to the Android Window as soon as the process has started.
|
<!-- Theme applied to the Android Window as soon as the process has started.
|
||||||
This theme determines the color of the Android Window while your
|
This theme determines the color of the Android Window while your
|
||||||
|
|
|
||||||
|
Before Width: | Height: | Size: 261 KiB |
|
Before Width: | Height: | Size: 305 KiB |
|
|
@ -1,14 +0,0 @@
|
||||||
flutter_native_splash:
|
|
||||||
# 原生splash插件配置
|
|
||||||
# 改变配置后执行如下命令:
|
|
||||||
# flutter pub run flutter_native_splash:create
|
|
||||||
# 如需恢复默认的白屏,执行如下命令
|
|
||||||
# flutter pub run flutter_native_splash:remove
|
|
||||||
# 设置闪屏页的默认态logo或背景图片路径
|
|
||||||
background_image: assets/images/splash_native.png
|
|
||||||
android_12:
|
|
||||||
image: assets/images/splash.png
|
|
||||||
android: true
|
|
||||||
ios: true
|
|
||||||
android_gravity: fill
|
|
||||||
ios_content_mode: scaleToFill
|
|
||||||
|
|
@ -1,23 +1,23 @@
|
||||||
{
|
{
|
||||||
"images" : [
|
"images" : [
|
||||||
{
|
{
|
||||||
"filename" : "LaunchImage.png",
|
|
||||||
"idiom" : "universal",
|
"idiom" : "universal",
|
||||||
|
"filename" : "LaunchImage.png",
|
||||||
"scale" : "1x"
|
"scale" : "1x"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"filename" : "LaunchImage@2x.png",
|
|
||||||
"idiom" : "universal",
|
"idiom" : "universal",
|
||||||
|
"filename" : "LaunchImage@2x.png",
|
||||||
"scale" : "2x"
|
"scale" : "2x"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"filename" : "LaunchImage@3x.png",
|
|
||||||
"idiom" : "universal",
|
"idiom" : "universal",
|
||||||
|
"filename" : "LaunchImage@3x.png",
|
||||||
"scale" : "3x"
|
"scale" : "3x"
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"info" : {
|
"info" : {
|
||||||
"author" : "xcode",
|
"version" : 1,
|
||||||
"version" : 1
|
"author" : "xcode"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
Before Width: | Height: | Size: 69 B After Width: | Height: | Size: 68 B |
|
Before Width: | Height: | Size: 69 B After Width: | Height: | Size: 68 B |
|
Before Width: | Height: | Size: 69 B After Width: | Height: | Size: 68 B |
|
|
@ -16,19 +16,13 @@
|
||||||
<view key="view" contentMode="scaleToFill" id="Ze5-6b-2t3">
|
<view key="view" contentMode="scaleToFill" id="Ze5-6b-2t3">
|
||||||
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
|
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
|
||||||
<subviews>
|
<subviews>
|
||||||
<imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleToFill" image="LaunchBackground" translatesAutoresizingMaskIntoConstraints="NO" id="tWc-Dq-wcI"/>
|
<imageView opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" image="LaunchImage" translatesAutoresizingMaskIntoConstraints="NO" id="YRO-k0-Ey4">
|
||||||
<imageView opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="scaleToFill" image="LaunchImage" translatesAutoresizingMaskIntoConstraints="NO" id="YRO-k0-Ey4"></imageView>
|
</imageView>
|
||||||
</subviews>
|
</subviews>
|
||||||
<color key="backgroundColor" red="1" green="1" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
<color key="backgroundColor" red="1" green="1" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
||||||
<constraints>
|
<constraints>
|
||||||
<constraint firstItem="YRO-k0-Ey4" firstAttribute="leading" secondItem="Ze5-6b-2t3" secondAttribute="leading" id="3T2-ad-Qdv"/>
|
<constraint firstItem="YRO-k0-Ey4" firstAttribute="centerX" secondItem="Ze5-6b-2t3" secondAttribute="centerX" id="1a2-6s-vTC"/>
|
||||||
<constraint firstItem="tWc-Dq-wcI" firstAttribute="bottom" secondItem="Ze5-6b-2t3" secondAttribute="bottom" id="RPx-PI-7Xg"/>
|
<constraint firstItem="YRO-k0-Ey4" firstAttribute="centerY" secondItem="Ze5-6b-2t3" secondAttribute="centerY" id="4X2-HB-R7a"/>
|
||||||
<constraint firstItem="tWc-Dq-wcI" firstAttribute="top" secondItem="Ze5-6b-2t3" secondAttribute="top" id="SdS-ul-q2q"/>
|
|
||||||
<constraint firstAttribute="trailing" secondItem="tWc-Dq-wcI" secondAttribute="trailing" id="Swv-Gf-Rwn"/>
|
|
||||||
<constraint firstAttribute="trailing" secondItem="YRO-k0-Ey4" secondAttribute="trailing" id="TQA-XW-tRk"/>
|
|
||||||
<constraint firstItem="YRO-k0-Ey4" firstAttribute="bottom" secondItem="Ze5-6b-2t3" secondAttribute="bottom" id="duK-uY-Gun"/>
|
|
||||||
<constraint firstItem="tWc-Dq-wcI" firstAttribute="leading" secondItem="Ze5-6b-2t3" secondAttribute="leading" id="kV7-tw-vXt"/>
|
|
||||||
<constraint firstItem="YRO-k0-Ey4" firstAttribute="top" secondItem="Ze5-6b-2t3" secondAttribute="top" id="xPn-NY-SIU"/>
|
|
||||||
</constraints>
|
</constraints>
|
||||||
</view>
|
</view>
|
||||||
</viewController>
|
</viewController>
|
||||||
|
|
@ -39,6 +33,5 @@
|
||||||
</scenes>
|
</scenes>
|
||||||
<resources>
|
<resources>
|
||||||
<image name="LaunchImage" width="168" height="185"/>
|
<image name="LaunchImage" width="168" height="185"/>
|
||||||
<image name="LaunchBackground" width="1" height="1"/>
|
|
||||||
</resources>
|
</resources>
|
||||||
</document>
|
</document>
|
||||||
|
|
|
||||||
|
|
@ -1,53 +1,49 @@
|
||||||
<?xml version="1.0" encoding="UTF-8"?>
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||||
<plist version="1.0">
|
<plist version="1.0">
|
||||||
<dict>
|
<dict>
|
||||||
<key>CFBundleDevelopmentRegion</key>
|
<key>CFBundleDevelopmentRegion</key>
|
||||||
<string>$(DEVELOPMENT_LANGUAGE)</string>
|
<string>$(DEVELOPMENT_LANGUAGE)</string>
|
||||||
<key>CFBundleDisplayName</key>
|
<key>CFBundleDisplayName</key>
|
||||||
<string>Making School Asignment App</string>
|
<string>Making School Asignment App</string>
|
||||||
<key>CFBundleExecutable</key>
|
<key>CFBundleExecutable</key>
|
||||||
<string>$(EXECUTABLE_NAME)</string>
|
<string>$(EXECUTABLE_NAME)</string>
|
||||||
<key>CFBundleIdentifier</key>
|
<key>CFBundleIdentifier</key>
|
||||||
<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
|
<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
|
||||||
<key>CFBundleInfoDictionaryVersion</key>
|
<key>CFBundleInfoDictionaryVersion</key>
|
||||||
<string>6.0</string>
|
<string>6.0</string>
|
||||||
<key>CFBundleName</key>
|
<key>CFBundleName</key>
|
||||||
<string>making_school_asignment_app</string>
|
<string>making_school_asignment_app</string>
|
||||||
<key>CFBundlePackageType</key>
|
<key>CFBundlePackageType</key>
|
||||||
<string>APPL</string>
|
<string>APPL</string>
|
||||||
<key>CFBundleShortVersionString</key>
|
<key>CFBundleShortVersionString</key>
|
||||||
<string>$(FLUTTER_BUILD_NAME)</string>
|
<string>$(FLUTTER_BUILD_NAME)</string>
|
||||||
<key>CFBundleSignature</key>
|
<key>CFBundleSignature</key>
|
||||||
<string>????</string>
|
<string>????</string>
|
||||||
<key>CFBundleVersion</key>
|
<key>CFBundleVersion</key>
|
||||||
<string>$(FLUTTER_BUILD_NUMBER)</string>
|
<string>$(FLUTTER_BUILD_NUMBER)</string>
|
||||||
<key>LSRequiresIPhoneOS</key>
|
<key>LSRequiresIPhoneOS</key>
|
||||||
<true/>
|
<true/>
|
||||||
<key>UILaunchStoryboardName</key>
|
<key>UILaunchStoryboardName</key>
|
||||||
<string>LaunchScreen</string>
|
<string>LaunchScreen</string>
|
||||||
<key>UIMainStoryboardFile</key>
|
<key>UIMainStoryboardFile</key>
|
||||||
<string>Main</string>
|
<string>Main</string>
|
||||||
<key>UISupportedInterfaceOrientations</key>
|
<key>UISupportedInterfaceOrientations</key>
|
||||||
<array>
|
<array>
|
||||||
<string>UIInterfaceOrientationPortrait</string>
|
<string>UIInterfaceOrientationPortrait</string>
|
||||||
<string>UIInterfaceOrientationLandscapeLeft</string>
|
<string>UIInterfaceOrientationLandscapeLeft</string>
|
||||||
<string>UIInterfaceOrientationLandscapeRight</string>
|
<string>UIInterfaceOrientationLandscapeRight</string>
|
||||||
</array>
|
</array>
|
||||||
<key>UISupportedInterfaceOrientations~ipad</key>
|
<key>UISupportedInterfaceOrientations~ipad</key>
|
||||||
<array>
|
<array>
|
||||||
<string>UIInterfaceOrientationPortrait</string>
|
<string>UIInterfaceOrientationPortrait</string>
|
||||||
<string>UIInterfaceOrientationPortraitUpsideDown</string>
|
<string>UIInterfaceOrientationPortraitUpsideDown</string>
|
||||||
<string>UIInterfaceOrientationLandscapeLeft</string>
|
<string>UIInterfaceOrientationLandscapeLeft</string>
|
||||||
<string>UIInterfaceOrientationLandscapeRight</string>
|
<string>UIInterfaceOrientationLandscapeRight</string>
|
||||||
</array>
|
</array>
|
||||||
<key>CADisableMinimumFrameDurationOnPhone</key>
|
<key>CADisableMinimumFrameDurationOnPhone</key>
|
||||||
<true/>
|
<true/>
|
||||||
<key>UIApplicationSupportsIndirectInputEvents</key>
|
<key>UIApplicationSupportsIndirectInputEvents</key>
|
||||||
<true/>
|
<true/>
|
||||||
<key>UIStatusBarHidden</key>
|
</dict>
|
||||||
<false/>
|
|
||||||
<key>UIViewControllerBasedStatusBarAppearance</key>
|
|
||||||
<false/>
|
|
||||||
</dict>
|
|
||||||
</plist>
|
</plist>
|
||||||
|
|
|
||||||
|
|
@ -100,7 +100,7 @@ abstract class RetrofitClient {
|
||||||
//学生
|
//学生
|
||||||
@GET("/api/hms/HmsReport/GetQuestionStudentState")
|
@GET("/api/hms/HmsReport/GetQuestionStudentState")
|
||||||
Future<List<Students>> getQuestionStudentState(
|
Future<List<Students>> getQuestionStudentState(
|
||||||
@Query('HomeworkId') String homeworkId, @Query('TemplateId') int templateId, @Query('QuestionNo') String questionNo);
|
@Query('HomeworkId') String homeworkId, @Query('TemplateId') int templateId, @Query('QuestionNo') int questionNo);
|
||||||
|
|
||||||
//收集订正
|
//收集订正
|
||||||
@POST("/api/hms/Homework/Collect")
|
@POST("/api/hms/Homework/Collect")
|
||||||
|
|
|
||||||
|
|
@ -9,9 +9,7 @@
|
||||||
import 'package:making_school_asignment_app/common/job/common/base_page.dart';
|
import 'package:making_school_asignment_app/common/job/common/base_page.dart';
|
||||||
|
|
||||||
class RequestConfig {
|
class RequestConfig {
|
||||||
// static const _devBaseUrl = "http://192.168.2.119:1091"; // 开发
|
static const _devBaseUrl = "http://192.168.2.119:1091"; // 开发
|
||||||
static const _devBaseUrl = "https://dpc-teacher-api.23544.com"; // 开发
|
|
||||||
// static const _proBaseUrl = "http://192.168.2.119:1091"; // 生产
|
|
||||||
static const _proBaseUrl = "https://dpc-teacher-api.23544.com"; // 生产
|
static const _proBaseUrl = "https://dpc-teacher-api.23544.com"; // 生产
|
||||||
static const imgUrl = 'https://dpc-job-oss.23544.com/';
|
static const imgUrl = 'https://dpc-job-oss.23544.com/';
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -37,7 +37,7 @@ class Questions extends Object {
|
||||||
int templateId;
|
int templateId;
|
||||||
|
|
||||||
@JsonKey(name: 'questionNo')
|
@JsonKey(name: 'questionNo')
|
||||||
String questionNo;
|
int questionNo;
|
||||||
|
|
||||||
@JsonKey(name: 'questionType')
|
@JsonKey(name: 'questionType')
|
||||||
int questionType;
|
int questionType;
|
||||||
|
|
@ -213,7 +213,7 @@ class Dtls extends Object {
|
||||||
int? templateId;
|
int? templateId;
|
||||||
|
|
||||||
@JsonKey(name: 'questionNo')
|
@JsonKey(name: 'questionNo')
|
||||||
String questionNo;
|
int questionNo;
|
||||||
|
|
||||||
@JsonKey(name: 'questionType')
|
@JsonKey(name: 'questionType')
|
||||||
int questionType;
|
int questionType;
|
||||||
|
|
|
||||||
|
|
@ -19,7 +19,7 @@ class KnowledgeReportDetail extends Object {
|
||||||
int templateId;
|
int templateId;
|
||||||
|
|
||||||
@JsonKey(name: 'questionNo')
|
@JsonKey(name: 'questionNo')
|
||||||
String questionNo;
|
int questionNo;
|
||||||
|
|
||||||
@JsonKey(name: 'questionType')
|
@JsonKey(name: 'questionType')
|
||||||
int questionType;
|
int questionType;
|
||||||
|
|
|
||||||
|
|
@ -16,7 +16,7 @@ class OriginalManuscriptHandwritingParams extends Object {
|
||||||
int? templateId;
|
int? templateId;
|
||||||
|
|
||||||
@JsonKey(name: 'questionNo')
|
@JsonKey(name: 'questionNo')
|
||||||
String? questionNo;
|
int? questionNo;
|
||||||
|
|
||||||
@JsonKey(name: 'pageNum')
|
@JsonKey(name: 'pageNum')
|
||||||
int? pageNum;
|
int? pageNum;
|
||||||
|
|
|
||||||
|
|
@ -105,7 +105,7 @@ class KgtList extends Object {
|
||||||
String id;
|
String id;
|
||||||
|
|
||||||
@JsonKey(name: 'questionNo')
|
@JsonKey(name: 'questionNo')
|
||||||
String questionNo;
|
int questionNo;
|
||||||
|
|
||||||
@JsonKey(name: 'questionType')
|
@JsonKey(name: 'questionType')
|
||||||
int questionType;
|
int questionType;
|
||||||
|
|
@ -135,7 +135,7 @@ class ZgtList extends Object {
|
||||||
String id;
|
String id;
|
||||||
|
|
||||||
@JsonKey(name: 'questionNo')
|
@JsonKey(name: 'questionNo')
|
||||||
String questionNo;
|
int questionNo;
|
||||||
|
|
||||||
@JsonKey(name: 'questionType')
|
@JsonKey(name: 'questionType')
|
||||||
int questionType;
|
int questionType;
|
||||||
|
|
|
||||||
|
|
@ -43,7 +43,7 @@ class KgtList extends Object {
|
||||||
int templateId;
|
int templateId;
|
||||||
|
|
||||||
@JsonKey(name: 'questionNo')
|
@JsonKey(name: 'questionNo')
|
||||||
String questionNo;
|
int questionNo;
|
||||||
|
|
||||||
@JsonKey(name: 'answer')
|
@JsonKey(name: 'answer')
|
||||||
String? answer;
|
String? answer;
|
||||||
|
|
@ -76,7 +76,7 @@ class ZgtList extends Object {
|
||||||
int templateId;
|
int templateId;
|
||||||
|
|
||||||
@JsonKey(name: 'questionNo')
|
@JsonKey(name: 'questionNo')
|
||||||
String questionNo;
|
int questionNo;
|
||||||
|
|
||||||
@JsonKey(name: 'answer')
|
@JsonKey(name: 'answer')
|
||||||
String? answer;
|
String? answer;
|
||||||
|
|
|
||||||
|
|
@ -16,13 +16,11 @@ import 'package:permission_handler/permission_handler.dart';
|
||||||
|
|
||||||
import 'common/config/request_config.dart';
|
import 'common/config/request_config.dart';
|
||||||
import 'common/utils/app_upgrade/upgradeLogic.dart';
|
import 'common/utils/app_upgrade/upgradeLogic.dart';
|
||||||
import 'package:flutter_native_splash/flutter_native_splash.dart';
|
|
||||||
|
|
||||||
void main() async {
|
void main() async {
|
||||||
// 在测试模式下运行Get
|
// 在测试模式下运行Get
|
||||||
Get.testMode = true;
|
Get.testMode = true;
|
||||||
WidgetsBinding widgetsBinding = WidgetsFlutterBinding.ensureInitialized();
|
|
||||||
FlutterNativeSplash.preserve(widgetsBinding: widgetsBinding);
|
|
||||||
/// 初始化本地存储
|
/// 初始化本地存储
|
||||||
await Get.putAsync(() => StorageService().init());
|
await Get.putAsync(() => StorageService().init());
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,6 @@
|
||||||
import 'dart:async';
|
import 'dart:async';
|
||||||
|
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_native_splash/flutter_native_splash.dart';
|
|
||||||
import 'package:flutter_screenutil/flutter_screenutil.dart';
|
import 'package:flutter_screenutil/flutter_screenutil.dart';
|
||||||
import 'package:get/get.dart';
|
import 'package:get/get.dart';
|
||||||
import 'package:making_school_asignment_app/common/utils/app_upgrade/upgradeLogic.dart';
|
import 'package:making_school_asignment_app/common/utils/app_upgrade/upgradeLogic.dart';
|
||||||
|
|
@ -36,7 +35,7 @@ class _StartPageState extends State<StartPage> with RequestToolMixin {
|
||||||
@override
|
@override
|
||||||
void initState() {
|
void initState() {
|
||||||
super.initState();
|
super.initState();
|
||||||
FlutterNativeSplash.remove();
|
|
||||||
Get.put(HomeLogic());
|
Get.put(HomeLogic());
|
||||||
Get.put(WorkLogic());
|
Get.put(WorkLogic());
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -29,7 +29,7 @@ class AnswerHandwriting extends Dialog {
|
||||||
final int studentId;
|
final int studentId;
|
||||||
final int? templateId;
|
final int? templateId;
|
||||||
final int? pageNum;
|
final int? pageNum;
|
||||||
final String? questionNo;
|
final int? questionNo;
|
||||||
final Function closeCall;
|
final Function closeCall;
|
||||||
AnswerHandwriting(
|
AnswerHandwriting(
|
||||||
{super.key, required this.homeworkId, required this.studentId, required this.closeCall, this.templateId, this.pageNum, this.questionNo});
|
{super.key, required this.homeworkId, required this.studentId, required this.closeCall, this.templateId, this.pageNum, this.questionNo});
|
||||||
|
|
@ -68,7 +68,7 @@ Future<void> showAnswerHandwriting(
|
||||||
required int studentId,
|
required int studentId,
|
||||||
int? templateId,
|
int? templateId,
|
||||||
int? pageNum,
|
int? pageNum,
|
||||||
String? questionNo,
|
int? questionNo,
|
||||||
}) async {
|
}) async {
|
||||||
backCall() {
|
backCall() {
|
||||||
Navigator.of(context).pop();
|
Navigator.of(context).pop();
|
||||||
|
|
@ -118,7 +118,7 @@ class AnswerHandwritingMainBox extends HookWidget with EventBusMixin {
|
||||||
final int? templateId;
|
final int? templateId;
|
||||||
final int studentId;
|
final int studentId;
|
||||||
final int? pageNum;
|
final int? pageNum;
|
||||||
final String? questionNo;
|
final int? questionNo;
|
||||||
final Function closeCall;
|
final Function closeCall;
|
||||||
|
|
||||||
@override
|
@override
|
||||||
|
|
@ -184,7 +184,7 @@ class UseMainBoxState with RequestToolMixin {
|
||||||
final String homeworkId;
|
final String homeworkId;
|
||||||
final int studentId;
|
final int studentId;
|
||||||
final int? templateId;
|
final int? templateId;
|
||||||
String? questionNo;
|
int? questionNo;
|
||||||
final ValueNotifier<int?> pageNum;
|
final ValueNotifier<int?> pageNum;
|
||||||
final ValueNotifier<int> pageCount;
|
final ValueNotifier<int> pageCount;
|
||||||
final ValueNotifier<JobHandwriting?> handwritingData;
|
final ValueNotifier<JobHandwriting?> handwritingData;
|
||||||
|
|
@ -210,7 +210,7 @@ class UseMainBoxState with RequestToolMixin {
|
||||||
});
|
});
|
||||||
|
|
||||||
// 工厂构造函数
|
// 工厂构造函数
|
||||||
factory UseMainBoxState.use(String homeworkId, int studentId, [int? pageNum, String? questionNo, int? templateId]) {
|
factory UseMainBoxState.use(String homeworkId, int studentId, [int? pageNum, int? questionNo, int? templateId]) {
|
||||||
return UseMainBoxState._(
|
return UseMainBoxState._(
|
||||||
homeworkId: homeworkId,
|
homeworkId: homeworkId,
|
||||||
templateId: templateId,
|
templateId: templateId,
|
||||||
|
|
|
||||||
|
|
@ -207,7 +207,7 @@ class _KnowledgePointState extends State<KnowledgePoint> {
|
||||||
child: quickText('知识点掌握情况', color: const Color.fromRGBO(92, 92, 92, 1), size: 14.sp, fontWeight: FontWeight.bold),
|
child: quickText('知识点掌握情况', color: const Color.fromRGBO(92, 92, 92, 1), size: 14.sp, fontWeight: FontWeight.bold),
|
||||||
),
|
),
|
||||||
Expanded(
|
Expanded(
|
||||||
child: widget.knowsList.isNotEmpty? ListView(
|
child: ListView(
|
||||||
children: widget.knowsList.value.map((item) {
|
children: widget.knowsList.value.map((item) {
|
||||||
return Container(
|
return Container(
|
||||||
margin: EdgeInsets.only(bottom: 15.h, left: 15.r, right: 15.r),
|
margin: EdgeInsets.only(bottom: 15.h, left: 15.r, right: 15.r),
|
||||||
|
|
@ -264,8 +264,8 @@ class _KnowledgePointState extends State<KnowledgePoint> {
|
||||||
int ttlCount = stu.queDtls!.length;
|
int ttlCount = stu.queDtls!.length;
|
||||||
stu.okRate = Utils.calcRate(okCount, ttlCount);
|
stu.okRate = Utils.calcRate(okCount, ttlCount);
|
||||||
stu.queDtls!.sort((a, b) {
|
stu.queDtls!.sort((a, b) {
|
||||||
String num1 = a.questionNo;
|
int num1 = a.questionNo;
|
||||||
String num2 = b.questionNo;
|
int num2 = b.questionNo;
|
||||||
return num1.compareTo(num2);
|
return num1.compareTo(num2);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
@ -289,7 +289,7 @@ class _KnowledgePointState extends State<KnowledgePoint> {
|
||||||
],
|
],
|
||||||
),
|
),
|
||||||
);
|
);
|
||||||
}).toList()): MyEmptyWidget(imgWidth: 100.r, imgHeight: 100.r, font: 8.sp),
|
}).toList()),
|
||||||
),
|
),
|
||||||
],
|
],
|
||||||
));
|
));
|
||||||
|
|
|
||||||
|
|
@ -110,8 +110,8 @@ class _QuickStudentDataTableState extends State<QuickStudentDataTable> {
|
||||||
children: List.generate(item.kgtStu!.length, (index) {
|
children: List.generate(item.kgtStu!.length, (index) {
|
||||||
Dtls kgInfo = item.kgtStu![index];
|
Dtls kgInfo = item.kgtStu![index];
|
||||||
return Container(
|
return Container(
|
||||||
width: 20.r,
|
width: 14.r,
|
||||||
height: 20.r,
|
height: 14.r,
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
color: kgInfo.state == 0
|
color: kgInfo.state == 0
|
||||||
? const Color(0xFFD3D3D3)
|
? const Color(0xFFD3D3D3)
|
||||||
|
|
@ -120,7 +120,7 @@ class _QuickStudentDataTableState extends State<QuickStudentDataTable> {
|
||||||
: kgInfo.state == 2
|
: kgInfo.state == 2
|
||||||
? const Color(0xFFFF7474)
|
? const Color(0xFFFF7474)
|
||||||
: const Color(0xFF4CC793),
|
: const Color(0xFF4CC793),
|
||||||
borderRadius: BorderRadius.all(Radius.circular(10.r))),
|
borderRadius: BorderRadius.all(Radius.circular(7.r))),
|
||||||
child: Center(
|
child: Center(
|
||||||
child: Text(
|
child: Text(
|
||||||
kgInfo.questionNo.toString(),
|
kgInfo.questionNo.toString(),
|
||||||
|
|
|
||||||
|
|
@ -518,9 +518,9 @@ class _ReportTableState extends State<ReportTable> {
|
||||||
style: TextStyle(
|
style: TextStyle(
|
||||||
fontSize: 10.sp, color: const Color(0xFF4CC793))),
|
fontSize: 10.sp, color: const Color(0xFF4CC793))),
|
||||||
Image.asset(
|
Image.asset(
|
||||||
'assets/images/green_right_icon.png',
|
'assets/images/job_data_right_icon.png',
|
||||||
width: 12.r,
|
width: 10.r,
|
||||||
height: 12.r,
|
height: 10.r,
|
||||||
)
|
)
|
||||||
],
|
],
|
||||||
),
|
),
|
||||||
|
|
|
||||||
|
|
@ -9,7 +9,7 @@ class StudentKgTable extends StatefulWidget {
|
||||||
final List bodyList;
|
final List bodyList;
|
||||||
final int? fixedRows;
|
final int? fixedRows;
|
||||||
final int? fixedCols;
|
final int? fixedCols;
|
||||||
final Function(String, int)? questionNumCall;
|
final Function(int, int)? questionNumCall;
|
||||||
|
|
||||||
const StudentKgTable({
|
const StudentKgTable({
|
||||||
Key? key,
|
Key? key,
|
||||||
|
|
|
||||||
|
|
@ -11,7 +11,7 @@ class StudentZgTable extends StatefulWidget {
|
||||||
final List bodyList;
|
final List bodyList;
|
||||||
final int? fixedRows;
|
final int? fixedRows;
|
||||||
final int? fixedCols;
|
final int? fixedCols;
|
||||||
final Function(String, int)? questionNumCall;
|
final Function(int, int)? questionNumCall;
|
||||||
|
|
||||||
const StudentZgTable({
|
const StudentZgTable({
|
||||||
Key? key,
|
Key? key,
|
||||||
|
|
|
||||||
|
|
@ -446,8 +446,8 @@ class _StudentWorkDetailPageState extends State<StudentWorkDetailPage> {
|
||||||
KgtList subjective =
|
KgtList subjective =
|
||||||
item.kgtList[i];
|
item.kgtList[i];
|
||||||
return Container(
|
return Container(
|
||||||
width: 25.r,
|
width: 20.r,
|
||||||
height: 25.r,
|
height: 20.r,
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
color: Colors.transparent,
|
color: Colors.transparent,
|
||||||
border: Border.all(
|
border: Border.all(
|
||||||
|
|
@ -459,7 +459,7 @@ class _StudentWorkDetailPageState extends State<StudentWorkDetailPage> {
|
||||||
: subjective.state == 2
|
: subjective.state == 2
|
||||||
? Color(0xFFFF7474)
|
? Color(0xFFFF7474)
|
||||||
: Color(0xFF666666)),
|
: Color(0xFF666666)),
|
||||||
borderRadius: BorderRadius.all(Radius.circular(12.5.r))),
|
borderRadius: BorderRadius.all(Radius.circular(10.r))),
|
||||||
child: Center(
|
child: Center(
|
||||||
child: Text(
|
child: Text(
|
||||||
subjective.questionNo
|
subjective.questionNo
|
||||||
|
|
@ -524,8 +524,8 @@ class _StudentWorkDetailPageState extends State<StudentWorkDetailPage> {
|
||||||
ZgtList subjective =
|
ZgtList subjective =
|
||||||
item.zgtList[i];
|
item.zgtList[i];
|
||||||
return Container(
|
return Container(
|
||||||
width: 25.r,
|
width: 20.r,
|
||||||
height: 25.r,
|
height: 20.r,
|
||||||
decoration: BoxDecoration(
|
decoration: BoxDecoration(
|
||||||
color: Colors.transparent,
|
color: Colors.transparent,
|
||||||
border: Border.all(
|
border: Border.all(
|
||||||
|
|
@ -537,7 +537,7 @@ class _StudentWorkDetailPageState extends State<StudentWorkDetailPage> {
|
||||||
: subjective.state == 2
|
: subjective.state == 2
|
||||||
? Color(0xFFFF7474)
|
? Color(0xFFFF7474)
|
||||||
: Color(0xFF666666)),
|
: Color(0xFF666666)),
|
||||||
borderRadius: BorderRadius.all(Radius.circular(12.5.r))),
|
borderRadius: BorderRadius.all(Radius.circular(10.r))),
|
||||||
child: Center(
|
child: Center(
|
||||||
child: Text(
|
child: Text(
|
||||||
subjective.questionNo
|
subjective.questionNo
|
||||||
|
|
|
||||||
|
|
@ -93,7 +93,7 @@ dependencies:
|
||||||
auto_updater: ^0.2.1
|
auto_updater: ^0.2.1
|
||||||
permission_handler: ^11.0.1
|
permission_handler: ^11.0.1
|
||||||
flutter_distributor: ^0.4.5
|
flutter_distributor: ^0.4.5
|
||||||
flutter_native_splash: ^2.4.1
|
|
||||||
|
|
||||||
dev_dependencies:
|
dev_dependencies:
|
||||||
flutter_test:
|
flutter_test:
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,6 @@
|
||||||
<!DOCTYPE html><html><head>
|
<!DOCTYPE html>
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
<!--
|
<!--
|
||||||
If you are serving your web app in a path other than the root, change the
|
If you are serving your web app in a path other than the root, change the
|
||||||
href value below to reflect the base path you are serving from.
|
href value below to reflect the base path you are serving from.
|
||||||
|
|
@ -25,196 +27,12 @@
|
||||||
<link rel="apple-touch-icon" href="icons/Icon-192.png">
|
<link rel="apple-touch-icon" href="icons/Icon-192.png">
|
||||||
|
|
||||||
<!-- Favicon -->
|
<!-- Favicon -->
|
||||||
<link rel="icon" type="image/png" href="favicon.png">
|
<link rel="icon" type="image/png" href="favicon.png"/>
|
||||||
|
|
||||||
<title>making_school_asignment_app</title>
|
<title>making_school_asignment_app</title>
|
||||||
<link rel="manifest" href="manifest.json">
|
<link rel="manifest" href="manifest.json">
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
<style id="splash-screen-style">
|
|
||||||
html {
|
|
||||||
height: 100%
|
|
||||||
}
|
|
||||||
|
|
||||||
body {
|
|
||||||
margin: 0;
|
|
||||||
min-height: 100%;
|
|
||||||
background-color: #ffffff;
|
|
||||||
background-image: url("splash/img/light-background.png");
|
|
||||||
background-size: 100% 100%;
|
|
||||||
}
|
|
||||||
|
|
||||||
.center {
|
|
||||||
margin: 0;
|
|
||||||
position: absolute;
|
|
||||||
top: 50%;
|
|
||||||
left: 50%;
|
|
||||||
-ms-transform: translate(-50%, -50%);
|
|
||||||
transform: translate(-50%, -50%);
|
|
||||||
}
|
|
||||||
|
|
||||||
.contain {
|
|
||||||
display:block;
|
|
||||||
width:100%; height:100%;
|
|
||||||
object-fit: contain;
|
|
||||||
}
|
|
||||||
|
|
||||||
.stretch {
|
|
||||||
display:block;
|
|
||||||
width:100%; height:100%;
|
|
||||||
}
|
|
||||||
|
|
||||||
.cover {
|
|
||||||
display:block;
|
|
||||||
width:100%; height:100%;
|
|
||||||
object-fit: cover;
|
|
||||||
}
|
|
||||||
|
|
||||||
.bottom {
|
|
||||||
position: absolute;
|
|
||||||
bottom: 0;
|
|
||||||
left: 50%;
|
|
||||||
-ms-transform: translate(-50%, 0);
|
|
||||||
transform: translate(-50%, 0);
|
|
||||||
}
|
|
||||||
|
|
||||||
.bottomLeft {
|
|
||||||
position: absolute;
|
|
||||||
bottom: 0;
|
|
||||||
left: 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
.bottomRight {
|
|
||||||
position: absolute;
|
|
||||||
bottom: 0;
|
|
||||||
right: 0;
|
|
||||||
}
|
|
||||||
</style>
|
|
||||||
<script id="splash-screen-script">
|
|
||||||
function removeSplashFromWeb() {
|
|
||||||
document.getElementById("splash")?.remove();
|
|
||||||
document.getElementById("splash-branding")?.remove();
|
|
||||||
document.body.style.background = "transparent";
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
<meta content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no" name="viewport">
|
|
||||||
</head>
|
</head>
|
||||||
<body>
|
<body>
|
||||||
|
<script src="flutter_bootstrap.js" async></script>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
|
|
||||||
<script src="flutter_bootstrap.js" async=""></script>
|
|
||||||
|
|
||||||
|
|
||||||
</body></html>
|
|
||||||
|
|
|
||||||