diff --git a/android/app/build.gradle b/android/app/build.gradle index cd368efc..68d0a18d 100755 --- a/android/app/build.gradle +++ b/android/app/build.gradle @@ -106,7 +106,7 @@ android { dimension "flavor-type" applicationId "com.skychip.lock" signingConfig signingConfigs.sky - resValue "string", "app_name", "锁通通" + resValue "string", "app_name", "斯凯智能" manifestPlaceholders.JPUSH_PKGNAME = "com.skychip.lock" proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules-sky.pro' } diff --git a/android/app/src/sky/res/mipmap-hdpi/ic_launcher.png b/android/app/src/sky/res/mipmap-hdpi/ic_launcher.png old mode 100755 new mode 100644 index 4587c19d..ff87e975 Binary files a/android/app/src/sky/res/mipmap-hdpi/ic_launcher.png and b/android/app/src/sky/res/mipmap-hdpi/ic_launcher.png differ diff --git a/android/app/src/sky/res/mipmap-mdpi/ic_launcher.png b/android/app/src/sky/res/mipmap-mdpi/ic_launcher.png old mode 100755 new mode 100644 index 32e709f3..39700e6b Binary files a/android/app/src/sky/res/mipmap-mdpi/ic_launcher.png and b/android/app/src/sky/res/mipmap-mdpi/ic_launcher.png differ diff --git a/android/app/src/sky/res/mipmap-xhdpi/ic_launcher.png b/android/app/src/sky/res/mipmap-xhdpi/ic_launcher.png old mode 100755 new mode 100644 index bdd7f056..7c5e4f93 Binary files a/android/app/src/sky/res/mipmap-xhdpi/ic_launcher.png and b/android/app/src/sky/res/mipmap-xhdpi/ic_launcher.png differ diff --git a/android/app/src/sky/res/mipmap-xxhdpi/ic_launcher.png b/android/app/src/sky/res/mipmap-xxhdpi/ic_launcher.png old mode 100755 new mode 100644 index 1598749d..5bd49494 Binary files a/android/app/src/sky/res/mipmap-xxhdpi/ic_launcher.png and b/android/app/src/sky/res/mipmap-xxhdpi/ic_launcher.png differ diff --git a/android/app/src/sky/res/mipmap-xxxhdpi/ic_launcher.png b/android/app/src/sky/res/mipmap-xxxhdpi/ic_launcher.png old mode 100755 new mode 100644 index 644b4d33..d4853f4f Binary files a/android/app/src/sky/res/mipmap-xxxhdpi/ic_launcher.png and b/android/app/src/sky/res/mipmap-xxxhdpi/ic_launcher.png differ diff --git a/ios/Flutter/skyDebug.xcconfig b/ios/Flutter/skyDebug.xcconfig index b2f11914..4148f08e 100755 --- a/ios/Flutter/skyDebug.xcconfig +++ b/ios/Flutter/skyDebug.xcconfig @@ -2,5 +2,5 @@ FLUTTER_TARGET=lib/main_sky_full.dart ASSET_PREFIX=sky -BUNDLE_NAME=锁通通 -BUNDLE_DISPLAY_NAME=锁通通 +BUNDLE_NAME=斯凯智能 +BUNDLE_DISPLAY_NAME=斯凯智能 diff --git a/ios/Flutter/skyProfile.xcconfig b/ios/Flutter/skyProfile.xcconfig index b2f11914..4148f08e 100755 --- a/ios/Flutter/skyProfile.xcconfig +++ b/ios/Flutter/skyProfile.xcconfig @@ -2,5 +2,5 @@ FLUTTER_TARGET=lib/main_sky_full.dart ASSET_PREFIX=sky -BUNDLE_NAME=锁通通 -BUNDLE_DISPLAY_NAME=锁通通 +BUNDLE_NAME=斯凯智能 +BUNDLE_DISPLAY_NAME=斯凯智能 diff --git a/ios/Flutter/skyRelease.xcconfig b/ios/Flutter/skyRelease.xcconfig index b2f11914..4148f08e 100755 --- a/ios/Flutter/skyRelease.xcconfig +++ b/ios/Flutter/skyRelease.xcconfig @@ -2,5 +2,5 @@ FLUTTER_TARGET=lib/main_sky_full.dart ASSET_PREFIX=sky -BUNDLE_NAME=锁通通 -BUNDLE_DISPLAY_NAME=锁通通 +BUNDLE_NAME=斯凯智能 +BUNDLE_DISPLAY_NAME=斯凯智能 diff --git a/ios/Runner/Assets.xcassets/skyAppIcon.appiconset/Contents.json b/ios/Runner/Assets.xcassets/skyAppIcon.appiconset/Contents.json index d36b1fab..88147747 100755 --- a/ios/Runner/Assets.xcassets/skyAppIcon.appiconset/Contents.json +++ b/ios/Runner/Assets.xcassets/skyAppIcon.appiconset/Contents.json @@ -1,122 +1,117 @@ { "images" : [ { - "size" : "20x20", + "filename" : "icon-20@2x.png", "idiom" : "iphone", - "filename" : "Icon-App-20x20@2x.png", - "scale" : "2x" + "scale" : "2x", + "size" : "20x20" }, { - "size" : "20x20", + "filename" : "icon-20@3x.png", "idiom" : "iphone", - "filename" : "Icon-App-20x20@3x.png", - "scale" : "3x" + "scale" : "3x", + "size" : "20x20" }, { - "size" : "29x29", "idiom" : "iphone", - "filename" : "Icon-App-29x29@1x.png", - "scale" : "1x" + "scale" : "1x", + "size" : "29x29" }, { - "size" : "29x29", + "filename" : "icon-29@2x.png", "idiom" : "iphone", - "filename" : "Icon-App-29x29@2x.png", - "scale" : "2x" + "scale" : "2x", + "size" : "29x29" }, { - "size" : "29x29", + "filename" : "icon-29@3x.png", "idiom" : "iphone", - "filename" : "Icon-App-29x29@3x.png", - "scale" : "3x" + "scale" : "3x", + "size" : "29x29" }, { - "size" : "40x40", + "filename" : "icon-40@2x.png", "idiom" : "iphone", - "filename" : "Icon-App-40x40@2x.png", - "scale" : "2x" + "scale" : "2x", + "size" : "40x40" }, { - "size" : "40x40", + "filename" : "icon-40@3x.png", "idiom" : "iphone", - "filename" : "Icon-App-40x40@3x.png", - "scale" : "3x" + "scale" : "3x", + "size" : "40x40" }, { - "size" : "60x60", + "filename" : "icon-60@2x.png", "idiom" : "iphone", - "filename" : "Icon-App-60x60@2x.png", - "scale" : "2x" + "scale" : "2x", + "size" : "60x60" }, { - "size" : "60x60", + "filename" : "icon-60@3x.png", "idiom" : "iphone", - "filename" : "Icon-App-60x60@3x.png", - "scale" : "3x" + "scale" : "3x", + "size" : "60x60" }, { - "size" : "20x20", "idiom" : "ipad", - "filename" : "Icon-App-20x20@1x.png", - "scale" : "1x" + "scale" : "1x", + "size" : "20x20" }, { - "size" : "20x20", + "filename" : "icon-20@2x 1.png", "idiom" : "ipad", - "filename" : "Icon-App-20x20@2x.png", - "scale" : "2x" + "scale" : "2x", + "size" : "20x20" }, { - "size" : "29x29", "idiom" : "ipad", - "filename" : "Icon-App-29x29@1x.png", - "scale" : "1x" + "scale" : "1x", + "size" : "29x29" }, { - "size" : "29x29", + "filename" : "icon-29@2x 1.png", "idiom" : "ipad", - "filename" : "Icon-App-29x29@2x.png", - "scale" : "2x" + "scale" : "2x", + "size" : "29x29" }, { - "size" : "40x40", "idiom" : "ipad", - "filename" : "Icon-App-40x40@1x.png", - "scale" : "1x" + "scale" : "1x", + "size" : "40x40" }, { - "size" : "40x40", + "filename" : "icon-40@2x 1.png", "idiom" : "ipad", - "filename" : "Icon-App-40x40@2x.png", - "scale" : "2x" + "scale" : "2x", + "size" : "40x40" }, { - "size" : "76x76", "idiom" : "ipad", - "filename" : "Icon-App-76x76@1x.png", - "scale" : "1x" + "scale" : "1x", + "size" : "76x76" }, { - "size" : "76x76", + "filename" : "icon-76@2x.png", "idiom" : "ipad", - "filename" : "Icon-App-76x76@2x.png", - "scale" : "2x" + "scale" : "2x", + "size" : "76x76" }, { - "size" : "83.5x83.5", + "filename" : "icon-83.5@2x.png", "idiom" : "ipad", - "filename" : "Icon-App-83.5x83.5@2x.png", - "scale" : "2x" + "scale" : "2x", + "size" : "83.5x83.5" }, { - "size" : "1024x1024", + "filename" : "icon-1024.png", "idiom" : "ios-marketing", - "filename" : "Icon-App-1024x1024@1x.png", - "scale" : "1x" + "scale" : "1x", + "size" : "1024x1024" } ], "info" : { - "version" : 1, - "author" : "xcode" + "author" : "xcode", + "version" : 1 } } diff --git a/ios/Runner/Assets.xcassets/skyAppIcon.appiconset/Icon-App-1024x1024@1x.png b/ios/Runner/Assets.xcassets/skyAppIcon.appiconset/Icon-App-1024x1024@1x.png deleted file mode 100755 index dd761bc4..00000000 Binary files a/ios/Runner/Assets.xcassets/skyAppIcon.appiconset/Icon-App-1024x1024@1x.png and /dev/null differ diff --git a/ios/Runner/Assets.xcassets/skyAppIcon.appiconset/Icon-App-20x20@1x.png b/ios/Runner/Assets.xcassets/skyAppIcon.appiconset/Icon-App-20x20@1x.png deleted file mode 100755 index 4e8c801a..00000000 Binary files a/ios/Runner/Assets.xcassets/skyAppIcon.appiconset/Icon-App-20x20@1x.png and /dev/null differ diff --git a/ios/Runner/Assets.xcassets/skyAppIcon.appiconset/Icon-App-20x20@2x.png b/ios/Runner/Assets.xcassets/skyAppIcon.appiconset/Icon-App-20x20@2x.png deleted file mode 100755 index 20f2a164..00000000 Binary files a/ios/Runner/Assets.xcassets/skyAppIcon.appiconset/Icon-App-20x20@2x.png and /dev/null differ diff --git a/ios/Runner/Assets.xcassets/skyAppIcon.appiconset/Icon-App-20x20@3x.png b/ios/Runner/Assets.xcassets/skyAppIcon.appiconset/Icon-App-20x20@3x.png deleted file mode 100755 index 509306f6..00000000 Binary files a/ios/Runner/Assets.xcassets/skyAppIcon.appiconset/Icon-App-20x20@3x.png and /dev/null differ diff --git a/ios/Runner/Assets.xcassets/skyAppIcon.appiconset/Icon-App-29x29@1x.png b/ios/Runner/Assets.xcassets/skyAppIcon.appiconset/Icon-App-29x29@1x.png deleted file mode 100755 index 8d943d4f..00000000 Binary files a/ios/Runner/Assets.xcassets/skyAppIcon.appiconset/Icon-App-29x29@1x.png and /dev/null differ diff --git a/ios/Runner/Assets.xcassets/skyAppIcon.appiconset/Icon-App-29x29@2x.png b/ios/Runner/Assets.xcassets/skyAppIcon.appiconset/Icon-App-29x29@2x.png deleted file mode 100755 index b8e0da8c..00000000 Binary files a/ios/Runner/Assets.xcassets/skyAppIcon.appiconset/Icon-App-29x29@2x.png and /dev/null differ diff --git a/ios/Runner/Assets.xcassets/skyAppIcon.appiconset/Icon-App-29x29@3x.png b/ios/Runner/Assets.xcassets/skyAppIcon.appiconset/Icon-App-29x29@3x.png deleted file mode 100755 index ce5b6941..00000000 Binary files a/ios/Runner/Assets.xcassets/skyAppIcon.appiconset/Icon-App-29x29@3x.png and /dev/null differ diff --git a/ios/Runner/Assets.xcassets/skyAppIcon.appiconset/Icon-App-40x40@1x.png b/ios/Runner/Assets.xcassets/skyAppIcon.appiconset/Icon-App-40x40@1x.png deleted file mode 100755 index 20f2a164..00000000 Binary files a/ios/Runner/Assets.xcassets/skyAppIcon.appiconset/Icon-App-40x40@1x.png and /dev/null differ diff --git a/ios/Runner/Assets.xcassets/skyAppIcon.appiconset/Icon-App-40x40@2x.png b/ios/Runner/Assets.xcassets/skyAppIcon.appiconset/Icon-App-40x40@2x.png deleted file mode 100755 index 24ad8c57..00000000 Binary files a/ios/Runner/Assets.xcassets/skyAppIcon.appiconset/Icon-App-40x40@2x.png and /dev/null differ diff --git a/ios/Runner/Assets.xcassets/skyAppIcon.appiconset/Icon-App-40x40@3x.png b/ios/Runner/Assets.xcassets/skyAppIcon.appiconset/Icon-App-40x40@3x.png deleted file mode 100755 index e3683ba4..00000000 Binary files a/ios/Runner/Assets.xcassets/skyAppIcon.appiconset/Icon-App-40x40@3x.png and /dev/null differ diff --git a/ios/Runner/Assets.xcassets/skyAppIcon.appiconset/Icon-App-60x60@2x.png b/ios/Runner/Assets.xcassets/skyAppIcon.appiconset/Icon-App-60x60@2x.png deleted file mode 100755 index e3683ba4..00000000 Binary files a/ios/Runner/Assets.xcassets/skyAppIcon.appiconset/Icon-App-60x60@2x.png and /dev/null differ diff --git a/ios/Runner/Assets.xcassets/skyAppIcon.appiconset/Icon-App-60x60@3x.png b/ios/Runner/Assets.xcassets/skyAppIcon.appiconset/Icon-App-60x60@3x.png deleted file mode 100755 index ae954ac4..00000000 Binary files a/ios/Runner/Assets.xcassets/skyAppIcon.appiconset/Icon-App-60x60@3x.png and /dev/null differ diff --git a/ios/Runner/Assets.xcassets/skyAppIcon.appiconset/Icon-App-76x76@1x.png b/ios/Runner/Assets.xcassets/skyAppIcon.appiconset/Icon-App-76x76@1x.png deleted file mode 100755 index 1b2aa99e..00000000 Binary files a/ios/Runner/Assets.xcassets/skyAppIcon.appiconset/Icon-App-76x76@1x.png and /dev/null differ diff --git a/ios/Runner/Assets.xcassets/skyAppIcon.appiconset/Icon-App-76x76@2x.png b/ios/Runner/Assets.xcassets/skyAppIcon.appiconset/Icon-App-76x76@2x.png deleted file mode 100755 index 5825af16..00000000 Binary files a/ios/Runner/Assets.xcassets/skyAppIcon.appiconset/Icon-App-76x76@2x.png and /dev/null differ diff --git a/ios/Runner/Assets.xcassets/skyAppIcon.appiconset/Icon-App-83.5x83.5@2x.png b/ios/Runner/Assets.xcassets/skyAppIcon.appiconset/Icon-App-83.5x83.5@2x.png deleted file mode 100755 index 6939522e..00000000 Binary files a/ios/Runner/Assets.xcassets/skyAppIcon.appiconset/Icon-App-83.5x83.5@2x.png and /dev/null differ diff --git a/ios/Runner/Assets.xcassets/skyAppIcon.appiconset/icon-1024.png b/ios/Runner/Assets.xcassets/skyAppIcon.appiconset/icon-1024.png new file mode 100644 index 00000000..1401d392 Binary files /dev/null and b/ios/Runner/Assets.xcassets/skyAppIcon.appiconset/icon-1024.png differ diff --git a/ios/Runner/Assets.xcassets/skyAppIcon.appiconset/icon-20@2x 1.png b/ios/Runner/Assets.xcassets/skyAppIcon.appiconset/icon-20@2x 1.png new file mode 100644 index 00000000..0d4ef0b0 Binary files /dev/null and b/ios/Runner/Assets.xcassets/skyAppIcon.appiconset/icon-20@2x 1.png differ diff --git a/ios/Runner/Assets.xcassets/skyAppIcon.appiconset/icon-20@2x.png b/ios/Runner/Assets.xcassets/skyAppIcon.appiconset/icon-20@2x.png new file mode 100644 index 00000000..0d4ef0b0 Binary files /dev/null and b/ios/Runner/Assets.xcassets/skyAppIcon.appiconset/icon-20@2x.png differ diff --git a/ios/Runner/Assets.xcassets/skyAppIcon.appiconset/icon-20@3x.png b/ios/Runner/Assets.xcassets/skyAppIcon.appiconset/icon-20@3x.png new file mode 100644 index 00000000..f0f13c16 Binary files /dev/null and b/ios/Runner/Assets.xcassets/skyAppIcon.appiconset/icon-20@3x.png differ diff --git a/ios/Runner/Assets.xcassets/skyAppIcon.appiconset/icon-29@2x 1.png b/ios/Runner/Assets.xcassets/skyAppIcon.appiconset/icon-29@2x 1.png new file mode 100644 index 00000000..cb4f2492 Binary files /dev/null and b/ios/Runner/Assets.xcassets/skyAppIcon.appiconset/icon-29@2x 1.png differ diff --git a/ios/Runner/Assets.xcassets/skyAppIcon.appiconset/icon-29@2x.png b/ios/Runner/Assets.xcassets/skyAppIcon.appiconset/icon-29@2x.png new file mode 100644 index 00000000..cb4f2492 Binary files /dev/null and b/ios/Runner/Assets.xcassets/skyAppIcon.appiconset/icon-29@2x.png differ diff --git a/ios/Runner/Assets.xcassets/skyAppIcon.appiconset/icon-29@3x.png b/ios/Runner/Assets.xcassets/skyAppIcon.appiconset/icon-29@3x.png new file mode 100644 index 00000000..a00ca13b Binary files /dev/null and b/ios/Runner/Assets.xcassets/skyAppIcon.appiconset/icon-29@3x.png differ diff --git a/ios/Runner/Assets.xcassets/skyAppIcon.appiconset/icon-40@2x 1.png b/ios/Runner/Assets.xcassets/skyAppIcon.appiconset/icon-40@2x 1.png new file mode 100644 index 00000000..28ac8631 Binary files /dev/null and b/ios/Runner/Assets.xcassets/skyAppIcon.appiconset/icon-40@2x 1.png differ diff --git a/ios/Runner/Assets.xcassets/skyAppIcon.appiconset/icon-40@2x.png b/ios/Runner/Assets.xcassets/skyAppIcon.appiconset/icon-40@2x.png new file mode 100644 index 00000000..28ac8631 Binary files /dev/null and b/ios/Runner/Assets.xcassets/skyAppIcon.appiconset/icon-40@2x.png differ diff --git a/ios/Runner/Assets.xcassets/skyAppIcon.appiconset/icon-40@3x.png b/ios/Runner/Assets.xcassets/skyAppIcon.appiconset/icon-40@3x.png new file mode 100644 index 00000000..3a98d3fc Binary files /dev/null and b/ios/Runner/Assets.xcassets/skyAppIcon.appiconset/icon-40@3x.png differ diff --git a/ios/Runner/Assets.xcassets/skyAppIcon.appiconset/icon-60@2x.png b/ios/Runner/Assets.xcassets/skyAppIcon.appiconset/icon-60@2x.png new file mode 100644 index 00000000..3a98d3fc Binary files /dev/null and b/ios/Runner/Assets.xcassets/skyAppIcon.appiconset/icon-60@2x.png differ diff --git a/ios/Runner/Assets.xcassets/skyAppIcon.appiconset/icon-60@3x.png b/ios/Runner/Assets.xcassets/skyAppIcon.appiconset/icon-60@3x.png new file mode 100644 index 00000000..838f2c38 Binary files /dev/null and b/ios/Runner/Assets.xcassets/skyAppIcon.appiconset/icon-60@3x.png differ diff --git a/ios/Runner/Assets.xcassets/skyAppIcon.appiconset/icon-76@2x.png b/ios/Runner/Assets.xcassets/skyAppIcon.appiconset/icon-76@2x.png new file mode 100644 index 00000000..57f361aa Binary files /dev/null and b/ios/Runner/Assets.xcassets/skyAppIcon.appiconset/icon-76@2x.png differ diff --git a/ios/Runner/Assets.xcassets/skyAppIcon.appiconset/icon-83.5@2x.png b/ios/Runner/Assets.xcassets/skyAppIcon.appiconset/icon-83.5@2x.png new file mode 100644 index 00000000..2baa4fcb Binary files /dev/null and b/ios/Runner/Assets.xcassets/skyAppIcon.appiconset/icon-83.5@2x.png differ diff --git a/ios/Runner/launchImage_sky.png b/ios/Runner/launchImage_sky.png index b323652c..3e0336a8 100644 Binary files a/ios/Runner/launchImage_sky.png and b/ios/Runner/launchImage_sky.png differ diff --git a/lan/lan_en.json b/lan/lan_en.json index a98074fd..e1179c00 100755 --- a/lan/lan_en.json +++ b/lan/lan_en.json @@ -911,13 +911,13 @@ "支持的国家": "Supported countries", "支持的国家值":"United States, Canada, United Kingdom, Germany, France, Italy, Spain, Australia, New Zealand, India, Japan", "操作流程": "Operation process", - "操作流程值": "1. Open the Alexa app and search for the Skye Smart Lock skill\n2. Click Enable Skill and log in to your Skye account\n3. Say 'Alexa, discover devices' to Alexa\n4. After discovering the device, you can use the voice command to control the lock" + "操作流程值": "1. Open the Alexa app and search for the Skye Smart Lock skill\n2. Click Enable Skill and log in to your Skye account\n3. Say 'Alexa, discover devices' to Alexa\n4. After discovering the device, you can use the voice command to control the lock", "密码需至少包含数字/字母/字符中的2种组合": "The password must contain at least 2 combinations of numbers/letters/characters", "Google Home": "Google Home", "Action name": "Action name", "ScienerSmart": "ScienerSmart", "支持的语言": "Supported languages", "英语": "English", - "Google Home操作流程的值": "1. Open the Google Home app and click the '+' in the upper left corner\n2. Click 'Set up device' and select 'Works with Google'\n3. Search for 'ScienerSmart' and log in to your Skye account\n4. After discovering the device, you can use the voice command to control the lock", + "Google Home操作流程的值": "1. Add the lock and gateway with the Smart lock APP\n\n2. Open the remote unlocking function of the lock in the APP (this function is turned off by default). Without this option, the lock does not support Google Home \n\n3. To install the Google Home APP, click the + button in the top left corner\n\n4. On the Settings page, select Work with Google\n\n5. Search for ScienerSmart and authorize with your Smart Lock APP account and password", "开启": "Open" } diff --git a/lan/lan_keys.json b/lan/lan_keys.json index 516d27c7..69a918ef 100755 --- a/lan/lan_keys.json +++ b/lan/lan_keys.json @@ -947,8 +947,6 @@ "支持的国家":"支持的国家", "支持的国家值":"支持的国家值", "操作流程":"操作流程", - "操作流程值":"操作流程值", - "秒内不可使用面容开锁": "秒内不可使用面容开锁", "密码需至少包含数字/字母/字符中的2种组合": "密码需至少包含数字/字母/字符中的2种组合", "操作流程值":"操作流程值", diff --git a/lan/lan_zh.json b/lan/lan_zh.json index 7e91a30a..8f63ce2a 100755 --- a/lan/lan_zh.json +++ b/lan/lan_zh.json @@ -916,6 +916,6 @@ "ScienerSmart": "ScienerSmart", "支持的语言": "支持的语言", "英语": "英语", - "Google Home操作流程的值": "1.用智能锁APP添加锁和网关\n\n2.在APP里开启锁的远程开锁功能(这个功能默认是关闭的)。如果没有这个选项,则锁不支持Google Home \n\n3.安装Google Home APP,点击左上角的“+”按钮\n\n4.在设置页面,选择“与Google协同工作”\n\n5.搜索“ScienerSmart”,并用智能锁APP的账号和密码进行授权\n\n6.在智能锁APP里设置安全码,使用Google Home开锁时提供此安全码", + "Google Home操作流程的值": "1.用智能锁APP添加锁和网关\n\n2.在APP里开启锁的远程开锁功能(这个功能默认是关闭的)。如果没有这个选项,则锁不支持Google Home \n\n3.安装Google Home APP,点击左上角的“+”按钮\n\n4.在设置页面,选择“与Google协同工作”\n\n5.搜索“ScienerSmart”,并用智能锁APP的账号和密码进行授权\n\n", "开启": "开启" } diff --git a/lib/mine/minePersonInfo/minePersonInfoPage/minePersonInfo_entity.dart b/lib/mine/minePersonInfo/minePersonInfoPage/minePersonInfo_entity.dart index 58d253d6..6999f581 100755 --- a/lib/mine/minePersonInfo/minePersonInfoPage/minePersonInfo_entity.dart +++ b/lib/mine/minePersonInfo/minePersonInfoPage/minePersonInfo_entity.dart @@ -1,9 +1,4 @@ class MinePersonInfoEntity { - int? errorCode; - String? description; - String? errorMsg; - MinePersonInfoData? data; - MinePersonInfoEntity( {this.errorCode, this.description, this.errorMsg, this.data}); @@ -14,6 +9,10 @@ class MinePersonInfoEntity { data = json['data'] != null ? MinePersonInfoData.fromJson(json['data']) : null; } + int? errorCode; + String? description; + String? errorMsg; + MinePersonInfoData? data; Map toJson() { final Map data = {}; @@ -28,18 +27,6 @@ class MinePersonInfoEntity { } class MinePersonInfoData { - String? mobile; - int? uid; - int? haveSafeAnswer; - String? nickname; - String? headUrl; - String? accountName; - int? countryId; - String? email; - String? countryName; - int? isVip; - String? deviceId; - MinePersonInfoData( {this.mobile, this.uid, @@ -51,7 +38,10 @@ class MinePersonInfoData { this.email, this.countryName, this.isVip, - this.deviceId}); + this.deviceId, + this.lang, + this.amazonAlexa, + this.googleHome}); MinePersonInfoData.fromJson(Map json) { mobile = json['mobile']; @@ -65,7 +55,28 @@ class MinePersonInfoData { countryName = json['countryName']; isVip = json['isVip']; deviceId = json['deviceId']; + lang = json['lang']; + amazonAlexa = json['amazonAlexa'] != null + ? AmazonAlexa.fromJson(json['amazonAlexa']) + : null; + googleHome = json['googleHome'] != null + ? GoogleHome.fromJson(json['googleHome']) + : null; } + String? mobile; + int? uid; + int? haveSafeAnswer; + String? nickname; + String? headUrl; + String? accountName; + int? countryId; + String? email; + String? countryName; + int? isVip; + String? deviceId; + String? lang; + AmazonAlexa? amazonAlexa; + GoogleHome? googleHome; Map toJson() { final Map data = {}; @@ -80,6 +91,50 @@ class MinePersonInfoData { data['countryName'] = countryName; data['isVip'] = isVip; data['deviceId'] = deviceId; + data['lang'] = lang; + if (amazonAlexa != null) { + data['amazonAlexa'] = amazonAlexa!.toJson(); + } + if (googleHome != null) { + data['googleHome'] = googleHome!.toJson(); + } + + return data; + } +} + +class AmazonAlexa { + AmazonAlexa({this.skillName, this.langs}); + + AmazonAlexa.fromJson(Map json) { + skillName = json['skillName']; + langs = json['langs'].cast(); + } + String? skillName; + List? langs; + + Map toJson() { + final Map data = {}; + data['skillName'] = skillName; + data['langs'] = langs; + return data; + } +} + +class GoogleHome { + GoogleHome({this.actionName, this.langs}); + + GoogleHome.fromJson(Map json) { + actionName = json['actionName']; + langs = json['langs'].cast(); + } + String? actionName; + List? langs; + + Map toJson() { + final Map data = {}; + data['actionName'] = actionName; + data['langs'] = langs; return data; } } diff --git a/lib/mine/mineSet/amazon_alexa/amazon_alexa_logic.dart b/lib/mine/mineSet/amazon_alexa/amazon_alexa_logic.dart new file mode 100644 index 00000000..737eda9b --- /dev/null +++ b/lib/mine/mineSet/amazon_alexa/amazon_alexa_logic.dart @@ -0,0 +1,6 @@ +import 'package:star_lock/mine/mineSet/amazon_alexa/amazon_alexa_state.dart'; +import '../../../../tools/baseGetXController.dart'; + +class AmazonAlexaLogic extends BaseGetXController { + final AmazonAlexaState state = AmazonAlexaState(); +} diff --git a/lib/mine/mineSet/amazon_alexa/amazon_alexa_page.dart b/lib/mine/mineSet/amazon_alexa/amazon_alexa_page.dart index 69e525e6..1375f7b8 100644 --- a/lib/mine/mineSet/amazon_alexa/amazon_alexa_page.dart +++ b/lib/mine/mineSet/amazon_alexa/amazon_alexa_page.dart @@ -1,6 +1,8 @@ import 'package:flutter/material.dart'; import 'package:flutter_screenutil/flutter_screenutil.dart'; import 'package:get/get.dart'; +import 'package:star_lock/mine/mineSet/amazon_alexa/amazon_alexa_logic.dart'; +import 'package:star_lock/mine/mineSet/amazon_alexa/amazon_alexa_state.dart'; import '../../../../app_settings/app_colors.dart'; import '../../../../tools/titleAppBar.dart'; @@ -25,6 +27,8 @@ class _AmazonAlexaPageState extends State { final EdgeInsets _contentPadding = EdgeInsets.symmetric(horizontal: 20.w, vertical: 20.h); + final AmazonAlexaLogic logic = Get.put(AmazonAlexaLogic()); + final AmazonAlexaState state = Get.find().state; @override Widget build(BuildContext context) { @@ -62,6 +66,11 @@ class _AmazonAlexaPageState extends State { ), SizedBox(height: 30.h), Text('Amazon Alexa'.tr, style: _titleStyle), + Obx(() => Text( + '(Skill name: ${state.amazonAlexaData.value.skillName ?? ''})', + style: _descriptionStyle, + textAlign: TextAlign.center, + )), SizedBox(height: 10.h), Text( '您可以使用Alexa进行开锁、闭锁和查看锁状态'.tr, @@ -80,7 +89,8 @@ class _AmazonAlexaPageState extends State { padding: _contentPadding, child: Column( children: [ - _buildInfoSection('支持的国家'.tr, '支持的国家值'.tr), + _buildInfoSection( + '支持的国家'.tr, '${state.amazonAlexaData.value.langs?.join('、')}'), SizedBox(height: 20.h), _buildInfoSection('操作流程'.tr, '操作流程值'.tr), ], diff --git a/lib/mine/mineSet/amazon_alexa/amazon_alexa_state.dart b/lib/mine/mineSet/amazon_alexa/amazon_alexa_state.dart new file mode 100644 index 00000000..2711fa62 --- /dev/null +++ b/lib/mine/mineSet/amazon_alexa/amazon_alexa_state.dart @@ -0,0 +1,13 @@ +import 'package:get/get.dart'; +import 'package:star_lock/mine/minePersonInfo/minePersonInfoPage/minePersonInfo_entity.dart'; + +class AmazonAlexaState { + AmazonAlexaState() { + final Map map = Get.arguments; + if (map['amazonAlexaData'] != null) { + amazonAlexaData.value = map['amazonAlexaData']; + } + } + + Rx amazonAlexaData = AmazonAlexa().obs; +} diff --git a/lib/mine/mineSet/google_home/google_home_page.dart b/lib/mine/mineSet/google_home/google_home_page.dart index a0301e9d..b06aab3e 100644 --- a/lib/mine/mineSet/google_home/google_home_page.dart +++ b/lib/mine/mineSet/google_home/google_home_page.dart @@ -38,7 +38,7 @@ class _GoogleHomePageState extends State { children: [ _buildTopWidget(), SizedBox(height: 20.h), - _buildBottomWidget(), + Obx(_buildBottomWidget), ], ), ), @@ -48,10 +48,10 @@ class _GoogleHomePageState extends State { Widget _buildTopWidget() { return Column( children: [ - CommonItem( - leftTitel: 'Action name'.tr, - rightTitle: 'ScienerSmart'.tr, - ), + Obx(() => CommonItem( + leftTitel: 'Action name'.tr, + rightTitle: state.googleHomeData.value.actionName ?? '', + )), SizedBox( height: 20.h, ), @@ -76,15 +76,22 @@ class _GoogleHomePageState extends State { } Widget _buildBottomWidget() { + final String instructions = '1.用智能锁APP添加锁和网关\n\n' + '2.在APP里开启锁的远程开锁功能(这个功能默认是关闭的)。如果没有这个选项,则锁不支持Google Home\n\n' + '3.安装Google Home APP,点击左上角的“+”按钮\n\n' + '4.在设置页面,选择“与Google协同工作”\n\n' + '5.搜索“${state.googleHomeData.value.actionName ?? ''}”,并用智能锁APP的账号和密码进行授权'; + return Container( color: Colors.white, width: ScreenUtil().screenWidth, padding: _contentPadding, child: Column( children: [ - _buildInfoSection('支持的语言'.tr, '英语'.tr), + _buildInfoSection( + '支持的语言'.tr, state.googleHomeData.value.langs?.join('、') ?? ''), SizedBox(height: 20.h), - _buildInfoSection('操作流程'.tr, 'Google Home操作流程的值'.tr), + _buildInfoSection('操作流程'.tr, instructions), ], ), ); diff --git a/lib/mine/mineSet/google_home/google_home_state.dart b/lib/mine/mineSet/google_home/google_home_state.dart index 0b99f2a2..a49b7994 100644 --- a/lib/mine/mineSet/google_home/google_home_state.dart +++ b/lib/mine/mineSet/google_home/google_home_state.dart @@ -1,4 +1,5 @@ import 'package:get/get.dart'; +import 'package:star_lock/mine/minePersonInfo/minePersonInfoPage/minePersonInfo_entity.dart'; class GoogleHomeState { GoogleHomeState() { @@ -11,8 +12,12 @@ class GoogleHomeState { isOpenedText.value = '开启'; } } + if (map['googleHomeData'] != null) { + googleHomeData.value = map['googleHomeData']; + } } RxBool isGoogleHome = false.obs; RxString isOpenedText = '开启'.obs; + Rx googleHomeData = GoogleHome().obs; } diff --git a/lib/mine/mineSet/mineSet/mineSet_logic.dart b/lib/mine/mineSet/mineSet/mineSet_logic.dart index e3dfbc16..d5da7a22 100755 --- a/lib/mine/mineSet/mineSet/mineSet_logic.dart +++ b/lib/mine/mineSet/mineSet/mineSet_logic.dart @@ -1,10 +1,10 @@ - import 'dart:async'; import 'package:flutter/material.dart'; import 'package:get/get.dart'; import 'package:star_lock/appRouters.dart'; import 'package:star_lock/login/login/entity/LoginEntity.dart'; +import 'package:star_lock/mine/minePersonInfo/minePersonInfoPage/minePersonInfo_entity.dart'; import 'package:star_lock/mine/mineSet/lockUserManage/expireLockList/expireElectronicKey/expireLockList_entity.dart'; import 'package:star_lock/mine/mineSet/mineSet/mineSet_state.dart'; import 'package:star_lock/mine/mineSet/mineSet/userSettingInfoEntity.dart'; @@ -66,6 +66,16 @@ class MineSetLogic extends BaseGetXController { } } + //用户信息 + Future getUserInfoRequest() async { + final MinePersonInfoEntity entity = await ApiRepository.to.getUserInfo(); + if (entity.errorCode!.codeIsSuccessful) { + Storage.setBool(saveIsVip, entity.data!.isVip! == 1); + state.amazonAlexaData.value = entity.data!.amazonAlexa ?? AmazonAlexa(); + state.googleHomeData.value = entity.data!.googleHome ?? GoogleHome(); + } + } + //更新提示音 Future updatePrompToneRequest() async { final ExpireLockListEntity entity = await ApiRepository.to @@ -170,6 +180,7 @@ class MineSetLogic extends BaseGetXController { state.currentLanguage.value = _getCurrentLanguage(); _initLoadDataAction(); + getUserInfoRequest(); } @override diff --git a/lib/mine/mineSet/mineSet/mineSet_page.dart b/lib/mine/mineSet/mineSet/mineSet_page.dart index 0afe0223..8e6b7988 100755 --- a/lib/mine/mineSet/mineSet/mineSet_page.dart +++ b/lib/mine/mineSet/mineSet/mineSet_page.dart @@ -320,7 +320,7 @@ class _MineSetPageState extends State Navigator.pushNamed( context, Routers.aPPUnlockNeedMobileNetworkingLockPage); }), - if(!F.isSKY) + if (!F.isSKY) CommonItem( leftTitel: '增值服务'.tr, isHaveLine: true, @@ -340,7 +340,8 @@ class _MineSetPageState extends State isHaveDirection: true, action: () { Get.toNamed(Routers.amazonAlexaPage, arguments: { - 'isAmazonAlexa': state.isAmazonAlexa.value + 'isAmazonAlexa': state.isAmazonAlexa.value, + 'amazonAlexaData': state.amazonAlexaData.value }); }), CommonItem( @@ -350,7 +351,8 @@ class _MineSetPageState extends State isHaveDirection: true, action: () { Get.toNamed(Routers.googleHomePage, arguments: { - 'isGoogleHome': state.isGoogleHome.value + 'isGoogleHome': state.isGoogleHome.value, + 'googleHomeData': state.googleHomeData.value })?.then((Object? value) { logic.userSettingsInfoRequest(); }); diff --git a/lib/mine/mineSet/mineSet/mineSet_state.dart b/lib/mine/mineSet/mineSet/mineSet_state.dart index bc2e00a0..f00fac17 100755 --- a/lib/mine/mineSet/mineSet/mineSet_state.dart +++ b/lib/mine/mineSet/mineSet/mineSet_state.dart @@ -1,5 +1,6 @@ import 'package:flutter_local_notifications/flutter_local_notifications.dart'; import 'package:get/get.dart'; +import 'package:star_lock/mine/minePersonInfo/minePersonInfoPage/minePersonInfo_entity.dart'; import 'package:star_lock/mine/mineSet/mineSet/userSettingInfoEntity.dart'; class MineSetState { @@ -18,6 +19,8 @@ class MineSetState { var currentLanguage = "".obs; //隐藏无效开锁 RxBool isAmazonAlexa = false.obs; //亚马逊Alexa RxBool isGoogleHome = false.obs; //谷歌Home + Rx amazonAlexaData = AmazonAlexa().obs; + Rx googleHomeData = GoogleHome().obs; late FlutterLocalNotificationsPlugin flutterLocalNotificationsPlugin = FlutterLocalNotificationsPlugin(); diff --git a/lib/mine/valueAddedServices/valueAddedServicesList/valueAddedServicesList_logic.dart b/lib/mine/valueAddedServices/valueAddedServicesList/valueAddedServicesList_logic.dart index 538f5680..2e024376 100755 --- a/lib/mine/valueAddedServices/valueAddedServicesList/valueAddedServicesList_logic.dart +++ b/lib/mine/valueAddedServices/valueAddedServicesList/valueAddedServicesList_logic.dart @@ -21,10 +21,12 @@ class ValueAddedServicesListLogic extends BaseGetXController { final MinePersonInfoEntity entity = await ApiRepository.to.getUserInfo(); if (entity.errorCode!.codeIsSuccessful) { Storage.setBool(saveIsVip, entity.data!.isVip! == 1); + state.amazonAlexaData.value = entity.data!.amazonAlexa ?? AmazonAlexa(); + state.googleHomeData.value = entity.data!.googleHome ?? GoogleHome(); } } - //用户信息 + //用户设置信息 Future userSettingsInfoRequest() async { final UserSettingInfoEntity entity = await ApiRepository.to.userSettingsInfo(); diff --git a/lib/mine/valueAddedServices/valueAddedServicesList/valueAddedServicesList_page.dart b/lib/mine/valueAddedServices/valueAddedServicesList/valueAddedServicesList_page.dart index 2c1fa082..6251b107 100755 --- a/lib/mine/valueAddedServices/valueAddedServicesList/valueAddedServicesList_page.dart +++ b/lib/mine/valueAddedServices/valueAddedServicesList/valueAddedServicesList_page.dart @@ -117,7 +117,8 @@ class _ValueAddedServicesPageListState ), 'Amazon Alexa', () { Get.toNamed(Routers.amazonAlexaPage, arguments: { - 'isAmazonAlexa': state.isAmazonAlexa.value + 'isAmazonAlexa': state.isAmazonAlexa.value, + 'amazonAlexaData': state.amazonAlexaData.value }); }), if (!F.isProductionEnv) @@ -132,7 +133,8 @@ class _ValueAddedServicesPageListState 'Google Home', () { // EasyLoading.showToast('功能暂未开放', duration: 2000.milliseconds); Get.toNamed(Routers.googleHomePage, arguments: { - 'isGoogleHome': state.isGoogleHome.value + 'isGoogleHome': state.isGoogleHome.value, + 'googleHomeData': state.googleHomeData.value })?.then((Object? value) { logic.userSettingsInfoRequest(); }); diff --git a/lib/mine/valueAddedServices/valueAddedServicesList/valueAddedServicesList_state.dart b/lib/mine/valueAddedServices/valueAddedServicesList/valueAddedServicesList_state.dart index b15e1407..c7163b8a 100755 --- a/lib/mine/valueAddedServices/valueAddedServicesList/valueAddedServicesList_state.dart +++ b/lib/mine/valueAddedServices/valueAddedServicesList/valueAddedServicesList_state.dart @@ -1,6 +1,9 @@ import 'package:get/get.dart'; +import 'package:star_lock/mine/minePersonInfo/minePersonInfoPage/minePersonInfo_entity.dart'; class ValueAddedServicesListState { RxBool isAmazonAlexa = false.obs; //亚马逊Alexa RxBool isGoogleHome = false.obs; //谷歌Home + Rx amazonAlexaData = AmazonAlexa().obs; + Rx googleHomeData = GoogleHome().obs; }