diff --git a/libs/BaiduLBS_Android.jar b/libs/BaiduLBS_Android.jar new file mode 100644 index 0000000..591f5f4 Binary files /dev/null and b/libs/BaiduLBS_Android.jar differ diff --git a/libs/arm64-v8a/libBaiduMapSDK_base_v7_5_3.so b/libs/arm64-v8a/libBaiduMapSDK_base_v7_5_3.so new file mode 100644 index 0000000..2935c4c Binary files /dev/null and b/libs/arm64-v8a/libBaiduMapSDK_base_v7_5_3.so differ diff --git a/libs/arm64-v8a/libgnustl_shared.so b/libs/arm64-v8a/libgnustl_shared.so new file mode 100644 index 0000000..be99b75 Binary files /dev/null and b/libs/arm64-v8a/libgnustl_shared.so differ diff --git a/libs/arm64-v8a/libindoor.so b/libs/arm64-v8a/libindoor.so new file mode 100644 index 0000000..bfb6f75 Binary files /dev/null and b/libs/arm64-v8a/libindoor.so differ diff --git a/libs/arm64-v8a/liblocSDK8b.so b/libs/arm64-v8a/liblocSDK8b.so new file mode 100644 index 0000000..9bd868a Binary files /dev/null and b/libs/arm64-v8a/liblocSDK8b.so differ diff --git a/libs/armeabi-v7a/libBaiduMapSDK_base_v7_5_3.so b/libs/armeabi-v7a/libBaiduMapSDK_base_v7_5_3.so new file mode 100644 index 0000000..9aab5e6 Binary files /dev/null and b/libs/armeabi-v7a/libBaiduMapSDK_base_v7_5_3.so differ diff --git a/libs/armeabi-v7a/libgnustl_shared.so b/libs/armeabi-v7a/libgnustl_shared.so new file mode 100644 index 0000000..96c22a2 Binary files /dev/null and b/libs/armeabi-v7a/libgnustl_shared.so differ diff --git a/libs/armeabi-v7a/libindoor.so b/libs/armeabi-v7a/libindoor.so new file mode 100644 index 0000000..b59be91 Binary files /dev/null and b/libs/armeabi-v7a/libindoor.so differ diff --git a/libs/armeabi-v7a/liblocSDK8b.so b/libs/armeabi-v7a/liblocSDK8b.so new file mode 100644 index 0000000..aa90e76 Binary files /dev/null and b/libs/armeabi-v7a/liblocSDK8b.so differ diff --git a/libs/armeabi/libBaiduMapSDK_base_v7_5_3.so b/libs/armeabi/libBaiduMapSDK_base_v7_5_3.so new file mode 100644 index 0000000..373e67f Binary files /dev/null and b/libs/armeabi/libBaiduMapSDK_base_v7_5_3.so differ diff --git a/libs/armeabi/libgnustl_shared.so b/libs/armeabi/libgnustl_shared.so new file mode 100644 index 0000000..5cf6d20 Binary files /dev/null and b/libs/armeabi/libgnustl_shared.so differ diff --git a/libs/armeabi/libindoor.so b/libs/armeabi/libindoor.so new file mode 100644 index 0000000..a0879cf Binary files /dev/null and b/libs/armeabi/libindoor.so differ diff --git a/libs/armeabi/liblocSDK8b.so b/libs/armeabi/liblocSDK8b.so new file mode 100644 index 0000000..4083291 Binary files /dev/null and b/libs/armeabi/liblocSDK8b.so differ diff --git a/libs/x86/libBaiduMapSDK_base_v7_5_3.so b/libs/x86/libBaiduMapSDK_base_v7_5_3.so new file mode 100644 index 0000000..5554ff8 Binary files /dev/null and b/libs/x86/libBaiduMapSDK_base_v7_5_3.so differ diff --git a/libs/x86/libgnustl_shared.so b/libs/x86/libgnustl_shared.so new file mode 100644 index 0000000..1eae31c Binary files /dev/null and b/libs/x86/libgnustl_shared.so differ diff --git a/libs/x86/libindoor.so b/libs/x86/libindoor.so new file mode 100644 index 0000000..1de0a2c Binary files /dev/null and b/libs/x86/libindoor.so differ diff --git a/libs/x86/liblocSDK8b.so b/libs/x86/liblocSDK8b.so new file mode 100644 index 0000000..ca234f1 Binary files /dev/null and b/libs/x86/liblocSDK8b.so differ diff --git a/libs/x86_64/libBaiduMapSDK_base_v7_5_3.so b/libs/x86_64/libBaiduMapSDK_base_v7_5_3.so new file mode 100644 index 0000000..a1c0b4b Binary files /dev/null and b/libs/x86_64/libBaiduMapSDK_base_v7_5_3.so differ diff --git a/libs/x86_64/libgnustl_shared.so b/libs/x86_64/libgnustl_shared.so new file mode 100644 index 0000000..0149273 Binary files /dev/null and b/libs/x86_64/libgnustl_shared.so differ diff --git a/libs/x86_64/libindoor.so b/libs/x86_64/libindoor.so new file mode 100644 index 0000000..80a00c6 Binary files /dev/null and b/libs/x86_64/libindoor.so differ diff --git a/libs/x86_64/liblocSDK8b.so b/libs/x86_64/liblocSDK8b.so new file mode 100644 index 0000000..ff464c5 Binary files /dev/null and b/libs/x86_64/liblocSDK8b.so differ diff --git a/src/MyApplication/.idea/vcs.xml b/src/MyApplication/.idea/vcs.xml index 94a25f7..f6446e1 100644 --- a/src/MyApplication/.idea/vcs.xml +++ b/src/MyApplication/.idea/vcs.xml @@ -1,6 +1,10 @@ +<<<<<<< HEAD +======= + +>>>>>>> dc8dfd73a8a58508fec99a79684ba5574328c7e7 \ No newline at end of file diff --git a/src/MyApplication/app/build.gradle b/src/MyApplication/app/build.gradle index 9dcddfa..77dee94 100644 --- a/src/MyApplication/app/build.gradle +++ b/src/MyApplication/app/build.gradle @@ -43,9 +43,18 @@ dependencies { implementation 'androidx.appcompat:appcompat:1.5.1' implementation 'com.google.android.material:material:1.6.1' implementation 'androidx.constraintlayout:constraintlayout:2.1.4' +<<<<<<< HEAD implementation 'com.baidu.lbsyun:BaiduMapSDK_Map-AllNavi:7.4.0' implementation files('libs/Msc.jar') implementation files('libs\\android-support-v4.jar') +======= + implementation files('libs\\BaiduLBS_Android.jar') + implementation files('libs\\BaiduLBS_Android.jar') + implementation files('libs\\BaiduLBS_Android.jar') + implementation files('libs\\BaiduLBS_Android.jar') + implementation files('libs\\BaiduLBS_Android.jar') + implementation files('libs\\BaiduLBS_Android.jar') +>>>>>>> dc8dfd73a8a58508fec99a79684ba5574328c7e7 testImplementation 'junit:junit:4.13.2' androidTestImplementation 'androidx.test.ext:junit:1.1.3' implementation 'androidx.work:work-runtime:2.7.1' diff --git a/src/MyApplication/app/src/MyApplication/.gitignore b/src/MyApplication/app/src/MyApplication/.gitignore new file mode 100644 index 0000000..aa724b7 --- /dev/null +++ b/src/MyApplication/app/src/MyApplication/.gitignore @@ -0,0 +1,15 @@ +*.iml +.gradle +/local.properties +/.idea/caches +/.idea/libraries +/.idea/modules.xml +/.idea/workspace.xml +/.idea/navEditor.xml +/.idea/assetWizardSettings.xml +.DS_Store +/build +/captures +.externalNativeBuild +.cxx +local.properties diff --git a/src/MyApplication/app/src/MyApplication/.idea/.gitignore b/src/MyApplication/app/src/MyApplication/.idea/.gitignore new file mode 100644 index 0000000..26d3352 --- /dev/null +++ b/src/MyApplication/app/src/MyApplication/.idea/.gitignore @@ -0,0 +1,3 @@ +# Default ignored files +/shelf/ +/workspace.xml diff --git a/src/MyApplication/.idea/.name b/src/MyApplication/app/src/MyApplication/.idea/.name similarity index 100% rename from src/MyApplication/.idea/.name rename to src/MyApplication/app/src/MyApplication/.idea/.name diff --git a/src/MyApplication/app/src/MyApplication/.idea/compiler.xml b/src/MyApplication/app/src/MyApplication/.idea/compiler.xml new file mode 100644 index 0000000..fb7f4a8 --- /dev/null +++ b/src/MyApplication/app/src/MyApplication/.idea/compiler.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/src/MyApplication/app/src/MyApplication/.idea/gradle.xml b/src/MyApplication/app/src/MyApplication/.idea/gradle.xml new file mode 100644 index 0000000..a2d7c21 --- /dev/null +++ b/src/MyApplication/app/src/MyApplication/.idea/gradle.xml @@ -0,0 +1,19 @@ + + + + + + + \ No newline at end of file diff --git a/src/MyApplication/app/src/MyApplication/.idea/misc.xml b/src/MyApplication/app/src/MyApplication/.idea/misc.xml new file mode 100644 index 0000000..bdd9278 --- /dev/null +++ b/src/MyApplication/app/src/MyApplication/.idea/misc.xml @@ -0,0 +1,10 @@ + + + + + + + + + \ No newline at end of file diff --git a/src/MyApplication/app/src/MyApplication/.idea/render.experimental.xml b/src/MyApplication/app/src/MyApplication/.idea/render.experimental.xml new file mode 100644 index 0000000..8ec256a --- /dev/null +++ b/src/MyApplication/app/src/MyApplication/.idea/render.experimental.xml @@ -0,0 +1,6 @@ + + + + + \ No newline at end of file diff --git a/src/MyApplication/app/src/MyApplication/.idea/vcs.xml b/src/MyApplication/app/src/MyApplication/.idea/vcs.xml new file mode 100644 index 0000000..b2bdec2 --- /dev/null +++ b/src/MyApplication/app/src/MyApplication/.idea/vcs.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/src/MyApplication/app/src/MyApplication/app/.gitignore b/src/MyApplication/app/src/MyApplication/app/.gitignore new file mode 100644 index 0000000..42afabf --- /dev/null +++ b/src/MyApplication/app/src/MyApplication/app/.gitignore @@ -0,0 +1 @@ +/build \ No newline at end of file diff --git a/src/MyApplication/app/src/MyApplication/app/.idea/.gitignore b/src/MyApplication/app/src/MyApplication/app/.idea/.gitignore new file mode 100644 index 0000000..26d3352 --- /dev/null +++ b/src/MyApplication/app/src/MyApplication/app/.idea/.gitignore @@ -0,0 +1,3 @@ +# Default ignored files +/shelf/ +/workspace.xml diff --git a/src/MyApplication/app/src/MyApplication/app/.idea/gradle.xml b/src/MyApplication/app/src/MyApplication/app/.idea/gradle.xml new file mode 100644 index 0000000..f22a539 --- /dev/null +++ b/src/MyApplication/app/src/MyApplication/app/.idea/gradle.xml @@ -0,0 +1,13 @@ + + + + + + + \ No newline at end of file diff --git a/src/MyApplication/app/src/MyApplication/app/.idea/misc.xml b/src/MyApplication/app/src/MyApplication/app/.idea/misc.xml new file mode 100644 index 0000000..6ff4d26 --- /dev/null +++ b/src/MyApplication/app/src/MyApplication/app/.idea/misc.xml @@ -0,0 +1,10 @@ + + + + + + + + + \ No newline at end of file diff --git a/src/MyApplication/app/src/MyApplication/app/.idea/vcs.xml b/src/MyApplication/app/src/MyApplication/app/.idea/vcs.xml new file mode 100644 index 0000000..c2365ab --- /dev/null +++ b/src/MyApplication/app/src/MyApplication/app/.idea/vcs.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/src/MyApplication/app/src/MyApplication/app/build.gradle b/src/MyApplication/app/src/MyApplication/app/build.gradle new file mode 100644 index 0000000..8e64d7a --- /dev/null +++ b/src/MyApplication/app/src/MyApplication/app/build.gradle @@ -0,0 +1,56 @@ +plugins { + id 'com.android.application' +} + +android { + namespace 'com.example.myapplication' + compileSdk 32 + + defaultConfig { + applicationId "com.example.myapplication" + minSdk 19 + targetSdk 32 + versionCode 1 + versionName "1.0" + + testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" + ndk { + // 设置支持的SO库架构(开发者可以根据需要,选择一个或多个平台的so) + abiFilters "armeabi", "armeabi-v7a", "arm64-v8a", "x86","x86_64" + } + } + + buildTypes { + release { + minifyEnabled false + proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' + } + } + sourceSets { + main{ + jniLibs.srcDirs=['libs'] + } + + + + } + compileOptions { + sourceCompatibility JavaVersion.VERSION_1_8 + targetCompatibility JavaVersion.VERSION_1_8 + } +} + +dependencies { + + implementation 'androidx.appcompat:appcompat:1.5.1' + implementation 'com.google.android.material:material:1.6.1' + implementation 'androidx.constraintlayout:constraintlayout:2.1.4' + implementation 'com.baidu.lbsyun:BaiduMapSDK_Map-AllNavi:7.4.0' + //implementation files('libs\\BaiduLBS_Android.jar') + //implementation files('libs\\BaiduLBS_Android.jar') + //implementation files('libs\\BaiduLBS_Android.jar') + // implementation files('libs\\BaiduLBS_Android.jar') + testImplementation 'junit:junit:4.13.2' + androidTestImplementation 'androidx.test.ext:junit:1.1.3' + androidTestImplementation 'androidx.test.espresso:espresso-core:3.4.0' +} \ No newline at end of file diff --git a/src/MyApplication/app/src/MyApplication/app/libs/BaiduLBS_Android.jar b/src/MyApplication/app/src/MyApplication/app/libs/BaiduLBS_Android.jar new file mode 100644 index 0000000..591f5f4 Binary files /dev/null and b/src/MyApplication/app/src/MyApplication/app/libs/BaiduLBS_Android.jar differ diff --git a/src/MyApplication/app/src/MyApplication/app/libs/arm64-v8a/libBaiduMapSDK_base_v7_5_3.so b/src/MyApplication/app/src/MyApplication/app/libs/arm64-v8a/libBaiduMapSDK_base_v7_5_3.so new file mode 100644 index 0000000..2935c4c Binary files /dev/null and b/src/MyApplication/app/src/MyApplication/app/libs/arm64-v8a/libBaiduMapSDK_base_v7_5_3.so differ diff --git a/src/MyApplication/app/src/MyApplication/app/libs/arm64-v8a/libgnustl_shared.so b/src/MyApplication/app/src/MyApplication/app/libs/arm64-v8a/libgnustl_shared.so new file mode 100644 index 0000000..be99b75 Binary files /dev/null and b/src/MyApplication/app/src/MyApplication/app/libs/arm64-v8a/libgnustl_shared.so differ diff --git a/src/MyApplication/app/src/MyApplication/app/libs/arm64-v8a/libindoor.so b/src/MyApplication/app/src/MyApplication/app/libs/arm64-v8a/libindoor.so new file mode 100644 index 0000000..bfb6f75 Binary files /dev/null and b/src/MyApplication/app/src/MyApplication/app/libs/arm64-v8a/libindoor.so differ diff --git a/src/MyApplication/app/src/MyApplication/app/libs/arm64-v8a/liblocSDK8b.so b/src/MyApplication/app/src/MyApplication/app/libs/arm64-v8a/liblocSDK8b.so new file mode 100644 index 0000000..9bd868a Binary files /dev/null and b/src/MyApplication/app/src/MyApplication/app/libs/arm64-v8a/liblocSDK8b.so differ diff --git a/src/MyApplication/app/src/MyApplication/app/libs/armeabi-v7a/libBaiduMapSDK_base_v7_5_3.so b/src/MyApplication/app/src/MyApplication/app/libs/armeabi-v7a/libBaiduMapSDK_base_v7_5_3.so new file mode 100644 index 0000000..9aab5e6 Binary files /dev/null and b/src/MyApplication/app/src/MyApplication/app/libs/armeabi-v7a/libBaiduMapSDK_base_v7_5_3.so differ diff --git a/src/MyApplication/app/src/MyApplication/app/libs/armeabi-v7a/libgnustl_shared.so b/src/MyApplication/app/src/MyApplication/app/libs/armeabi-v7a/libgnustl_shared.so new file mode 100644 index 0000000..96c22a2 Binary files /dev/null and b/src/MyApplication/app/src/MyApplication/app/libs/armeabi-v7a/libgnustl_shared.so differ diff --git a/src/MyApplication/app/src/MyApplication/app/libs/armeabi-v7a/libindoor.so b/src/MyApplication/app/src/MyApplication/app/libs/armeabi-v7a/libindoor.so new file mode 100644 index 0000000..b59be91 Binary files /dev/null and b/src/MyApplication/app/src/MyApplication/app/libs/armeabi-v7a/libindoor.so differ diff --git a/src/MyApplication/app/src/MyApplication/app/libs/armeabi-v7a/liblocSDK8b.so b/src/MyApplication/app/src/MyApplication/app/libs/armeabi-v7a/liblocSDK8b.so new file mode 100644 index 0000000..aa90e76 Binary files /dev/null and b/src/MyApplication/app/src/MyApplication/app/libs/armeabi-v7a/liblocSDK8b.so differ diff --git a/src/MyApplication/app/src/MyApplication/app/libs/armeabi/libBaiduMapSDK_base_v7_5_3.so b/src/MyApplication/app/src/MyApplication/app/libs/armeabi/libBaiduMapSDK_base_v7_5_3.so new file mode 100644 index 0000000..373e67f Binary files /dev/null and b/src/MyApplication/app/src/MyApplication/app/libs/armeabi/libBaiduMapSDK_base_v7_5_3.so differ diff --git a/src/MyApplication/app/src/MyApplication/app/libs/armeabi/libgnustl_shared.so b/src/MyApplication/app/src/MyApplication/app/libs/armeabi/libgnustl_shared.so new file mode 100644 index 0000000..5cf6d20 Binary files /dev/null and b/src/MyApplication/app/src/MyApplication/app/libs/armeabi/libgnustl_shared.so differ diff --git a/src/MyApplication/app/src/MyApplication/app/libs/armeabi/libindoor.so b/src/MyApplication/app/src/MyApplication/app/libs/armeabi/libindoor.so new file mode 100644 index 0000000..a0879cf Binary files /dev/null and b/src/MyApplication/app/src/MyApplication/app/libs/armeabi/libindoor.so differ diff --git a/src/MyApplication/app/src/MyApplication/app/libs/armeabi/liblocSDK8b.so b/src/MyApplication/app/src/MyApplication/app/libs/armeabi/liblocSDK8b.so new file mode 100644 index 0000000..4083291 Binary files /dev/null and b/src/MyApplication/app/src/MyApplication/app/libs/armeabi/liblocSDK8b.so differ diff --git a/src/MyApplication/app/src/MyApplication/app/libs/x86/libBaiduMapSDK_base_v7_5_3.so b/src/MyApplication/app/src/MyApplication/app/libs/x86/libBaiduMapSDK_base_v7_5_3.so new file mode 100644 index 0000000..5554ff8 Binary files /dev/null and b/src/MyApplication/app/src/MyApplication/app/libs/x86/libBaiduMapSDK_base_v7_5_3.so differ diff --git a/src/MyApplication/app/src/MyApplication/app/libs/x86/libgnustl_shared.so b/src/MyApplication/app/src/MyApplication/app/libs/x86/libgnustl_shared.so new file mode 100644 index 0000000..1eae31c Binary files /dev/null and b/src/MyApplication/app/src/MyApplication/app/libs/x86/libgnustl_shared.so differ diff --git a/src/MyApplication/app/src/MyApplication/app/libs/x86/libindoor.so b/src/MyApplication/app/src/MyApplication/app/libs/x86/libindoor.so new file mode 100644 index 0000000..1de0a2c Binary files /dev/null and b/src/MyApplication/app/src/MyApplication/app/libs/x86/libindoor.so differ diff --git a/src/MyApplication/app/src/MyApplication/app/libs/x86/liblocSDK8b.so b/src/MyApplication/app/src/MyApplication/app/libs/x86/liblocSDK8b.so new file mode 100644 index 0000000..ca234f1 Binary files /dev/null and b/src/MyApplication/app/src/MyApplication/app/libs/x86/liblocSDK8b.so differ diff --git a/src/MyApplication/app/src/MyApplication/app/libs/x86_64/libBaiduMapSDK_base_v7_5_3.so b/src/MyApplication/app/src/MyApplication/app/libs/x86_64/libBaiduMapSDK_base_v7_5_3.so new file mode 100644 index 0000000..a1c0b4b Binary files /dev/null and b/src/MyApplication/app/src/MyApplication/app/libs/x86_64/libBaiduMapSDK_base_v7_5_3.so differ diff --git a/src/MyApplication/app/src/MyApplication/app/libs/x86_64/libgnustl_shared.so b/src/MyApplication/app/src/MyApplication/app/libs/x86_64/libgnustl_shared.so new file mode 100644 index 0000000..0149273 Binary files /dev/null and b/src/MyApplication/app/src/MyApplication/app/libs/x86_64/libgnustl_shared.so differ diff --git a/src/MyApplication/app/src/MyApplication/app/libs/x86_64/libindoor.so b/src/MyApplication/app/src/MyApplication/app/libs/x86_64/libindoor.so new file mode 100644 index 0000000..80a00c6 Binary files /dev/null and b/src/MyApplication/app/src/MyApplication/app/libs/x86_64/libindoor.so differ diff --git a/src/MyApplication/app/src/MyApplication/app/libs/x86_64/liblocSDK8b.so b/src/MyApplication/app/src/MyApplication/app/libs/x86_64/liblocSDK8b.so new file mode 100644 index 0000000..ff464c5 Binary files /dev/null and b/src/MyApplication/app/src/MyApplication/app/libs/x86_64/liblocSDK8b.so differ diff --git a/src/MyApplication/app/src/MyApplication/app/proguard-rules.pro b/src/MyApplication/app/src/MyApplication/app/proguard-rules.pro new file mode 100644 index 0000000..25c3acd --- /dev/null +++ b/src/MyApplication/app/src/MyApplication/app/proguard-rules.pro @@ -0,0 +1,39 @@ +# 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 + +#-dontoptimize +#-ignorewarnings +#-keeppackagenames com.baidu.** +#-keepattributes Exceptions,InnerClasses,Signature,Deprecated,SourceFile,LineNumberTable,LocalVariable*Table,*Annotation*,Synthetic,EnclosingMethod + +#-dontwarn com.baidu.** +#-dontwarn com.baidu.navisdk.** +#-dontwarn com.baidu.navi.** + +#-keep class com.baidu.** { *; } +#-keep interface com.baidu.** { *; } + +#-keep class vi.com.gdi.** { *; } + +#-dontwarn com.google.protobuf.** +#-keep class com.google.protobuf.** { *;} +#-keep interface com.google.protobuf.** { *;} diff --git a/src/MyApplication/app/src/androidTest/java/com/example/myapplication/ExampleInstrumentedTest.java b/src/MyApplication/app/src/MyApplication/app/src/androidTest/java/com/example/myapplication/ExampleInstrumentedTest.java similarity index 100% rename from src/MyApplication/app/src/androidTest/java/com/example/myapplication/ExampleInstrumentedTest.java rename to src/MyApplication/app/src/MyApplication/app/src/androidTest/java/com/example/myapplication/ExampleInstrumentedTest.java diff --git a/src/MyApplication/app/src/main/AndroidManifest.xml b/src/MyApplication/app/src/MyApplication/app/src/main/AndroidManifest.xml similarity index 81% rename from src/MyApplication/app/src/main/AndroidManifest.xml rename to src/MyApplication/app/src/MyApplication/app/src/main/AndroidManifest.xml index d1fcaed..d7321f2 100644 --- a/src/MyApplication/app/src/main/AndroidManifest.xml +++ b/src/MyApplication/app/src/MyApplication/app/src/main/AndroidManifest.xml @@ -1,98 +1,86 @@ - - - - - - - - - + + + - - - - - + + + + + - - - - - @@ -106,10 +94,6 @@ android:name="android.app.lib_name" android:value="" /> - - - - \ No newline at end of file diff --git a/src/MyApplication/app/src/main/java/com/example/myapplication/JsonParser.java b/src/MyApplication/app/src/MyApplication/app/src/main/java/com/example/myapplication/JsonParser.java similarity index 100% rename from src/MyApplication/app/src/main/java/com/example/myapplication/JsonParser.java rename to src/MyApplication/app/src/MyApplication/app/src/main/java/com/example/myapplication/JsonParser.java diff --git a/src/MyApplication/app/src/main/java/com/example/myapplication/MainActivity.java b/src/MyApplication/app/src/MyApplication/app/src/main/java/com/example/myapplication/MainActivity.java similarity index 100% rename from src/MyApplication/app/src/main/java/com/example/myapplication/MainActivity.java rename to src/MyApplication/app/src/MyApplication/app/src/main/java/com/example/myapplication/MainActivity.java diff --git a/src/MyApplication/app/src/main/java/com/example/myapplication/MapActivity1.java b/src/MyApplication/app/src/MyApplication/app/src/main/java/com/example/myapplication/MapActivity1.java similarity index 100% rename from src/MyApplication/app/src/main/java/com/example/myapplication/MapActivity1.java rename to src/MyApplication/app/src/MyApplication/app/src/main/java/com/example/myapplication/MapActivity1.java diff --git a/src/MyApplication/app/src/main/java/com/example/myapplication/SpeechApplication.java b/src/MyApplication/app/src/MyApplication/app/src/main/java/com/example/myapplication/SpeechApplication.java similarity index 100% rename from src/MyApplication/app/src/main/java/com/example/myapplication/SpeechApplication.java rename to src/MyApplication/app/src/MyApplication/app/src/main/java/com/example/myapplication/SpeechApplication.java diff --git a/src/MyApplication/app/src/main/java/com/example/myapplication/WNaviGuideActivity.java b/src/MyApplication/app/src/MyApplication/app/src/main/java/com/example/myapplication/WNaviGuideActivity.java similarity index 94% rename from src/MyApplication/app/src/main/java/com/example/myapplication/WNaviGuideActivity.java rename to src/MyApplication/app/src/MyApplication/app/src/main/java/com/example/myapplication/WNaviGuideActivity.java index 7d561af..71598f6 100644 --- a/src/MyApplication/app/src/main/java/com/example/myapplication/WNaviGuideActivity.java +++ b/src/MyApplication/app/src/MyApplication/app/src/main/java/com/example/myapplication/WNaviGuideActivity.java @@ -1,5 +1,8 @@ package com.example.myapplication; +<<<<<<< HEAD:src/MyApplication/app/src/main/java/com/example/myapplication/WNaviGuideActivity.java import android.annotation.SuppressLint; +======= +>>>>>>> dc8dfd73a8a58508fec99a79684ba5574328c7e7:src/MyApplication/app/src/MyApplication/app/src/main/java/com/example/myapplication/WNaviGuideActivity.java import android.app.Activity; import android.content.Intent; import android.content.pm.PackageManager; @@ -49,7 +52,10 @@ public class WNaviGuideActivity extends Activity { Handler handler = new Handler() { +<<<<<<< HEAD:src/MyApplication/app/src/main/java/com/example/myapplication/WNaviGuideActivity.java @SuppressLint("HandlerLeak") +======= +>>>>>>> dc8dfd73a8a58508fec99a79684ba5574328c7e7:src/MyApplication/app/src/MyApplication/app/src/main/java/com/example/myapplication/WNaviGuideActivity.java @Override public void handleMessage(Message msg) { super.handleMessage(msg); diff --git a/src/MyApplication/app/src/MyApplication/app/src/main/java/com/example/myapplication/itemfound.java b/src/MyApplication/app/src/MyApplication/app/src/main/java/com/example/myapplication/itemfound.java new file mode 100644 index 0000000..232730e --- /dev/null +++ b/src/MyApplication/app/src/MyApplication/app/src/main/java/com/example/myapplication/itemfound.java @@ -0,0 +1,224 @@ +package com.example.myapplication; + +import androidx.appcompat.app.AppCompatActivity; +import android.content.Intent; +import android.os.Bundle; +import android.view.View; +import android.widget.Button; + +import com.baidu.mapapi.bikenavi.BikeNavigateHelper; +import com.baidu.mapapi.walknavi.adapter.IWRoutePlanListener; +import com.baidu.mapapi.walknavi.model.WalkRoutePlanError; +import com.baidu.mapapi.walknavi.params.*; +import com.baidu.mapapi.CoordType; +import com.baidu.mapapi.SDKInitializer; +import com.baidu.mapapi.model.LatLng; +import java.util.ArrayList; +import java.util.List; + +import android.widget.ImageButton; +import android.widget.TextView; +import android.annotation.SuppressLint; +import android.os.Bundle; +import com.baidu.baidunavis.BaiduNaviParams; +import com.baidu.mapapi.SDKInitializer; +import com.baidu.mapapi.map.MapView; +import com.baidu.mapapi.model.LatLng; +import com.baidu.mapapi.walknavi.WalkNavigateHelper; +import com.baidu.mapapi.walknavi.adapter.IWEngineInitListener; +import com.baidu.mapapi.walknavi.params.WalkNaviLaunchParam; + +public class itemfound extends AppCompatActivity { + private WalkNavigateHelper helper = null; + + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + + //initPermissions(); // 初始化权限 + setContentView(R.layout.activity_itemfound); // 填充视图 + + // 点击按钮开始导航 + Button imageButton = findViewById(R.id.button_item_keys); + imageButton.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) { + // 初始化步行导航 + startBikeNavi(); + } + }); + Button imageButtonwallet = findViewById(R.id.button_item_wallet); + imageButtonwallet.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) { + // 初始化步行导航 + startBikeNavi(); + } + }); + } + // 初始化权限 + /* + private void initPermissions() { + if (Build.VERSION.SDK_INT >= 23) { + ArrayList permissionsList = new ArrayList<>(); + String[] permissions = { + Manifest.permission.ACCESS_NETWORK_STATE, + Manifest.permission.INTERNET, + Manifest.permission.ACCESS_COARSE_LOCATION, + Manifest.permission.ACCESS_FINE_LOCATION, + Manifest.permission.WRITE_EXTERNAL_STORAGE, + }; + + for (String perm : permissions) { + if (PackageManager.PERMISSION_GRANTED != checkSelfPermission(perm)) { + permissionsList.add(perm); + // 进入到这里代表没有权限. + } + if (!permissionsList.isEmpty()) { + String[] strings = new String[permissionsList.size()]; + requestPermissions(permissionsList.toArray(strings), 0); + } + } + + } + }*/ + private void startBikeNavi() { + //Log.d("=========", "startBikeNavi"); + try { + helper = WalkNavigateHelper.getInstance(); + helper.initNaviEngine(this, new IWEngineInitListener() { + @Override + public void engineInitSuccess() { + // Log.d("=========", "BikeNavi engineInitSuccess引擎初始化成功"); + startWebNavi(); + } + + @Override + public void engineInitFail() { + // Log.d("=========", "BikeNavi engineInitFail"); + BikeNavigateHelper.getInstance().unInitNaviEngine(); + } + }); + } catch (Exception e) { + // Log.d("=========", "startBikeNavi Exception"); + e.printStackTrace(); + } + } + private void startWebNavi() { + //起终点位置 + LatLng walkStartNode = new LatLng(39.110132, 117.358512); + LatLng walkEndNode = new LatLng(39.111348, 117.358940); + + WalkRouteNodeInfo startNode = new WalkRouteNodeInfo(); + startNode.setLocation(walkStartNode); + WalkRouteNodeInfo endNode = new WalkRouteNodeInfo(); + endNode.setLocation(walkEndNode); + // 官网 + //构造WalkNaviLaunchParam + WalkNaviLaunchParam walkParam = new WalkNaviLaunchParam().startNodeInfo(startNode).endNodeInfo(endNode); + //获取WalkNavigateHelper实例 //发起算路 + helper.routePlanWithRouteNode(walkParam, new IWRoutePlanListener() { + @Override + public void onRoutePlanStart() { + // Log.d("=======", "WalkNavi onRoutePlanStart开始步行导航"); + } + + @Override + public void onRoutePlanSuccess() { + // Log.d("========", "onRoutePlanSuccess算路成功"); + Intent intent = new Intent(itemfound.this,WNaviGuideActivity.class); + // intent.setClass(getContext(), WNaviGuideActivity.class); + startActivity(intent); + } + + @Override + public void onRoutePlanFail(WalkRoutePlanError error) { +// Log.d("Walk", "WalkNavi onRoutePlanFail"); + } + + }); + } + + +/* + @Override + protected void onCreate(Bundle savedInstanceState) { + + super.onCreate(savedInstanceState); + setContentView(R.layout.activity_itemfound); + Button find_wallet=findViewById(R.id.button_item_wallet); + Button find_keys=findViewById(R.id.button_item_keys); + find_wallet.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) {//Intent + double locationX; + double locationy; + //BaiduMapNavigation + + + } + }); + find_keys.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) {//Intent + //NaviParaOption para=new Navi(); + + } + }); + }*/ private void startBikeNavi1() { + //Log.d("=========", "startBikeNavi"); + try { + helper = WalkNavigateHelper.getInstance(); + helper.initNaviEngine(this, new IWEngineInitListener() { + @Override + public void engineInitSuccess() { + // Log.d("=========", "BikeNavi engineInitSuccess引擎初始化成功"); + startWebNavi1(); + } + + @Override + public void engineInitFail() { + // Log.d("=========", "BikeNavi engineInitFail"); + BikeNavigateHelper.getInstance().unInitNaviEngine(); + } + }); + } catch (Exception e) { + // Log.d("=========", "startBikeNavi Exception"); + e.printStackTrace(); + } +} + private void startWebNavi1() { + //起终点位置 + LatLng walkStartNode = new LatLng(39.110132, 117.358512); + LatLng walkEndNode = new LatLng(39.112286, 117.359619); + + WalkRouteNodeInfo startNode = new WalkRouteNodeInfo(); + startNode.setLocation(walkStartNode); + WalkRouteNodeInfo endNode = new WalkRouteNodeInfo(); + endNode.setLocation(walkEndNode); + // 官网 + //构造WalkNaviLaunchParam + WalkNaviLaunchParam walkParam = new WalkNaviLaunchParam().startNodeInfo(startNode).endNodeInfo(endNode); + //获取WalkNavigateHelper实例 //发起算路 + helper.routePlanWithRouteNode(walkParam, new IWRoutePlanListener() { + @Override + public void onRoutePlanStart() { + // Log.d("=======", "WalkNavi onRoutePlanStart开始步行导航"); + } + + @Override + public void onRoutePlanSuccess() { + // Log.d("========", "onRoutePlanSuccess算路成功"); + Intent intent = new Intent(itemfound.this,WNaviGuideActivity.class); + // intent.setClass(getContext(), WNaviGuideActivity.class); + startActivity(intent); + } + + @Override + public void onRoutePlanFail(WalkRoutePlanError error) { +// Log.d("Walk", "WalkNavi onRoutePlanFail"); + } + + }); + } +} diff --git a/src/MyApplication/app/src/main/java/com/example/myapplication/jiankang.java b/src/MyApplication/app/src/MyApplication/app/src/main/java/com/example/myapplication/jiankang.java similarity index 100% rename from src/MyApplication/app/src/main/java/com/example/myapplication/jiankang.java rename to src/MyApplication/app/src/MyApplication/app/src/main/java/com/example/myapplication/jiankang.java diff --git a/src/MyApplication/app/src/MyApplication/app/src/main/java/com/example/myapplication/weather/DatabaseHelper.java b/src/MyApplication/app/src/MyApplication/app/src/main/java/com/example/myapplication/weather/DatabaseHelper.java new file mode 100644 index 0000000..95deb0b --- /dev/null +++ b/src/MyApplication/app/src/MyApplication/app/src/main/java/com/example/myapplication/weather/DatabaseHelper.java @@ -0,0 +1,24 @@ +package com.example.myapplication.weather; + +import android.content.Context; +import android.database.sqlite.SQLiteDatabase; +import android.database.sqlite.SQLiteOpenHelper; + +public class DatabaseHelper extends SQLiteOpenHelper { + private static final int VERSION = 1; + private static final String NAME = "weather"; + + public DatabaseHelper(Context context){ + super(context,NAME,null,VERSION); + } + + @Override + public void onCreate(SQLiteDatabase db) { + db.execSQL("create table weather (_id INTEGER PRIMARY KEY AUTOINCREMENT,date text,max_temp text,min_temp text,text text,humidity text,pressure text,wind text,icon text)"); + } + + @Override + public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) { + + } +} \ No newline at end of file diff --git a/src/MyApplication/app/src/MyApplication/app/src/main/java/com/example/myapplication/weather/FlickrFetcher.java b/src/MyApplication/app/src/MyApplication/app/src/main/java/com/example/myapplication/weather/FlickrFetcher.java new file mode 100644 index 0000000..670e37f --- /dev/null +++ b/src/MyApplication/app/src/MyApplication/app/src/main/java/com/example/myapplication/weather/FlickrFetcher.java @@ -0,0 +1,103 @@ +package com.example.myapplication.weather; + +import android.util.Log; + +import org.json.JSONArray; +import org.json.JSONObject; + +import java.io.ByteArrayOutputStream; +import java.io.IOException; +import java.io.InputStream; +import java.net.HttpURLConnection; +import java.net.URL; +import java.util.ArrayList; +import java.util.List; + +//获取数据的二进制数组/字符串形式 +//获取JSON数组 +//解析JSON数组,变成WeatherItem的数组形式 + +public class FlickrFetcher { + public static final String TAG = "FlickrFetcher"; + + public byte[] getUrlBytes(String urlSpec) throws Exception{ + URL url = new URL(urlSpec); + HttpURLConnection connection = (HttpURLConnection) url.openConnection(); +// connection.setInstanceFollowRedirects(false); //跟踪重定向 +// String redirect = connection.getHeaderField("Location"); +// if (redirect != null){ +// connection = (HttpURLConnection)new URL(redirect).openConnection(); +// } + + try{ + ByteArrayOutputStream out = new ByteArrayOutputStream(); + InputStream in = connection.getInputStream(); + + if(connection.getResponseCode() != HttpURLConnection.HTTP_OK){ + throw new IOException(connection.getResponseMessage() + " :with "+urlSpec); + } + + int bytesRead = 0; + byte[] buffer = new byte[1024]; + while((bytesRead = in.read(buffer)) > 0){ + out.write(buffer,0,bytesRead); + } + out.close(); + return out.toByteArray(); + }finally { + connection.disconnect(); + } + } + + public String getUrlString(String urlSpec)throws Exception{ + return new String(getUrlBytes(urlSpec)); + } + + public List fetchItems(String urlSpec){ + List items = new ArrayList<>(); + try{ + String jsonString = getUrlString(urlSpec); + Log.i(TAG,"result: "+jsonString); + JSONObject jsonBody = new JSONObject(jsonString); + parseItems(items,jsonBody); + }catch (Exception e){ + Log.i(TAG,"Failed!"+e); + } + return items; + } + + public JSONObject fetchCity(String urlSpec){ + String locationID = ""; + JSONObject jsonObject = null; + try{ + String jsonString = getUrlString(urlSpec); + Log.i(TAG,"result: "+jsonString); + JSONObject jsonBody = new JSONObject(jsonString); + JSONArray locationJsonArray = jsonBody.getJSONArray("location"); + jsonObject = locationJsonArray.getJSONObject(0); +// locationID = locationJsonArray.getJSONObject(0).getString("id"); +// String lat = locationJsonArray.getJSONObject(0).getString("lat"); +// String lon = locationJsonArray.getJSONObject(0).getString("lon"); + }catch (Exception e){ + Log.i(TAG,"Failed!"+e); + } + return jsonObject; + } + + private void parseItems(List items,JSONObject jsonBody) throws Exception{ //将从url获得的json转换成MarsItem + JSONArray weatherJsonArray = jsonBody.getJSONArray("daily"); + for(int i=0;i= Build.VERSION_CODES.O) { + NotificationChannel channel = new NotificationChannel("to-do" + , "待办消息", + NotificationManager.IMPORTANCE_HIGH); + channel.enableVibration(true); + channel.setVibrationPattern(new long[]{500}); + notificationManager.createNotificationChannel(channel); + builder.setChannelId("to-do"); + notification = builder.build(); + } else { + notification = builder.build(); + } + + notificationManager.notify(0,notification); + System.out.println(notification); + } + + public static void setServiceAlarm(Context context,boolean isOn){ + Intent i = NotificationService.newIntent(context); + PendingIntent pi = PendingIntent.getService(context,0,i,0); + + AlarmManager alarmManager = (AlarmManager) context.getSystemService(Context.ALARM_SERVICE); + + if(isOn){ + alarmManager.setInexactRepeating(AlarmManager.ELAPSED_REALTIME, SystemClock.elapsedRealtime(), + NOTIFICATION_INTERVAL,pi); + }else{ + alarmManager.cancel(pi); + pi.cancel(); + } + } +} diff --git a/src/MyApplication/app/src/MyApplication/app/src/main/java/com/example/myapplication/weather/SettingActivity.java b/src/MyApplication/app/src/MyApplication/app/src/main/java/com/example/myapplication/weather/SettingActivity.java new file mode 100644 index 0000000..8b9f5b7 --- /dev/null +++ b/src/MyApplication/app/src/MyApplication/app/src/main/java/com/example/myapplication/weather/SettingActivity.java @@ -0,0 +1,132 @@ +package com.example.myapplication.weather; + +import android.content.DialogInterface; +import android.content.SharedPreferences; +import android.os.Bundle; +import android.text.Editable; +import android.text.TextWatcher; +import android.view.View; +import android.widget.EditText; +import android.widget.LinearLayout; +import android.widget.TextView; +import android.widget.Toast; + +import androidx.annotation.Nullable; +import androidx.appcompat.app.AlertDialog; +import androidx.appcompat.app.AppCompatActivity; + +import com.example.myapplication.R; + +public class SettingActivity extends AppCompatActivity { + private EditText location; + private TextView unit_text; + private TextView send_text; + private LinearLayout page; + private LinearLayout unit; + private LinearLayout send; + private String city; + + @Override + protected void onCreate(@Nullable Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + setContentView(R.layout.activity_setting); + + location = (EditText) findViewById(R.id.location); + unit = (LinearLayout)findViewById(R.id.unit); + page = (LinearLayout)findViewById(R.id.page); + unit_text = (TextView)findViewById(R.id.unit_text); + send = (LinearLayout)findViewById(R.id.send); + send_text = (TextView)findViewById(R.id.send_text); + + SharedPreferences pref = getSharedPreferences("setting",MODE_PRIVATE); + location.setText(pref.getString("city","北京")); + unit_text.setText(pref.getString("unit","摄氏度")); + send_text.setText(pref.getString("send","是")); + + page.setOnClickListener(new View.OnClickListener(){ + public void onClick(View v){ + location.clearFocus(); + } + }); + + location.addTextChangedListener(new TextWatcher() { + @Override + public void beforeTextChanged(CharSequence s, int start, int count, int after) { + } + + @Override + public void onTextChanged(CharSequence s, int start, int before, int count) { + city = s.toString(); + SharedPreferences.Editor editor = getSharedPreferences("setting",MODE_PRIVATE).edit(); + editor.putString("city",city); + editor.commit(); + } + + @Override + public void afterTextChanged(Editable s) { + + } + }); + + unit.setOnClickListener(new View.OnClickListener(){ + public void onClick(View v){ + click(); + } + }); + + send.setOnClickListener(new View.OnClickListener(){ + public void onClick(View v){ + click2(); + } + }); + } + + //点击按钮弹出一个单选对话框 + public void click() { + AlertDialog.Builder builder = new AlertDialog.Builder(this); + builder.setTitle("请选择温度单位"); + final String items[] = {"摄氏度","华氏度"}; + +//-1代表没有条目被选中 + builder.setSingleChoiceItems(items, -1, new DialogInterface.OnClickListener() { + @Override + public void onClick(DialogInterface dialog, int which) { + //1.把选中的条目取出来 + String item = items[which]; + Toast.makeText(getApplicationContext(),item.toString(),Toast.LENGTH_LONG).show(); + unit_text.setText(item.toString()); + SharedPreferences.Editor editor = getSharedPreferences("setting",MODE_PRIVATE).edit(); + editor.putString("unit",item.toString()); + editor.commit(); + //2.然后把对话框关闭 + dialog.dismiss(); + } + }); +//一样要show + builder.show(); + } + + public void click2() { + AlertDialog.Builder builder = new AlertDialog.Builder(this); + builder.setTitle("请选择是否开启通知"); + final String items[] = {"是","否"}; + +//-1代表没有条目被选中 + builder.setSingleChoiceItems(items, -1, new DialogInterface.OnClickListener() { + @Override + public void onClick(DialogInterface dialog, int which) { + //1.把选中的条目取出来 + String item = items[which]; + Toast.makeText(getApplicationContext(),item.toString(),Toast.LENGTH_LONG).show(); + send_text.setText(item.toString()); + SharedPreferences.Editor editor = getSharedPreferences("setting",MODE_PRIVATE).edit(); + editor.putString("send",item.toString()); + editor.commit(); + //2.然后把对话框关闭 + dialog.dismiss(); + } + }); +//一样要show + builder.show(); + } +} diff --git a/src/MyApplication/app/src/MyApplication/app/src/main/java/com/example/myapplication/weather/SingleFragmentActivity.java b/src/MyApplication/app/src/MyApplication/app/src/main/java/com/example/myapplication/weather/SingleFragmentActivity.java new file mode 100644 index 0000000..e9478b3 --- /dev/null +++ b/src/MyApplication/app/src/MyApplication/app/src/main/java/com/example/myapplication/weather/SingleFragmentActivity.java @@ -0,0 +1,30 @@ +package com.example.myapplication.weather; + +import android.os.Bundle; + +import androidx.annotation.Nullable; +import androidx.appcompat.app.AppCompatActivity; +import androidx.fragment.app.Fragment; +import androidx.fragment.app.FragmentManager; + +public abstract class SingleFragmentActivity extends AppCompatActivity { + protected abstract Fragment createFragment(); + protected abstract int getLayoutId(); + protected abstract int getFragmentId(); + + @Override + protected void onCreate(@Nullable Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + setContentView(getLayoutId()); + + FragmentManager fm = getSupportFragmentManager(); + Fragment fragment = fm.findFragmentById(getFragmentId()); + + if(fragment == null){ + fragment = createFragment(); + fm.beginTransaction(). + add(getFragmentId(),fragment) + .commit(); + } + } +} diff --git a/src/MyApplication/app/src/MyApplication/app/src/main/java/com/example/myapplication/weather/WeatherDetailActivity.java b/src/MyApplication/app/src/MyApplication/app/src/main/java/com/example/myapplication/weather/WeatherDetailActivity.java new file mode 100644 index 0000000..e98a864 --- /dev/null +++ b/src/MyApplication/app/src/MyApplication/app/src/main/java/com/example/myapplication/weather/WeatherDetailActivity.java @@ -0,0 +1,34 @@ +package com.example.myapplication.weather; + +import android.content.Context; +import android.content.Intent; + +import androidx.fragment.app.Fragment; + +import com.example.myapplication.R; + +public class WeatherDetailActivity extends SingleFragmentActivity{ + public static final String EXTRA_WEATHER_ITEM = "com.example.weather.weatherItem"; + + @Override + protected Fragment createFragment() { + WeatherItem weatherItem = (WeatherItem)getIntent().getSerializableExtra(EXTRA_WEATHER_ITEM); + return WeatherDetailFragment.newInstance(weatherItem); + } + + @Override + protected int getLayoutId() { + return R.layout.activity_detail; + } + + @Override + protected int getFragmentId() { + return R.id.detail_container; + } + + public static Intent newIntent(Context packageContext, WeatherItem weatherItem){ + Intent intent = new Intent(packageContext,WeatherDetailActivity.class); + intent.putExtra(EXTRA_WEATHER_ITEM,weatherItem); + return intent; + } +} diff --git a/src/MyApplication/app/src/MyApplication/app/src/main/java/com/example/myapplication/weather/WeatherDetailFragment.java b/src/MyApplication/app/src/MyApplication/app/src/main/java/com/example/myapplication/weather/WeatherDetailFragment.java new file mode 100644 index 0000000..9dc2b31 --- /dev/null +++ b/src/MyApplication/app/src/MyApplication/app/src/main/java/com/example/myapplication/weather/WeatherDetailFragment.java @@ -0,0 +1,133 @@ +package com.example.myapplication.weather; + +import android.content.Context; +import android.content.Intent; +import android.graphics.drawable.Drawable; +import android.os.Bundle; +import android.util.Log; +import android.view.LayoutInflater; +import android.view.Menu; +import android.view.MenuInflater; +import android.view.MenuItem; +import android.view.View; +import android.view.ViewGroup; +import android.widget.ImageView; +import android.widget.TextView; + +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; +import androidx.fragment.app.Fragment; + +import com.example.myapplication.R; + +public class WeatherDetailFragment extends Fragment { + private WeatherItem mWeatherItem; //用来设置UI + + private TextView mDeatilDate; + private TextView mDetailMaxTemp; + private TextView mDetailMinTemp; + private ImageView mDetialIcon; + private TextView mDetailDesc; + private TextView mDetailHumidity; + private TextView mDetailPressure; + private TextView mDetailWind; + + private static final String TAG = "WeatherDetailFragment"; + private static final String ARG_ITEM = "args_item"; + private String unit_text = "°"; + + public static WeatherDetailFragment newInstance(WeatherItem weatherItem) { + Bundle args = new Bundle(); + args.putSerializable(ARG_ITEM,weatherItem); + WeatherDetailFragment fragment = new WeatherDetailFragment(); + fragment.setArguments(args); + return fragment; + } + + //获取drawable图标资源的id + public int getIconId(Context mContext, String icon){ + int i= getResources().getIdentifier(icon, "drawable", mContext.getPackageName()) ; + if(i>0){ + Log.i(TAG,"Success to get drawable resoure"); + }else{ + Log.i(TAG,"Fail to get drawable resoure"); + } + return i; + } + + @Override + public void onCreate(@Nullable Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + setHasOptionsMenu(true); + mWeatherItem = (WeatherItem) getArguments().getSerializable(ARG_ITEM); + } + + @Nullable + @Override + public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { + View v = inflater.inflate(R.layout.fragment_weather_detail,container,false); + if(getActivity().getSharedPreferences("setting",Context.MODE_PRIVATE).getString("unit","摄氏度")=="华氏度"){ + unit_text = "℉"; + } + + mDeatilDate = (TextView) v.findViewById(R.id.detail_date); + mDetailMaxTemp = (TextView) v.findViewById(R.id.detail_max_temp); + mDetailMinTemp = (TextView) v.findViewById(R.id.detail_min_temp); + mDetialIcon = (ImageView) v.findViewById(R.id.detail_icon); + mDetailHumidity = (TextView) v.findViewById(R.id.detail_humidity); + mDetailPressure = (TextView) v.findViewById(R.id.detail_pressure); + mDetailWind = (TextView) v.findViewById(R.id.detail_wind); + mDetailDesc = (TextView) v.findViewById(R.id.detail_desc); + + mDeatilDate.setText(mWeatherItem.getData()); + mDetailMaxTemp.setText(mWeatherItem.getMax_temp()+unit_text); + mDetailMinTemp.setText(mWeatherItem.getMin_temp()+unit_text); + String icon = "a"+mWeatherItem.getIcon(); + int id = getIconId(getContext(),icon); + Drawable drawable = getResources().getDrawable(id); + mDetialIcon.setImageDrawable(drawable); + mDetailHumidity.setText("Humidity: "+mWeatherItem.getHumidity()+" %"); + mDetailPressure.setText("Pressure: "+mWeatherItem.getPressure()+" hPa"); + mDetailWind.setText("Wind: "+mWeatherItem.getWind()+" km/h SE"); + mDetailDesc.setText(mWeatherItem.getText()); + + return v; + } + + public String createMessage(){ + String message = ""; + message += "今天的天气状况为:"+mWeatherItem.getText(); + message += " 今天的最高温度是: "+mWeatherItem.getMax_temp(); + message += " 今天的最低温度是: "+mWeatherItem.getMin_temp(); + message += " 今天的湿度为: "+mWeatherItem.getHumidity(); + message += " 今天的风速为:"+mWeatherItem.getWind(); + message += " 今天的气压为:"+mWeatherItem.getPressure(); + message += " 希望您拥有美好的一天!"; + return message; + } + + @Override + public void onCreateOptionsMenu(@NonNull Menu menu, @NonNull MenuInflater inflater) { + super.onCreateOptionsMenu(menu, inflater); + if(getActivity().findViewById(R.id.fragment_container)==null){ //是手机模式 + inflater.inflate(R.menu.fragment_detail,menu); + } + } + + @Override + public boolean onOptionsItemSelected(@NonNull MenuItem item) { + switch (item.getItemId()){ + case R.id.menu_setting: + Intent intent = new Intent(getActivity(),SettingActivity.class); + startActivity(intent); + return true; + case R.id.menu_share: + Intent i = new Intent(Intent.ACTION_SEND); + i.setType("text/plain"); + i.putExtra(Intent.EXTRA_TEXT,createMessage()); + startActivity(i); + return true; + } + return super.onOptionsItemSelected(item); + } +} diff --git a/src/MyApplication/app/src/MyApplication/app/src/main/java/com/example/myapplication/weather/WeatherFragment.java b/src/MyApplication/app/src/MyApplication/app/src/main/java/com/example/myapplication/weather/WeatherFragment.java new file mode 100644 index 0000000..81c9a71 --- /dev/null +++ b/src/MyApplication/app/src/MyApplication/app/src/main/java/com/example/myapplication/weather/WeatherFragment.java @@ -0,0 +1,372 @@ +package com.example.myapplication.weather; + +import android.app.Activity; +import android.content.ContentValues; +import android.content.Context; +import android.content.Intent; +import android.content.SharedPreferences; +import android.database.Cursor; +import android.database.sqlite.SQLiteDatabase; +import android.graphics.drawable.Drawable; +import android.net.ConnectivityManager; +import android.net.Uri; +import android.os.AsyncTask; +import android.os.Bundle; +import android.util.Log; +import android.view.LayoutInflater; +import android.view.Menu; +import android.view.MenuInflater; +import android.view.MenuItem; +import android.view.View; +import android.view.ViewGroup; +import android.widget.ImageView; +import android.widget.TextView; + +import androidx.annotation.NonNull; +import androidx.annotation.Nullable; +import androidx.fragment.app.Fragment; +import androidx.recyclerview.widget.LinearLayoutManager; +import androidx.recyclerview.widget.RecyclerView; + +import com.example.myapplication.R; + +import org.json.JSONObject; + +import java.util.ArrayList; +import java.util.List; + +public class WeatherFragment extends Fragment { + private static final String TAG="WeatherFragment"; + private RecyclerView mWeatherRecyclerView; + //今日天气板块 + private TextView mTodayTime; + private TextView mTodayMaxTemp; + private TextView mTodayMinTemp; + private ImageView mTodayIcon; + private TextView mTodayIconDesc; + + private String location = "北京"; //记录当前的城市ID,如果有变化,需要刷新你页面 + private String temp_unit = "摄氏度"; + private String unit_text = "°"; + private List mItems = new ArrayList<>(); //七天的天气详情对象 + + private Callbacks mCallbacks; + + private SQLiteDatabase mDatabase; + + public static WeatherFragment newInstance(){ + return new WeatherFragment(); + } + + /*回调函数,fragment调用activity的函数,这样点击列表后,方便出发事件,不应该用fragment执行其他fragment的细节*/ + public interface Callbacks{ + void onWeatherSelected(WeatherItem weatherItem); + } + + public static Intent newIntent(Context context){ + Intent i = new Intent(context, MainActivity1.class); + return i; + } + + @Override + public void onAttach(Activity activity) { + super.onAttach(activity); + mCallbacks = (Callbacks)activity; + } + + @Override + public void onDetach() { + super.onDetach(); + mCallbacks = null; + } + + @Override + public void onCreate(@Nullable Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + SharedPreferences.Editor editor = getActivity().getSharedPreferences("setting",Context.MODE_PRIVATE).edit(); + setRetainInstance(true); + + //设置其他选项,让manager知道fragment替activity进行处理 + setHasOptionsMenu(true); + + //创建数据库 + mDatabase = new DatabaseHelper(getActivity()).getWritableDatabase(); + + new FetchItemsTask().execute(); //异步执行,获取网站上的json内容 + } + + @Nullable + @Override + public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { + View v = inflater.inflate(R.layout.fragment_weather,container,false); + + mWeatherRecyclerView = (RecyclerView) v.findViewById(R.id.fragment_weather_recycler_view); + mWeatherRecyclerView.setLayoutManager(new LinearLayoutManager(getActivity())); + + //绑定今日天气模块 + mTodayTime = (TextView)v.findViewById(R.id.today_time); + mTodayMaxTemp = (TextView)v.findViewById(R.id.today_max_temp); + mTodayMinTemp = (TextView)v.findViewById(R.id.today_min_temp); + mTodayIcon = (ImageView)v.findViewById(R.id.today_icon); + mTodayIconDesc = (TextView)v.findViewById(R.id.today_icon_desc); + return v; + } + + @Override + public void onResume() { + super.onResume(); + SharedPreferences pref = getActivity().getSharedPreferences("setting",Context.MODE_PRIVATE); + String city = pref.getString("city","北京"); + String unit = pref.getString("unit","摄氏度"); + String send = pref.getString("send","是"); + if(city!=location){ //在重新启动页面的时候,如果地址改变了,需要刷新 + location = city; + new FetchItemsTask().execute(); //异步执行,获取网站上的json内容 + return; + } + if(unit!=temp_unit){ //在重新启动页面的时候,如果地址改变了,需要刷新 + temp_unit = unit; + new FetchItemsTask().execute(); //异步执行,获取网站上的json内容 + return; + } + if (send=="是"){ + //开启后台服务,启动定时器,发送通知消息 + NotificationService.setServiceAlarm(getActivity(),true); + }else{ + NotificationService.setServiceAlarm(getActivity(),false); + } + } + + @Override + public void onCreateOptionsMenu(@NonNull Menu menu, @NonNull MenuInflater inflater) { + super.onCreateOptionsMenu(menu, inflater); + inflater.inflate(R.menu.fragment_weather,menu); + } + + @Override + public boolean onOptionsItemSelected(@NonNull MenuItem item) { + SharedPreferences pref = getActivity().getSharedPreferences("setting",Context.MODE_PRIVATE); + switch (item.getItemId()){ + case R.id.menu_setting: + Intent intent = new Intent(getActivity(),SettingActivity.class); + startActivity(intent); + return true; + case R.id.menu_map: + //调用腾讯地图 + Intent intent_txmap = new Intent(); + System.out.println("lat is :"+pref.getString("lat","39.90498")); + System.out.println("lon is :"+pref.getString("lon","116.40528")); + intent_txmap.setData(Uri.parse("qqmap://map/geocoder?coord="+ + pref.getString("lat","39.90498")+ + "," +pref.getString("lon","116.40528")+ + "&referer=BJWBZ-EXJ3U-IUGV4-4A74J-754OJ-KXFVX")); + startActivity(intent_txmap); + } + return super.onOptionsItemSelected(item); + } + + //获取drawable图标资源的id + public int getIconId(Context mContext, String icon){ + int i= getResources().getIdentifier(icon, "drawable", mContext.getPackageName()) ; + if(i>0){ + //Log.i(TAG,"Success to get drawable resoure"); + }else{ + Log.i(TAG,"Fail to get drawable resoure"); + } + return i; + } + + // 异步从URL获取天气对象 + private class FetchItemsTask extends AsyncTask> { + SharedPreferences.Editor editor = getActivity().getSharedPreferences("setting",Context.MODE_PRIVATE).edit(); + SharedPreferences pref = getActivity().getSharedPreferences("setting",Context.MODE_PRIVATE); + String city = pref.getString("city","北京"); + String unit = pref.getString("unit","摄氏度"); + String city_url = "https://geoapi.qweather.com/v2/city/lookup?location="+city+"&key=6b01a87a7f3347a19c7b6b84f2ba35e3"; + + @Override + protected List doInBackground(Void... voids) { + List weatherItems = new ArrayList<>(); + unit_text = "°"; + if(unit=="华氏度"){ + unit_text = "℉"; + } + + System.out.println("network is :"+isNetworkConnected(getActivity().getApplicationContext())); + //如果没有网络连接,从数据库获取信息 + if(!isNetworkConnected(getActivity().getApplicationContext())){ + Cursor cursor = mDatabase.query ("weather",null,null,null,null,null,null); + cursor.moveToFirst(); + for(int i=0;i weatherItems) { + mItems = weatherItems; + + SharedPreferences.Editor editor = getActivity().getSharedPreferences("setting", Context.MODE_PRIVATE).edit(); + + //实现今天天气部分的UI + WeatherItem item = mItems.get(0); + mTodayTime.setText("Today,"+location); + mTodayMaxTemp.setText(item.getMax_temp()+unit_text); + editor.putString("max_temp",item.getMax_temp()); + mTodayMinTemp.setText(item.getMin_temp()+unit_text); + editor.putString("min_temp",item.getMin_temp()); + mTodayIconDesc.setText(item.getText()); + editor.putString("text",item.getText()); + String icon = "a"+item.getIcon(); + int id = getIconId(getContext(),icon); + Drawable drawable = getResources().getDrawable(id); + mTodayIcon.setImageDrawable(drawable); + + editor.commit(); + + //实现recyclerview部分的UI + setupAdapter(); + + //如果是ipad,就手动更新详情页面 + if(getActivity().findViewById(R.id.detail_container)!=null){ + mCallbacks.onWeatherSelected(item); + } + } + } + + public class WeatherHolder extends RecyclerView.ViewHolder implements View.OnClickListener{ + private WeatherItem mWeatherItem; + private TextView mItemMaxWeather; + private TextView mItemMinWeather; + private ImageView mItemIcon; + private TextView mItemDate; + private TextView mItemDesc; + + public void setDay(String day){ + mItemDate.setText(day); + } + + public WeatherHolder(View itemView){ + super(itemView); + itemView.setOnClickListener(this); + mItemMaxWeather = (TextView) itemView.findViewById(R.id.item_max_weather); + mItemMinWeather = (TextView) itemView.findViewById(R.id.item_min_weather); + mItemIcon = (ImageView) itemView.findViewById(R.id.item_icon); + mItemDate = (TextView) itemView.findViewById(R.id.item_date); + mItemDesc = (TextView) itemView.findViewById(R.id.item_desc); + } + + public void bindWeatherItem(WeatherItem weatherItem){ + mWeatherItem = weatherItem; + mItemMaxWeather.setText(weatherItem.getMax_temp()+unit_text); + mItemMinWeather.setText(weatherItem.getMin_temp()+unit_text); + String icon = "a"+weatherItem.getIcon(); + int id = getIconId(getContext(),icon); + Drawable drawable = getResources().getDrawable(id); + mItemIcon.setImageDrawable(drawable); + mItemDate.setText(weatherItem.getData()); + mItemDesc.setText(weatherItem.getText()); + } + + //点击列表,跳转到详情页面 + @Override + public void onClick(View v) { + Log.i(TAG,"click"); + mCallbacks.onWeatherSelected(mWeatherItem); + } + } + + private class WeatherAdaper extends RecyclerView.Adapter{ + private List mWeatherList = new ArrayList<>(); + + public WeatherAdaper(List items){ + mWeatherList = items; + } + + @Override + public int getItemCount() { + return mWeatherList.size(); + } + + @Override + public WeatherHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) { + //实例化mars_item布局 + LayoutInflater inflater = LayoutInflater.from(getActivity()); + View view = inflater.inflate(R.layout.weather_item,parent,false); + return new WeatherHolder(view); + } + + @Override + public void onBindViewHolder(@NonNull WeatherHolder holder, int position) { + WeatherItem weatherItem = mWeatherList.get(position); + holder.bindWeatherItem(weatherItem); + if(position==0){ + holder.setDay("Today"); + } + if(position==1){ + holder.setDay("Tomorrow"); + } + } + } + + private void setupAdapter(){ + if(isAdded()){ + mWeatherRecyclerView.setAdapter(new WeatherAdaper(mItems)); + } + } + + //判断网络是否连接 + public boolean isNetworkConnected(Context context) { + ConnectivityManager cm = (ConnectivityManager)getActivity().getSystemService(Context.CONNECTIVITY_SERVICE); + boolean isNetworkAvailable = cm.getActiveNetwork() != null; + boolean isNetworkConnected = isNetworkAvailable && cm.getActiveNetworkInfo().isConnected(); + return isNetworkConnected; + } +} diff --git a/src/MyApplication/app/src/MyApplication/app/src/main/java/com/example/myapplication/weather/WeatherItem.java b/src/MyApplication/app/src/MyApplication/app/src/main/java/com/example/myapplication/weather/WeatherItem.java new file mode 100644 index 0000000..b6b33f9 --- /dev/null +++ b/src/MyApplication/app/src/MyApplication/app/src/main/java/com/example/myapplication/weather/WeatherItem.java @@ -0,0 +1,78 @@ +package com.example.myapplication.weather; + +import java.io.Serializable; + +public class WeatherItem implements Serializable { + private String data; //天气日期 + private String max_temp; //最高温度 + private String min_temp; //最低温度 + private String text; //天气描述 + private String humidity; //适度 + private String pressure; //气压 + private String wind; //风力 + private String icon; //图标 + + public String getIcon() { + return icon; + } + + public void setIcon(String icon) { + this.icon = icon; + } + + public String getData() { + return data; + } + + public void setData(String data) { + this.data = data; + } + + public String getMax_temp() { + return max_temp; + } + + public void setMax_temp(String max_temp) { + this.max_temp = max_temp; + } + + public String getMin_temp() { + return min_temp; + } + + public void setMin_temp(String min_temp) { + this.min_temp = min_temp; + } + + public String getText() { + return text; + } + + public void setText(String text) { + this.text = text; + } + + public String getHumidity() { + return humidity; + } + + public void setHumidity(String humidity) { + this.humidity = humidity; + } + + public String getPressure() { + return pressure; + } + + public void setPressure(String pressure) { + this.pressure = pressure; + } + + public String getWind() { + return wind; + } + + public void setWind(String wind) { + this.wind = wind; + } +} diff --git a/src/MyApplication/app/src/main/java/com/example/myapplication/yijiantong.java b/src/MyApplication/app/src/MyApplication/app/src/main/java/com/example/myapplication/yijiantong.java similarity index 100% rename from src/MyApplication/app/src/main/java/com/example/myapplication/yijiantong.java rename to src/MyApplication/app/src/MyApplication/app/src/main/java/com/example/myapplication/yijiantong.java diff --git a/src/MyApplication/app/src/main/java/com/example/myapplication/yuyin.java b/src/MyApplication/app/src/MyApplication/app/src/main/java/com/example/myapplication/yuyin.java similarity index 100% rename from src/MyApplication/app/src/main/java/com/example/myapplication/yuyin.java rename to src/MyApplication/app/src/MyApplication/app/src/main/java/com/example/myapplication/yuyin.java diff --git a/src/MyApplication/app/src/main/java/com/example/myapplication/zhaoxun.java b/src/MyApplication/app/src/MyApplication/app/src/main/java/com/example/myapplication/zhaoxun.java similarity index 93% rename from src/MyApplication/app/src/main/java/com/example/myapplication/zhaoxun.java rename to src/MyApplication/app/src/MyApplication/app/src/main/java/com/example/myapplication/zhaoxun.java index 9d19533..9853f8c 100644 --- a/src/MyApplication/app/src/main/java/com/example/myapplication/zhaoxun.java +++ b/src/MyApplication/app/src/MyApplication/app/src/main/java/com/example/myapplication/zhaoxun.java @@ -2,7 +2,6 @@ package com.example.myapplication; import androidx.appcompat.app.AppCompatActivity; -import android.annotation.SuppressLint; import android.content.Intent; import android.net.Uri; import android.os.Bundle; @@ -16,7 +15,7 @@ public class zhaoxun extends AppCompatActivity { protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_zhaoxun); - Button buttonitem=findViewById(R.id.myitem); + Button buttonitem=findViewById(R.id.myitem); Button buttonmap=findViewById(R.id.map); buttonitem.setOnClickListener(new View.OnClickListener() { @Override diff --git a/src/MyApplication/app/src/main/res/drawable-v24/ic_launcher_foreground.xml b/src/MyApplication/app/src/MyApplication/app/src/main/res/drawable-v24/ic_launcher_foreground.xml similarity index 100% rename from src/MyApplication/app/src/main/res/drawable-v24/ic_launcher_foreground.xml rename to src/MyApplication/app/src/MyApplication/app/src/main/res/drawable-v24/ic_launcher_foreground.xml diff --git a/src/MyApplication/app/src/main/res/drawable/ic_launcher_background.xml b/src/MyApplication/app/src/MyApplication/app/src/main/res/drawable/ic_launcher_background.xml similarity index 99% rename from src/MyApplication/app/src/main/res/drawable/ic_launcher_background.xml rename to src/MyApplication/app/src/MyApplication/app/src/main/res/drawable/ic_launcher_background.xml index 0d025f9..07d5da9 100644 --- a/src/MyApplication/app/src/main/res/drawable/ic_launcher_background.xml +++ b/src/MyApplication/app/src/MyApplication/app/src/main/res/drawable/ic_launcher_background.xml @@ -5,7 +5,7 @@ android:viewportWidth="108" android:viewportHeight="108"> + \ No newline at end of file diff --git a/src/MyApplication/app/src/main/res/layout/activity_itemfound.xml b/src/MyApplication/app/src/MyApplication/app/src/main/res/layout/activity_itemfound.xml similarity index 66% rename from src/MyApplication/app/src/main/res/layout/activity_itemfound.xml rename to src/MyApplication/app/src/MyApplication/app/src/main/res/layout/activity_itemfound.xml index 71db188..a0c89ed 100644 --- a/src/MyApplication/app/src/main/res/layout/activity_itemfound.xml +++ b/src/MyApplication/app/src/MyApplication/app/src/main/res/layout/activity_itemfound.xml @@ -19,7 +19,11 @@ android:layout_height="100dp" android:gravity="left" android:text="钱包" +<<<<<<< HEAD:src/MyApplication/app/src/main/res/layout/activity_itemfound.xml android:textSize="30sp" /> +======= + android:textSize="30sp"> +>>>>>>> dc8dfd73a8a58508fec99a79684ba5574328c7e7:src/MyApplication/app/src/MyApplication/app/src/main/res/layout/activity_itemfound.xml +>>>>>>> dc8dfd73a8a58508fec99a79684ba5574328c7e7:src/MyApplication/app/src/MyApplication/app/src/main/res/layout/activity_itemfound.xml diff --git a/src/MyApplication/app/src/main/res/layout/activity_jiankang.xml b/src/MyApplication/app/src/MyApplication/app/src/main/res/layout/activity_jiankang.xml similarity index 100% rename from src/MyApplication/app/src/main/res/layout/activity_jiankang.xml rename to src/MyApplication/app/src/MyApplication/app/src/main/res/layout/activity_jiankang.xml diff --git a/src/MyApplication/app/src/main/res/layout/activity_main.xml b/src/MyApplication/app/src/MyApplication/app/src/main/res/layout/activity_main.xml similarity index 100% rename from src/MyApplication/app/src/main/res/layout/activity_main.xml rename to src/MyApplication/app/src/MyApplication/app/src/main/res/layout/activity_main.xml diff --git a/src/MyApplication/app/src/MyApplication/app/src/main/res/layout/activity_main1.xml b/src/MyApplication/app/src/MyApplication/app/src/main/res/layout/activity_main1.xml new file mode 100644 index 0000000..dc30be7 --- /dev/null +++ b/src/MyApplication/app/src/MyApplication/app/src/main/res/layout/activity_main1.xml @@ -0,0 +1,5 @@ + + \ No newline at end of file diff --git a/src/MyApplication/app/src/main/res/layout/activity_map1.xml b/src/MyApplication/app/src/MyApplication/app/src/main/res/layout/activity_map1.xml similarity index 100% rename from src/MyApplication/app/src/main/res/layout/activity_map1.xml rename to src/MyApplication/app/src/MyApplication/app/src/main/res/layout/activity_map1.xml diff --git a/src/MyApplication/app/src/MyApplication/app/src/main/res/layout/activity_setting.xml b/src/MyApplication/app/src/MyApplication/app/src/main/res/layout/activity_setting.xml new file mode 100644 index 0000000..5447e4d --- /dev/null +++ b/src/MyApplication/app/src/MyApplication/app/src/main/res/layout/activity_setting.xml @@ -0,0 +1,74 @@ + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/src/MyApplication/app/src/MyApplication/app/src/main/res/layout/activity_twopane.xml b/src/MyApplication/app/src/MyApplication/app/src/main/res/layout/activity_twopane.xml new file mode 100644 index 0000000..4396ba4 --- /dev/null +++ b/src/MyApplication/app/src/MyApplication/app/src/main/res/layout/activity_twopane.xml @@ -0,0 +1,16 @@ + + + + + \ No newline at end of file diff --git a/src/MyApplication/app/src/main/res/layout/activity_wnavi_guide.xml b/src/MyApplication/app/src/MyApplication/app/src/main/res/layout/activity_wnavi_guide.xml similarity index 100% rename from src/MyApplication/app/src/main/res/layout/activity_wnavi_guide.xml rename to src/MyApplication/app/src/MyApplication/app/src/main/res/layout/activity_wnavi_guide.xml diff --git a/src/MyApplication/app/src/main/res/layout/activity_yijiantong.xml b/src/MyApplication/app/src/MyApplication/app/src/main/res/layout/activity_yijiantong.xml similarity index 100% rename from src/MyApplication/app/src/main/res/layout/activity_yijiantong.xml rename to src/MyApplication/app/src/MyApplication/app/src/main/res/layout/activity_yijiantong.xml diff --git a/src/MyApplication/app/src/main/res/layout/activity_yuyin.xml b/src/MyApplication/app/src/MyApplication/app/src/main/res/layout/activity_yuyin.xml similarity index 100% rename from src/MyApplication/app/src/main/res/layout/activity_yuyin.xml rename to src/MyApplication/app/src/MyApplication/app/src/main/res/layout/activity_yuyin.xml diff --git a/src/MyApplication/app/src/main/res/layout/activity_zhaoxun.xml b/src/MyApplication/app/src/MyApplication/app/src/main/res/layout/activity_zhaoxun.xml similarity index 58% rename from src/MyApplication/app/src/main/res/layout/activity_zhaoxun.xml rename to src/MyApplication/app/src/MyApplication/app/src/main/res/layout/activity_zhaoxun.xml index 797aaaa..5ce24a5 100644 --- a/src/MyApplication/app/src/main/res/layout/activity_zhaoxun.xml +++ b/src/MyApplication/app/src/MyApplication/app/src/main/res/layout/activity_zhaoxun.xml @@ -11,8 +11,12 @@ android:text="选择要找寻物品的编号" android:textSize="30sp" android:onClick="jump" +<<<<<<< HEAD:src/MyApplication/app/src/main/res/layout/activity_zhaoxun.xml android:gravity="left" /> +======= + android:gravity="left"> +>>>>>>> dc8dfd73a8a58508fec99a79684ba5574328c7e7:src/MyApplication/app/src/MyApplication/app/src/main/res/layout/activity_zhaoxun.xml +>>>>>>> dc8dfd73a8a58508fec99a79684ba5574328c7e7:src/MyApplication/app/src/MyApplication/app/src/main/res/layout/activity_zhaoxun.xml \ No newline at end of file diff --git a/src/MyApplication/app/src/MyApplication/app/src/main/res/layout/fragment_weather.xml b/src/MyApplication/app/src/MyApplication/app/src/main/res/layout/fragment_weather.xml new file mode 100644 index 0000000..704e179 --- /dev/null +++ b/src/MyApplication/app/src/MyApplication/app/src/main/res/layout/fragment_weather.xml @@ -0,0 +1,72 @@ + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/src/MyApplication/app/src/MyApplication/app/src/main/res/layout/fragment_weather_detail.xml b/src/MyApplication/app/src/MyApplication/app/src/main/res/layout/fragment_weather_detail.xml new file mode 100644 index 0000000..2e4cfc4 --- /dev/null +++ b/src/MyApplication/app/src/MyApplication/app/src/main/res/layout/fragment_weather_detail.xml @@ -0,0 +1,88 @@ + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/src/MyApplication/app/src/MyApplication/app/src/main/res/layout/weather_item.xml b/src/MyApplication/app/src/MyApplication/app/src/main/res/layout/weather_item.xml new file mode 100644 index 0000000..0fc4779 --- /dev/null +++ b/src/MyApplication/app/src/MyApplication/app/src/main/res/layout/weather_item.xml @@ -0,0 +1,53 @@ + + + + + + + + + + + + \ No newline at end of file diff --git a/src/MyApplication/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml b/src/MyApplication/app/src/MyApplication/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml similarity index 100% rename from src/MyApplication/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml rename to src/MyApplication/app/src/MyApplication/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml diff --git a/src/MyApplication/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml b/src/MyApplication/app/src/MyApplication/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml similarity index 100% rename from src/MyApplication/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml rename to src/MyApplication/app/src/MyApplication/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml diff --git a/src/MyApplication/app/src/main/res/mipmap-hdpi/ic_launcher.webp b/src/MyApplication/app/src/MyApplication/app/src/main/res/mipmap-hdpi/ic_launcher.webp similarity index 100% rename from src/MyApplication/app/src/main/res/mipmap-hdpi/ic_launcher.webp rename to src/MyApplication/app/src/MyApplication/app/src/main/res/mipmap-hdpi/ic_launcher.webp diff --git a/src/MyApplication/app/src/main/res/mipmap-hdpi/ic_launcher_round.webp b/src/MyApplication/app/src/MyApplication/app/src/main/res/mipmap-hdpi/ic_launcher_round.webp similarity index 100% rename from src/MyApplication/app/src/main/res/mipmap-hdpi/ic_launcher_round.webp rename to src/MyApplication/app/src/MyApplication/app/src/main/res/mipmap-hdpi/ic_launcher_round.webp diff --git a/src/MyApplication/app/src/main/res/mipmap-mdpi/ic_launcher.webp b/src/MyApplication/app/src/MyApplication/app/src/main/res/mipmap-mdpi/ic_launcher.webp similarity index 100% rename from src/MyApplication/app/src/main/res/mipmap-mdpi/ic_launcher.webp rename to src/MyApplication/app/src/MyApplication/app/src/main/res/mipmap-mdpi/ic_launcher.webp diff --git a/src/MyApplication/app/src/main/res/mipmap-mdpi/ic_launcher_round.webp b/src/MyApplication/app/src/MyApplication/app/src/main/res/mipmap-mdpi/ic_launcher_round.webp similarity index 100% rename from src/MyApplication/app/src/main/res/mipmap-mdpi/ic_launcher_round.webp rename to src/MyApplication/app/src/MyApplication/app/src/main/res/mipmap-mdpi/ic_launcher_round.webp diff --git a/src/MyApplication/app/src/main/res/mipmap-xhdpi/ic_launcher.webp b/src/MyApplication/app/src/MyApplication/app/src/main/res/mipmap-xhdpi/ic_launcher.webp similarity index 100% rename from src/MyApplication/app/src/main/res/mipmap-xhdpi/ic_launcher.webp rename to src/MyApplication/app/src/MyApplication/app/src/main/res/mipmap-xhdpi/ic_launcher.webp diff --git a/src/MyApplication/app/src/main/res/mipmap-xhdpi/ic_launcher_round.webp b/src/MyApplication/app/src/MyApplication/app/src/main/res/mipmap-xhdpi/ic_launcher_round.webp similarity index 100% rename from src/MyApplication/app/src/main/res/mipmap-xhdpi/ic_launcher_round.webp rename to src/MyApplication/app/src/MyApplication/app/src/main/res/mipmap-xhdpi/ic_launcher_round.webp diff --git a/src/MyApplication/app/src/main/res/mipmap-xxhdpi/ic_launcher.webp b/src/MyApplication/app/src/MyApplication/app/src/main/res/mipmap-xxhdpi/ic_launcher.webp similarity index 100% rename from src/MyApplication/app/src/main/res/mipmap-xxhdpi/ic_launcher.webp rename to src/MyApplication/app/src/MyApplication/app/src/main/res/mipmap-xxhdpi/ic_launcher.webp diff --git a/src/MyApplication/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.webp b/src/MyApplication/app/src/MyApplication/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.webp similarity index 100% rename from src/MyApplication/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.webp rename to src/MyApplication/app/src/MyApplication/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.webp diff --git a/src/MyApplication/app/src/main/res/mipmap-xxxhdpi/ic_launcher.webp b/src/MyApplication/app/src/MyApplication/app/src/main/res/mipmap-xxxhdpi/ic_launcher.webp similarity index 100% rename from src/MyApplication/app/src/main/res/mipmap-xxxhdpi/ic_launcher.webp rename to src/MyApplication/app/src/MyApplication/app/src/main/res/mipmap-xxxhdpi/ic_launcher.webp diff --git a/src/MyApplication/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.webp b/src/MyApplication/app/src/MyApplication/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.webp similarity index 100% rename from src/MyApplication/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.webp rename to src/MyApplication/app/src/MyApplication/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.webp diff --git a/src/MyApplication/app/src/main/res/values-night/themes.xml b/src/MyApplication/app/src/MyApplication/app/src/main/res/values-night/themes.xml similarity index 100% rename from src/MyApplication/app/src/main/res/values-night/themes.xml rename to src/MyApplication/app/src/MyApplication/app/src/main/res/values-night/themes.xml diff --git a/src/MyApplication/app/src/MyApplication/app/src/main/res/values/arrays.xml b/src/MyApplication/app/src/MyApplication/app/src/main/res/values/arrays.xml new file mode 100644 index 0000000..35c327a --- /dev/null +++ b/src/MyApplication/app/src/MyApplication/app/src/main/res/values/arrays.xml @@ -0,0 +1,11 @@ + + + + 摄氏度 + 华氏度 + + + sheshidu + huashidu + + \ No newline at end of file diff --git a/src/MyApplication/app/src/main/res/values/colors.xml b/src/MyApplication/app/src/MyApplication/app/src/main/res/values/colors.xml similarity index 100% rename from src/MyApplication/app/src/main/res/values/colors.xml rename to src/MyApplication/app/src/MyApplication/app/src/main/res/values/colors.xml diff --git a/src/MyApplication/app/src/MyApplication/app/src/main/res/values/refs.xml b/src/MyApplication/app/src/MyApplication/app/src/main/res/values/refs.xml new file mode 100644 index 0000000..c8f80fe --- /dev/null +++ b/src/MyApplication/app/src/MyApplication/app/src/main/res/values/refs.xml @@ -0,0 +1,4 @@ + + + @layout/activity_main1 + \ No newline at end of file diff --git a/src/MyApplication/app/src/main/res/values/strings.xml b/src/MyApplication/app/src/MyApplication/app/src/main/res/values/strings.xml similarity index 100% rename from src/MyApplication/app/src/main/res/values/strings.xml rename to src/MyApplication/app/src/MyApplication/app/src/main/res/values/strings.xml diff --git a/src/MyApplication/app/src/MyApplication/app/src/main/res/values/styles.xml b/src/MyApplication/app/src/MyApplication/app/src/main/res/values/styles.xml new file mode 100644 index 0000000..5885930 --- /dev/null +++ b/src/MyApplication/app/src/MyApplication/app/src/main/res/values/styles.xml @@ -0,0 +1,11 @@ + + + + + + diff --git a/src/MyApplication/app/src/main/res/values/themes.xml b/src/MyApplication/app/src/MyApplication/app/src/main/res/values/themes.xml similarity index 100% rename from src/MyApplication/app/src/main/res/values/themes.xml rename to src/MyApplication/app/src/MyApplication/app/src/main/res/values/themes.xml diff --git a/src/MyApplication/app/src/main/res/xml/backup_rules.xml b/src/MyApplication/app/src/MyApplication/app/src/main/res/xml/backup_rules.xml similarity index 100% rename from src/MyApplication/app/src/main/res/xml/backup_rules.xml rename to src/MyApplication/app/src/MyApplication/app/src/main/res/xml/backup_rules.xml diff --git a/src/MyApplication/app/src/main/res/xml/data_extraction_rules.xml b/src/MyApplication/app/src/MyApplication/app/src/main/res/xml/data_extraction_rules.xml similarity index 100% rename from src/MyApplication/app/src/main/res/xml/data_extraction_rules.xml rename to src/MyApplication/app/src/MyApplication/app/src/main/res/xml/data_extraction_rules.xml diff --git a/src/MyApplication/app/src/MyApplication/app/src/main/res/xml/pref_setting.xml b/src/MyApplication/app/src/MyApplication/app/src/main/res/xml/pref_setting.xml new file mode 100644 index 0000000..394a6db --- /dev/null +++ b/src/MyApplication/app/src/MyApplication/app/src/main/res/xml/pref_setting.xml @@ -0,0 +1,19 @@ + + + + + \ No newline at end of file diff --git a/src/MyApplication/app/src/test/java/com/example/myapplication/ExampleUnitTest.java b/src/MyApplication/app/src/MyApplication/app/src/test/java/com/example/myapplication/ExampleUnitTest.java similarity index 100% rename from src/MyApplication/app/src/test/java/com/example/myapplication/ExampleUnitTest.java rename to src/MyApplication/app/src/MyApplication/app/src/test/java/com/example/myapplication/ExampleUnitTest.java diff --git a/src/MyApplication/app/src/MyApplication/build.gradle b/src/MyApplication/app/src/MyApplication/build.gradle new file mode 100644 index 0000000..90f9008 --- /dev/null +++ b/src/MyApplication/app/src/MyApplication/build.gradle @@ -0,0 +1,5 @@ +// Top-level build file where you can add configuration options common to all sub-projects/modules. +plugins { + id 'com.android.application' version '7.3.0' apply false + id 'com.android.library' version '7.3.0' apply false +} \ No newline at end of file diff --git a/src/MyApplication/app/src/MyApplication/gradle.properties b/src/MyApplication/app/src/MyApplication/gradle.properties new file mode 100644 index 0000000..d6b8937 --- /dev/null +++ b/src/MyApplication/app/src/MyApplication/gradle.properties @@ -0,0 +1,24 @@ +# Project-wide Gradle settings. +# IDE (e.g. Android Studio) users: +# Gradle settings configured through the IDE *will override* +# any settings specified in this file. +# For more details on how to configure your build environment visit +# http://www.gradle.org/docs/current/userguide/build_environment.html +# Specifies the JVM arguments used for the daemon process. +# The setting is particularly useful for tweaking memory settings. +org.gradle.jvmargs=-Xmx2048m -Dfile.encoding=UTF-8 +# When configured, Gradle will run in incubating parallel mode. +# This option should only be used with decoupled projects. More details, visit +# http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects +# org.gradle.parallel=true +# AndroidX package structure to make it clearer which packages are bundled with the +# Android operating system, and which are packaged with your app's APK +# https://developer.android.com/topic/libraries/support-library/androidx-rn +android.useAndroidX=true +android.enableJetifier=true +# Enables namespacing of each library's R class so that its R class includes only the +# resources declared in the library itself and none from the library's dependencies, +# thereby reducing the size of the R class for that library +android.nonTransitiveRClass=true +# ???gradle.properties????????? +#???????????????????androidX??????? \ No newline at end of file diff --git a/src/MyApplication/app/src/MyApplication/gradle/wrapper/gradle-wrapper.jar b/src/MyApplication/app/src/MyApplication/gradle/wrapper/gradle-wrapper.jar new file mode 100644 index 0000000..e708b1c Binary files /dev/null and b/src/MyApplication/app/src/MyApplication/gradle/wrapper/gradle-wrapper.jar differ diff --git a/src/MyApplication/app/src/MyApplication/gradle/wrapper/gradle-wrapper.properties b/src/MyApplication/app/src/MyApplication/gradle/wrapper/gradle-wrapper.properties new file mode 100644 index 0000000..a4646a3 --- /dev/null +++ b/src/MyApplication/app/src/MyApplication/gradle/wrapper/gradle-wrapper.properties @@ -0,0 +1,6 @@ +#Mon Oct 03 10:56:04 CST 2022 +distributionBase=GRADLE_USER_HOME +distributionUrl=https\://services.gradle.org/distributions/gradle-7.4-bin.zip +distributionPath=wrapper/dists +zipStorePath=wrapper/dists +zipStoreBase=GRADLE_USER_HOME diff --git a/src/MyApplication/app/src/MyApplication/gradlew b/src/MyApplication/app/src/MyApplication/gradlew new file mode 100644 index 0000000..4f906e0 --- /dev/null +++ b/src/MyApplication/app/src/MyApplication/gradlew @@ -0,0 +1,185 @@ +#!/usr/bin/env sh + +# +# Copyright 2015 the original author or authors. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# + +############################################################################## +## +## Gradle start up script for UN*X +## +############################################################################## + +# Attempt to set APP_HOME +# Resolve links: $0 may be a link +PRG="$0" +# Need this for relative symlinks. +while [ -h "$PRG" ] ; do + ls=`ls -ld "$PRG"` + link=`expr "$ls" : '.*-> \(.*\)$'` + if expr "$link" : '/.*' > /dev/null; then + PRG="$link" + else + PRG=`dirname "$PRG"`"/$link" + fi +done +SAVED="`pwd`" +cd "`dirname \"$PRG\"`/" >/dev/null +APP_HOME="`pwd -P`" +cd "$SAVED" >/dev/null + +APP_NAME="Gradle" +APP_BASE_NAME=`basename "$0"` + +# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"' + +# Use the maximum available, or set MAX_FD != -1 to use that value. +MAX_FD="maximum" + +warn () { + echo "$*" +} + +die () { + echo + echo "$*" + echo + exit 1 +} + +# OS specific support (must be 'true' or 'false'). +cygwin=false +msys=false +darwin=false +nonstop=false +case "`uname`" in + CYGWIN* ) + cygwin=true + ;; + Darwin* ) + darwin=true + ;; + MINGW* ) + msys=true + ;; + NONSTOP* ) + nonstop=true + ;; +esac + +CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar + + +# Determine the Java command to use to start the JVM. +if [ -n "$JAVA_HOME" ] ; then + if [ -x "$JAVA_HOME/jre/sh/java" ] ; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD="$JAVA_HOME/jre/sh/java" + else + JAVACMD="$JAVA_HOME/bin/java" + fi + if [ ! -x "$JAVACMD" ] ; then + die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +else + JAVACMD="java" + which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." +fi + +# Increase the maximum file descriptors if we can. +if [ "$cygwin" = "false" -a "$darwin" = "false" -a "$nonstop" = "false" ] ; then + MAX_FD_LIMIT=`ulimit -H -n` + if [ $? -eq 0 ] ; then + if [ "$MAX_FD" = "maximum" -o "$MAX_FD" = "max" ] ; then + MAX_FD="$MAX_FD_LIMIT" + fi + ulimit -n $MAX_FD + if [ $? -ne 0 ] ; then + warn "Could not set maximum file descriptor limit: $MAX_FD" + fi + else + warn "Could not query maximum file descriptor limit: $MAX_FD_LIMIT" + fi +fi + +# For Darwin, add options to specify how the application appears in the dock +if $darwin; then + GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\"" +fi + +# For Cygwin or MSYS, switch paths to Windows format before running java +if [ "$cygwin" = "true" -o "$msys" = "true" ] ; then + APP_HOME=`cygpath --path --mixed "$APP_HOME"` + CLASSPATH=`cygpath --path --mixed "$CLASSPATH"` + + JAVACMD=`cygpath --unix "$JAVACMD"` + + # We build the pattern for arguments to be converted via cygpath + ROOTDIRSRAW=`find -L / -maxdepth 1 -mindepth 1 -type d 2>/dev/null` + SEP="" + for dir in $ROOTDIRSRAW ; do + ROOTDIRS="$ROOTDIRS$SEP$dir" + SEP="|" + done + OURCYGPATTERN="(^($ROOTDIRS))" + # Add a user-defined pattern to the cygpath arguments + if [ "$GRADLE_CYGPATTERN" != "" ] ; then + OURCYGPATTERN="$OURCYGPATTERN|($GRADLE_CYGPATTERN)" + fi + # Now convert the arguments - kludge to limit ourselves to /bin/sh + i=0 + for arg in "$@" ; do + CHECK=`echo "$arg"|egrep -c "$OURCYGPATTERN" -` + CHECK2=`echo "$arg"|egrep -c "^-"` ### Determine if an option + + if [ $CHECK -ne 0 ] && [ $CHECK2 -eq 0 ] ; then ### Added a condition + eval `echo args$i`=`cygpath --path --ignore --mixed "$arg"` + else + eval `echo args$i`="\"$arg\"" + fi + i=`expr $i + 1` + done + case $i in + 0) set -- ;; + 1) set -- "$args0" ;; + 2) set -- "$args0" "$args1" ;; + 3) set -- "$args0" "$args1" "$args2" ;; + 4) set -- "$args0" "$args1" "$args2" "$args3" ;; + 5) set -- "$args0" "$args1" "$args2" "$args3" "$args4" ;; + 6) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" ;; + 7) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" ;; + 8) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" ;; + 9) set -- "$args0" "$args1" "$args2" "$args3" "$args4" "$args5" "$args6" "$args7" "$args8" ;; + esac +fi + +# Escape application args +save () { + for i do printf %s\\n "$i" | sed "s/'/'\\\\''/g;1s/^/'/;\$s/\$/' \\\\/" ; done + echo " " +} +APP_ARGS=`save "$@"` + +# Collect all arguments for the java command, following the shell quoting and substitution rules +eval set -- $DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS "\"-Dorg.gradle.appname=$APP_BASE_NAME\"" -classpath "\"$CLASSPATH\"" org.gradle.wrapper.GradleWrapperMain "$APP_ARGS" + +exec "$JAVACMD" "$@" diff --git a/src/MyApplication/app/src/MyApplication/gradlew.bat b/src/MyApplication/app/src/MyApplication/gradlew.bat new file mode 100644 index 0000000..107acd3 --- /dev/null +++ b/src/MyApplication/app/src/MyApplication/gradlew.bat @@ -0,0 +1,89 @@ +@rem +@rem Copyright 2015 the original author or authors. +@rem +@rem Licensed under the Apache License, Version 2.0 (the "License"); +@rem you may not use this file except in compliance with the License. +@rem You may obtain a copy of the License at +@rem +@rem https://www.apache.org/licenses/LICENSE-2.0 +@rem +@rem Unless required by applicable law or agreed to in writing, software +@rem distributed under the License is distributed on an "AS IS" BASIS, +@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +@rem See the License for the specific language governing permissions and +@rem limitations under the License. +@rem + +@if "%DEBUG%" == "" @echo off +@rem ########################################################################## +@rem +@rem Gradle startup script for Windows +@rem +@rem ########################################################################## + +@rem Set local scope for the variables with windows NT shell +if "%OS%"=="Windows_NT" setlocal + +set DIRNAME=%~dp0 +if "%DIRNAME%" == "" set DIRNAME=. +set APP_BASE_NAME=%~n0 +set APP_HOME=%DIRNAME% + +@rem Resolve any "." and ".." in APP_HOME to make it shorter. +for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi + +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m" + +@rem Find java.exe +if defined JAVA_HOME goto findJavaFromJavaHome + +set JAVA_EXE=java.exe +%JAVA_EXE% -version >NUL 2>&1 +if "%ERRORLEVEL%" == "0" goto execute + +echo. +echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:findJavaFromJavaHome +set JAVA_HOME=%JAVA_HOME:"=% +set JAVA_EXE=%JAVA_HOME%/bin/java.exe + +if exist "%JAVA_EXE%" goto execute + +echo. +echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% +echo. +echo Please set the JAVA_HOME variable in your environment to match the +echo location of your Java installation. + +goto fail + +:execute +@rem Setup the command line + +set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar + + +@rem Execute Gradle +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %* + +:end +@rem End local scope for the variables with windows NT shell +if "%ERRORLEVEL%"=="0" goto mainEnd + +:fail +rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of +rem the _cmd.exe /c_ return code! +if not "" == "%GRADLE_EXIT_CONSOLE%" exit 1 +exit /b 1 + +:mainEnd +if "%OS%"=="Windows_NT" endlocal + +:omega diff --git a/src/MyApplication/app/src/MyApplication/settings.gradle b/src/MyApplication/app/src/MyApplication/settings.gradle new file mode 100644 index 0000000..f727bcc --- /dev/null +++ b/src/MyApplication/app/src/MyApplication/settings.gradle @@ -0,0 +1,16 @@ +pluginManagement { + repositories { + gradlePluginPortal() + google() + mavenCentral() + } +} +dependencyResolutionManagement { + repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS) + repositories { + google() + mavenCentral() + } +} +rootProject.name = "My Application" +include ':app' diff --git a/src/MyApplication/app/src/main/assets/iflytek/recognize.xml b/src/MyApplication/app/src/main/assets/iflytek/recognize.xml deleted file mode 100644 index 78300c1..0000000 Binary files a/src/MyApplication/app/src/main/assets/iflytek/recognize.xml and /dev/null differ diff --git a/src/MyApplication/app/src/main/assets/iflytek/voice_bg.9.png b/src/MyApplication/app/src/main/assets/iflytek/voice_bg.9.png deleted file mode 100644 index 217f9dc..0000000 Binary files a/src/MyApplication/app/src/main/assets/iflytek/voice_bg.9.png and /dev/null differ diff --git a/src/MyApplication/app/src/main/assets/iflytek/voice_empty.png b/src/MyApplication/app/src/main/assets/iflytek/voice_empty.png deleted file mode 100644 index 08ffc43..0000000 Binary files a/src/MyApplication/app/src/main/assets/iflytek/voice_empty.png and /dev/null differ diff --git a/src/MyApplication/app/src/main/assets/iflytek/voice_full.png b/src/MyApplication/app/src/main/assets/iflytek/voice_full.png deleted file mode 100644 index 4bf5bbc..0000000 Binary files a/src/MyApplication/app/src/main/assets/iflytek/voice_full.png and /dev/null differ diff --git a/src/MyApplication/app/src/main/assets/iflytek/waiting.png b/src/MyApplication/app/src/main/assets/iflytek/waiting.png deleted file mode 100644 index d13bb33..0000000 Binary files a/src/MyApplication/app/src/main/assets/iflytek/waiting.png and /dev/null differ diff --git a/src/MyApplication/app/src/main/assets/iflytek/warning.png b/src/MyApplication/app/src/main/assets/iflytek/warning.png deleted file mode 100644 index 48150ff..0000000 Binary files a/src/MyApplication/app/src/main/assets/iflytek/warning.png and /dev/null differ diff --git a/src/MyApplication/app/src/main/res/drawable/a100.png b/src/MyApplication/app/src/main/res/drawable/a100.png deleted file mode 100644 index e435546..0000000 Binary files a/src/MyApplication/app/src/main/res/drawable/a100.png and /dev/null differ diff --git a/src/MyApplication/app/src/main/res/drawable/a101.png b/src/MyApplication/app/src/main/res/drawable/a101.png deleted file mode 100644 index 43f4ab2..0000000 Binary files a/src/MyApplication/app/src/main/res/drawable/a101.png and /dev/null differ diff --git a/src/MyApplication/app/src/main/res/drawable/a102.png b/src/MyApplication/app/src/main/res/drawable/a102.png deleted file mode 100644 index b23965b..0000000 Binary files a/src/MyApplication/app/src/main/res/drawable/a102.png and /dev/null differ diff --git a/src/MyApplication/app/src/main/res/drawable/a103.png b/src/MyApplication/app/src/main/res/drawable/a103.png deleted file mode 100644 index 9dcad7a..0000000 Binary files a/src/MyApplication/app/src/main/res/drawable/a103.png and /dev/null differ diff --git a/src/MyApplication/app/src/main/res/drawable/a104.png b/src/MyApplication/app/src/main/res/drawable/a104.png deleted file mode 100644 index 86ff29f..0000000 Binary files a/src/MyApplication/app/src/main/res/drawable/a104.png and /dev/null differ diff --git a/src/MyApplication/app/src/main/res/drawable/a150.png b/src/MyApplication/app/src/main/res/drawable/a150.png deleted file mode 100644 index a3886f8..0000000 Binary files a/src/MyApplication/app/src/main/res/drawable/a150.png and /dev/null differ diff --git a/src/MyApplication/app/src/main/res/drawable/a153.png b/src/MyApplication/app/src/main/res/drawable/a153.png deleted file mode 100644 index cb94f14..0000000 Binary files a/src/MyApplication/app/src/main/res/drawable/a153.png and /dev/null differ diff --git a/src/MyApplication/app/src/main/res/drawable/a154.png b/src/MyApplication/app/src/main/res/drawable/a154.png deleted file mode 100644 index de89a6f..0000000 Binary files a/src/MyApplication/app/src/main/res/drawable/a154.png and /dev/null differ diff --git a/src/MyApplication/app/src/main/res/drawable/a300.png b/src/MyApplication/app/src/main/res/drawable/a300.png deleted file mode 100644 index 977a857..0000000 Binary files a/src/MyApplication/app/src/main/res/drawable/a300.png and /dev/null differ diff --git a/src/MyApplication/app/src/main/res/drawable/a301.png b/src/MyApplication/app/src/main/res/drawable/a301.png deleted file mode 100644 index 6384e67..0000000 Binary files a/src/MyApplication/app/src/main/res/drawable/a301.png and /dev/null differ diff --git a/src/MyApplication/app/src/main/res/drawable/a302.png b/src/MyApplication/app/src/main/res/drawable/a302.png deleted file mode 100644 index 83f096d..0000000 Binary files a/src/MyApplication/app/src/main/res/drawable/a302.png and /dev/null differ diff --git a/src/MyApplication/app/src/main/res/drawable/a303.png b/src/MyApplication/app/src/main/res/drawable/a303.png deleted file mode 100644 index 94c1d05..0000000 Binary files a/src/MyApplication/app/src/main/res/drawable/a303.png and /dev/null differ diff --git a/src/MyApplication/app/src/main/res/drawable/a304.png b/src/MyApplication/app/src/main/res/drawable/a304.png deleted file mode 100644 index 3b3cc28..0000000 Binary files a/src/MyApplication/app/src/main/res/drawable/a304.png and /dev/null differ diff --git a/src/MyApplication/app/src/main/res/drawable/a305.png b/src/MyApplication/app/src/main/res/drawable/a305.png deleted file mode 100644 index 6dd845a..0000000 Binary files a/src/MyApplication/app/src/main/res/drawable/a305.png and /dev/null differ diff --git a/src/MyApplication/app/src/main/res/drawable/a306.png b/src/MyApplication/app/src/main/res/drawable/a306.png deleted file mode 100644 index 630ad92..0000000 Binary files a/src/MyApplication/app/src/main/res/drawable/a306.png and /dev/null differ diff --git a/src/MyApplication/app/src/main/res/drawable/a307.png b/src/MyApplication/app/src/main/res/drawable/a307.png deleted file mode 100644 index d76028c..0000000 Binary files a/src/MyApplication/app/src/main/res/drawable/a307.png and /dev/null differ diff --git a/src/MyApplication/app/src/main/res/drawable/a308.png b/src/MyApplication/app/src/main/res/drawable/a308.png deleted file mode 100644 index d218a85..0000000 Binary files a/src/MyApplication/app/src/main/res/drawable/a308.png and /dev/null differ diff --git a/src/MyApplication/app/src/main/res/drawable/a309.png b/src/MyApplication/app/src/main/res/drawable/a309.png deleted file mode 100644 index 717e779..0000000 Binary files a/src/MyApplication/app/src/main/res/drawable/a309.png and /dev/null differ diff --git a/src/MyApplication/app/src/main/res/drawable/a310.png b/src/MyApplication/app/src/main/res/drawable/a310.png deleted file mode 100644 index e5004aa..0000000 Binary files a/src/MyApplication/app/src/main/res/drawable/a310.png and /dev/null differ diff --git a/src/MyApplication/app/src/main/res/drawable/a311.png b/src/MyApplication/app/src/main/res/drawable/a311.png deleted file mode 100644 index 8d5f541..0000000 Binary files a/src/MyApplication/app/src/main/res/drawable/a311.png and /dev/null differ diff --git a/src/MyApplication/app/src/main/res/drawable/a312.png b/src/MyApplication/app/src/main/res/drawable/a312.png deleted file mode 100644 index 0f74f47..0000000 Binary files a/src/MyApplication/app/src/main/res/drawable/a312.png and /dev/null differ diff --git a/src/MyApplication/app/src/main/res/drawable/a313.png b/src/MyApplication/app/src/main/res/drawable/a313.png deleted file mode 100644 index 5429d60..0000000 Binary files a/src/MyApplication/app/src/main/res/drawable/a313.png and /dev/null differ diff --git a/src/MyApplication/app/src/main/res/drawable/a314.png b/src/MyApplication/app/src/main/res/drawable/a314.png deleted file mode 100644 index 9feaa6b..0000000 Binary files a/src/MyApplication/app/src/main/res/drawable/a314.png and /dev/null differ diff --git a/src/MyApplication/app/src/main/res/drawable/a315.png b/src/MyApplication/app/src/main/res/drawable/a315.png deleted file mode 100644 index 5b83793..0000000 Binary files a/src/MyApplication/app/src/main/res/drawable/a315.png and /dev/null differ diff --git a/src/MyApplication/app/src/main/res/drawable/a316.png b/src/MyApplication/app/src/main/res/drawable/a316.png deleted file mode 100644 index 411aa73..0000000 Binary files a/src/MyApplication/app/src/main/res/drawable/a316.png and /dev/null differ diff --git a/src/MyApplication/app/src/main/res/drawable/a317.png b/src/MyApplication/app/src/main/res/drawable/a317.png deleted file mode 100644 index e2aeb2e..0000000 Binary files a/src/MyApplication/app/src/main/res/drawable/a317.png and /dev/null differ diff --git a/src/MyApplication/app/src/main/res/drawable/a318.png b/src/MyApplication/app/src/main/res/drawable/a318.png deleted file mode 100644 index b729b4a..0000000 Binary files a/src/MyApplication/app/src/main/res/drawable/a318.png and /dev/null differ diff --git a/src/MyApplication/app/src/main/res/drawable/a350.png b/src/MyApplication/app/src/main/res/drawable/a350.png deleted file mode 100644 index 81dcaaa..0000000 Binary files a/src/MyApplication/app/src/main/res/drawable/a350.png and /dev/null differ diff --git a/src/MyApplication/app/src/main/res/drawable/a351.png b/src/MyApplication/app/src/main/res/drawable/a351.png deleted file mode 100644 index a3adce4..0000000 Binary files a/src/MyApplication/app/src/main/res/drawable/a351.png and /dev/null differ diff --git a/src/MyApplication/app/src/main/res/drawable/a399.png b/src/MyApplication/app/src/main/res/drawable/a399.png deleted file mode 100644 index a87be77..0000000 Binary files a/src/MyApplication/app/src/main/res/drawable/a399.png and /dev/null differ diff --git a/src/MyApplication/app/src/main/res/drawable/a400.png b/src/MyApplication/app/src/main/res/drawable/a400.png deleted file mode 100644 index b764670..0000000 Binary files a/src/MyApplication/app/src/main/res/drawable/a400.png and /dev/null differ diff --git a/src/MyApplication/app/src/main/res/drawable/a401.png b/src/MyApplication/app/src/main/res/drawable/a401.png deleted file mode 100644 index a4a619d..0000000 Binary files a/src/MyApplication/app/src/main/res/drawable/a401.png and /dev/null differ diff --git a/src/MyApplication/app/src/main/res/drawable/a402.png b/src/MyApplication/app/src/main/res/drawable/a402.png deleted file mode 100644 index d46ec85..0000000 Binary files a/src/MyApplication/app/src/main/res/drawable/a402.png and /dev/null differ diff --git a/src/MyApplication/app/src/main/res/drawable/a403.png b/src/MyApplication/app/src/main/res/drawable/a403.png deleted file mode 100644 index c33e15d..0000000 Binary files a/src/MyApplication/app/src/main/res/drawable/a403.png and /dev/null differ diff --git a/src/MyApplication/app/src/main/res/drawable/a404.png b/src/MyApplication/app/src/main/res/drawable/a404.png deleted file mode 100644 index 4fcf44c..0000000 Binary files a/src/MyApplication/app/src/main/res/drawable/a404.png and /dev/null differ diff --git a/src/MyApplication/app/src/main/res/drawable/a405.png b/src/MyApplication/app/src/main/res/drawable/a405.png deleted file mode 100644 index c4e7471..0000000 Binary files a/src/MyApplication/app/src/main/res/drawable/a405.png and /dev/null differ diff --git a/src/MyApplication/app/src/main/res/drawable/a406.png b/src/MyApplication/app/src/main/res/drawable/a406.png deleted file mode 100644 index c0fc63b..0000000 Binary files a/src/MyApplication/app/src/main/res/drawable/a406.png and /dev/null differ diff --git a/src/MyApplication/app/src/main/res/drawable/a407.png b/src/MyApplication/app/src/main/res/drawable/a407.png deleted file mode 100644 index 9ff95f2..0000000 Binary files a/src/MyApplication/app/src/main/res/drawable/a407.png and /dev/null differ diff --git a/src/MyApplication/app/src/main/res/drawable/a408.png b/src/MyApplication/app/src/main/res/drawable/a408.png deleted file mode 100644 index c006569..0000000 Binary files a/src/MyApplication/app/src/main/res/drawable/a408.png and /dev/null differ diff --git a/src/MyApplication/app/src/main/res/drawable/a409.png b/src/MyApplication/app/src/main/res/drawable/a409.png deleted file mode 100644 index 5f9d6c2..0000000 Binary files a/src/MyApplication/app/src/main/res/drawable/a409.png and /dev/null differ diff --git a/src/MyApplication/app/src/main/res/drawable/a410.png b/src/MyApplication/app/src/main/res/drawable/a410.png deleted file mode 100644 index db28ffc..0000000 Binary files a/src/MyApplication/app/src/main/res/drawable/a410.png and /dev/null differ diff --git a/src/MyApplication/app/src/main/res/drawable/a456.png b/src/MyApplication/app/src/main/res/drawable/a456.png deleted file mode 100644 index 20949c7..0000000 Binary files a/src/MyApplication/app/src/main/res/drawable/a456.png and /dev/null differ diff --git a/src/MyApplication/app/src/main/res/drawable/a457.png b/src/MyApplication/app/src/main/res/drawable/a457.png deleted file mode 100644 index 334c3d1..0000000 Binary files a/src/MyApplication/app/src/main/res/drawable/a457.png and /dev/null differ diff --git a/src/MyApplication/app/src/main/res/drawable/a499.png b/src/MyApplication/app/src/main/res/drawable/a499.png deleted file mode 100644 index 7f9ef59..0000000 Binary files a/src/MyApplication/app/src/main/res/drawable/a499.png and /dev/null differ diff --git a/src/MyApplication/app/src/main/res/drawable/a500.png b/src/MyApplication/app/src/main/res/drawable/a500.png deleted file mode 100644 index ea99407..0000000 Binary files a/src/MyApplication/app/src/main/res/drawable/a500.png and /dev/null differ diff --git a/src/MyApplication/app/src/main/res/drawable/a501.png b/src/MyApplication/app/src/main/res/drawable/a501.png deleted file mode 100644 index d9b1eca..0000000 Binary files a/src/MyApplication/app/src/main/res/drawable/a501.png and /dev/null differ diff --git a/src/MyApplication/app/src/main/res/drawable/a502.png b/src/MyApplication/app/src/main/res/drawable/a502.png deleted file mode 100644 index 19d3a41..0000000 Binary files a/src/MyApplication/app/src/main/res/drawable/a502.png and /dev/null differ diff --git a/src/MyApplication/app/src/main/res/drawable/a503.png b/src/MyApplication/app/src/main/res/drawable/a503.png deleted file mode 100644 index 406758f..0000000 Binary files a/src/MyApplication/app/src/main/res/drawable/a503.png and /dev/null differ diff --git a/src/MyApplication/app/src/main/res/drawable/a504.png b/src/MyApplication/app/src/main/res/drawable/a504.png deleted file mode 100644 index 50af230..0000000 Binary files a/src/MyApplication/app/src/main/res/drawable/a504.png and /dev/null differ diff --git a/src/MyApplication/app/src/main/res/drawable/a507.png b/src/MyApplication/app/src/main/res/drawable/a507.png deleted file mode 100644 index 9c0c5da..0000000 Binary files a/src/MyApplication/app/src/main/res/drawable/a507.png and /dev/null differ diff --git a/src/MyApplication/app/src/main/res/drawable/a508.png b/src/MyApplication/app/src/main/res/drawable/a508.png deleted file mode 100644 index f1c84a1..0000000 Binary files a/src/MyApplication/app/src/main/res/drawable/a508.png and /dev/null differ diff --git a/src/MyApplication/app/src/main/res/drawable/a509.png b/src/MyApplication/app/src/main/res/drawable/a509.png deleted file mode 100644 index 5dbd197..0000000 Binary files a/src/MyApplication/app/src/main/res/drawable/a509.png and /dev/null differ diff --git a/src/MyApplication/app/src/main/res/drawable/a510.png b/src/MyApplication/app/src/main/res/drawable/a510.png deleted file mode 100644 index 0fc21a0..0000000 Binary files a/src/MyApplication/app/src/main/res/drawable/a510.png and /dev/null differ diff --git a/src/MyApplication/app/src/main/res/drawable/a511.png b/src/MyApplication/app/src/main/res/drawable/a511.png deleted file mode 100644 index 294da17..0000000 Binary files a/src/MyApplication/app/src/main/res/drawable/a511.png and /dev/null differ diff --git a/src/MyApplication/app/src/main/res/drawable/a512.png b/src/MyApplication/app/src/main/res/drawable/a512.png deleted file mode 100644 index e6a3b34..0000000 Binary files a/src/MyApplication/app/src/main/res/drawable/a512.png and /dev/null differ diff --git a/src/MyApplication/app/src/main/res/drawable/a513.png b/src/MyApplication/app/src/main/res/drawable/a513.png deleted file mode 100644 index a532a39..0000000 Binary files a/src/MyApplication/app/src/main/res/drawable/a513.png and /dev/null differ diff --git a/src/MyApplication/app/src/main/res/drawable/a514.png b/src/MyApplication/app/src/main/res/drawable/a514.png deleted file mode 100644 index acb49e3..0000000 Binary files a/src/MyApplication/app/src/main/res/drawable/a514.png and /dev/null differ diff --git a/src/MyApplication/app/src/main/res/drawable/a515.png b/src/MyApplication/app/src/main/res/drawable/a515.png deleted file mode 100644 index 83b2de0..0000000 Binary files a/src/MyApplication/app/src/main/res/drawable/a515.png and /dev/null differ diff --git a/src/MyApplication/app/src/main/res/drawable/a900.png b/src/MyApplication/app/src/main/res/drawable/a900.png deleted file mode 100644 index d8b4c19..0000000 Binary files a/src/MyApplication/app/src/main/res/drawable/a900.png and /dev/null differ diff --git a/src/MyApplication/app/src/main/res/drawable/a901.png b/src/MyApplication/app/src/main/res/drawable/a901.png deleted file mode 100644 index bc28f5f..0000000 Binary files a/src/MyApplication/app/src/main/res/drawable/a901.png and /dev/null differ diff --git a/src/MyApplication/app/src/main/res/drawable/a999.png b/src/MyApplication/app/src/main/res/drawable/a999.png deleted file mode 100644 index ff99a92..0000000 Binary files a/src/MyApplication/app/src/main/res/drawable/a999.png and /dev/null differ diff --git a/src/MyApplication/build.gradle b/src/MyApplication/build.gradle index 90f9008..d87351c 100644 --- a/src/MyApplication/build.gradle +++ b/src/MyApplication/build.gradle @@ -1,5 +1,35 @@ // Top-level build file where you can add configuration options common to all sub-projects/modules. +android{ plugins { - id 'com.android.application' version '7.3.0' apply false - id 'com.android.library' version '7.3.0' apply false + id 'com.android.application' version '7.3.0' apply true + id 'com.android.library' version '7.3.0' apply true +} +sourceSets{ + main{ + jniLibs.srcDir 'libs' + jni.srcDirs = [] //disable automatic ndk-build + } +} +buildTypes { + release { + minifyEnabled true + shrinkResources true + proguardFiles getDefaultProguardFile( + 'proguard-android-optimize.txt'), + 'proguard-rules.pro' + } +} +sourceSets{ + main{ + jniLibs.srcDirs=['libs'] + } +} +dependencies { + compile fileTree(dir: 'libs' , include: ['*.jar']) + androidTestCompile ('com.android.support.test.espresso: espresso-core: 2.2.2', { + exclude group: 'com.android.support', module: 'support-annotations' + }) + compile 'com.android.support: appcompat-v7:25.1.0' + testCompile 'junit: junit: 4.12' +} } \ No newline at end of file