Merge remote-tracking branch 'origin/develop' into develop_liyi
This commit is contained in:
commit
d6322c21ad
@ -85,28 +85,28 @@ android {
|
|||||||
dimension "flavor-type"
|
dimension "flavor-type"
|
||||||
applicationId "com.starlock.lock.local"
|
applicationId "com.starlock.lock.local"
|
||||||
signingConfig signingConfigs.debug
|
signingConfig signingConfigs.debug
|
||||||
resValue "string", "app_name", "星锁-local"
|
resValue "string", "app_name", "Star Lock"
|
||||||
manifestPlaceholders.JPUSH_PKGNAME = "com.starlock.lock.local"
|
manifestPlaceholders.JPUSH_PKGNAME = "com.starlock.lock.local"
|
||||||
}
|
}
|
||||||
dev {
|
dev {
|
||||||
dimension "flavor-type"
|
dimension "flavor-type"
|
||||||
applicationId "com.starlock.lock.dev"
|
applicationId "com.starlock.lock.dev"
|
||||||
signingConfig signingConfigs.debug
|
signingConfig signingConfigs.debug
|
||||||
resValue "string", "app_name", "星锁-dev"
|
resValue "string", "app_name", "Star Lock"
|
||||||
manifestPlaceholders.JPUSH_PKGNAME = "com.starlock.lock.dev"
|
manifestPlaceholders.JPUSH_PKGNAME = "com.starlock.lock.dev"
|
||||||
}
|
}
|
||||||
pre {
|
pre {
|
||||||
dimension "flavor-type"
|
dimension "flavor-type"
|
||||||
applicationId "com.starlock.lock.pre"
|
applicationId "com.starlock.lock.pre"
|
||||||
signingConfig signingConfigs.debug
|
signingConfig signingConfigs.debug
|
||||||
resValue "string", "app_name", "星锁"
|
resValue "string", "app_name", "Star Lock-P"
|
||||||
manifestPlaceholders.JPUSH_PKGNAME = "com.starlock.lock.pre"
|
manifestPlaceholders.JPUSH_PKGNAME = "com.starlock.lock.pre"
|
||||||
}
|
}
|
||||||
sky {
|
sky {
|
||||||
dimension "flavor-type"
|
dimension "flavor-type"
|
||||||
applicationId "com.skychip.lock"
|
applicationId "com.skychip.lock"
|
||||||
signingConfig signingConfigs.sky
|
signingConfig signingConfigs.sky
|
||||||
resValue "string", "app_name", "锁通通"
|
resValue "string", "app_name", "TTLock Pro"
|
||||||
manifestPlaceholders.JPUSH_PKGNAME = "com.skychip.lock"
|
manifestPlaceholders.JPUSH_PKGNAME = "com.skychip.lock"
|
||||||
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules-sky.pro'
|
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules-sky.pro'
|
||||||
}
|
}
|
||||||
@ -114,21 +114,21 @@ android {
|
|||||||
dimension "flavor-type"
|
dimension "flavor-type"
|
||||||
applicationId "com.skychip.lock.pre"
|
applicationId "com.skychip.lock.pre"
|
||||||
signingConfig signingConfigs.sky
|
signingConfig signingConfigs.sky
|
||||||
resValue "string", "app_name", "锁通通-P"
|
resValue "string", "app_name", "TTLock Pro-P"
|
||||||
manifestPlaceholders.JPUSH_PKGNAME = "com.skychip.lock.pre"
|
manifestPlaceholders.JPUSH_PKGNAME = "com.skychip.lock.pre"
|
||||||
}
|
}
|
||||||
sky_dev {
|
sky_dev {
|
||||||
dimension "flavor-type"
|
dimension "flavor-type"
|
||||||
applicationId "com.skychip.lock.dev"
|
applicationId "com.skychip.lock.dev"
|
||||||
signingConfig signingConfigs.sky
|
signingConfig signingConfigs.sky
|
||||||
resValue "string", "app_name", "锁通通-D"
|
resValue "string", "app_name", "TTLock Pro"
|
||||||
manifestPlaceholders.JPUSH_PKGNAME = "com.skychip.lock.dev"
|
manifestPlaceholders.JPUSH_PKGNAME = "com.skychip.lock.dev"
|
||||||
}
|
}
|
||||||
xhj {
|
xhj {
|
||||||
dimension "flavor-type"
|
dimension "flavor-type"
|
||||||
applicationId "com.xhjcn.lock"
|
applicationId "com.xhjcn.lock"
|
||||||
signingConfig signingConfigs.xhj
|
signingConfig signingConfigs.xhj
|
||||||
resValue "string", "app_name", "星星锁"
|
resValue "string", "app_name", "Star Lock"
|
||||||
manifestPlaceholders.JPUSH_PKGNAME = "com.xhjcn.lock"
|
manifestPlaceholders.JPUSH_PKGNAME = "com.xhjcn.lock"
|
||||||
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules-xhj.pro'
|
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules-xhj.pro'
|
||||||
}
|
}
|
||||||
@ -136,14 +136,14 @@ android {
|
|||||||
dimension "flavor-type"
|
dimension "flavor-type"
|
||||||
applicationId "com.xhjcn.lock.pre"
|
applicationId "com.xhjcn.lock.pre"
|
||||||
signingConfig signingConfigs.xhj
|
signingConfig signingConfigs.xhj
|
||||||
resValue "string", "app_name", "星星锁-P"
|
resValue "string", "app_name", "Star Lock-P"
|
||||||
manifestPlaceholders.JPUSH_PKGNAME = "com.xhjcn.lock.pre"
|
manifestPlaceholders.JPUSH_PKGNAME = "com.xhjcn.lock.pre"
|
||||||
}
|
}
|
||||||
xhj_dev {
|
xhj_dev {
|
||||||
dimension "flavor-type"
|
dimension "flavor-type"
|
||||||
applicationId "com.xhjcn.lock.dev"
|
applicationId "com.xhjcn.lock.dev"
|
||||||
signingConfig signingConfigs.xhj
|
signingConfig signingConfigs.xhj
|
||||||
resValue "string", "app_name", "星星锁-D"
|
resValue "string", "app_name", "Star Lock"
|
||||||
manifestPlaceholders.JPUSH_PKGNAME = "com.xhjcn.lock.dev"
|
manifestPlaceholders.JPUSH_PKGNAME = "com.xhjcn.lock.dev"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<resources>
|
<resources>
|
||||||
<string name="app_name">星锁</string>
|
<string name="app_name">星锁-dev</string>
|
||||||
</resources>
|
</resources>
|
||||||
4
android/app/src/sky_pre/res/values-en-rUS/string.xml
Normal file
4
android/app/src/sky_pre/res/values-en-rUS/string.xml
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<resources>
|
||||||
|
<string name="app_name">TTLock Pro-P</string>
|
||||||
|
</resources>
|
||||||
4
android/app/src/sky_pre/res/values-zh-rCN/string.xml
Normal file
4
android/app/src/sky_pre/res/values-zh-rCN/string.xml
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<resources>
|
||||||
|
<string name="app_name">锁通通-P</string>
|
||||||
|
</resources>
|
||||||
4
android/app/src/xhj_pre/res/values-en-rUS/string.xml
Normal file
4
android/app/src/xhj_pre/res/values-en-rUS/string.xml
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<resources>
|
||||||
|
<string name="app_name">Star Lock-P</string>
|
||||||
|
</resources>
|
||||||
4
android/app/src/xhj_pre/res/values-zh-rCN/string.xml
Normal file
4
android/app/src/xhj_pre/res/values-zh-rCN/string.xml
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<resources>
|
||||||
|
<string name="app_name">星星锁-P</string>
|
||||||
|
</resources>
|
||||||
BIN
images/icon_left_grey.png
Normal file
BIN
images/icon_left_grey.png
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 349 B |
@ -10,12 +10,12 @@ PODS:
|
|||||||
- EMASRest
|
- EMASRest
|
||||||
- AlicloudUT (5.2.0.16):
|
- AlicloudUT (5.2.0.16):
|
||||||
- AlicloudUTDID
|
- AlicloudUTDID
|
||||||
- AlicloudUTDID (1.5.0.94)
|
- AlicloudUTDID (1.6.0)
|
||||||
- AlicloudUtils (1.4.1):
|
- AlicloudUtils (2.0.0):
|
||||||
- AlicloudUTDID
|
- AlicloudUTDID
|
||||||
- aliyun_face_plugin (0.0.1):
|
- aliyun_face_plugin (0.0.1):
|
||||||
- Flutter
|
- Flutter
|
||||||
- AMap3DMap (10.0.600):
|
- AMap3DMap (10.0.700):
|
||||||
- AMapFoundation (>= 1.8.0)
|
- AMapFoundation (>= 1.8.0)
|
||||||
- amap_flutter_location (0.0.1):
|
- amap_flutter_location (0.0.1):
|
||||||
- AMapLocation
|
- AMapLocation
|
||||||
@ -42,35 +42,35 @@ PODS:
|
|||||||
- FlutterMacOS
|
- FlutterMacOS
|
||||||
- device_info_plus (0.0.1):
|
- device_info_plus (0.0.1):
|
||||||
- Flutter
|
- Flutter
|
||||||
- DKImagePickerController/Core (4.3.7):
|
- DKImagePickerController/Core (4.3.9):
|
||||||
- DKImagePickerController/ImageDataManager
|
- DKImagePickerController/ImageDataManager
|
||||||
- DKImagePickerController/Resource
|
- DKImagePickerController/Resource
|
||||||
- DKImagePickerController/ImageDataManager (4.3.7)
|
- DKImagePickerController/ImageDataManager (4.3.9)
|
||||||
- DKImagePickerController/PhotoGallery (4.3.7):
|
- DKImagePickerController/PhotoGallery (4.3.9):
|
||||||
- DKImagePickerController/Core
|
- DKImagePickerController/Core
|
||||||
- DKPhotoGallery
|
- DKPhotoGallery
|
||||||
- DKImagePickerController/Resource (4.3.7)
|
- DKImagePickerController/Resource (4.3.9)
|
||||||
- DKPhotoGallery (0.0.17):
|
- DKPhotoGallery (0.0.19):
|
||||||
- DKPhotoGallery/Core (= 0.0.17)
|
- DKPhotoGallery/Core (= 0.0.19)
|
||||||
- DKPhotoGallery/Model (= 0.0.17)
|
- DKPhotoGallery/Model (= 0.0.19)
|
||||||
- DKPhotoGallery/Preview (= 0.0.17)
|
- DKPhotoGallery/Preview (= 0.0.19)
|
||||||
- DKPhotoGallery/Resource (= 0.0.17)
|
- DKPhotoGallery/Resource (= 0.0.19)
|
||||||
- SDWebImage
|
- SDWebImage
|
||||||
- SwiftyGif
|
- SwiftyGif
|
||||||
- DKPhotoGallery/Core (0.0.17):
|
- DKPhotoGallery/Core (0.0.19):
|
||||||
- DKPhotoGallery/Model
|
- DKPhotoGallery/Model
|
||||||
- DKPhotoGallery/Preview
|
- DKPhotoGallery/Preview
|
||||||
- SDWebImage
|
- SDWebImage
|
||||||
- SwiftyGif
|
- SwiftyGif
|
||||||
- DKPhotoGallery/Model (0.0.17):
|
- DKPhotoGallery/Model (0.0.19):
|
||||||
- SDWebImage
|
- SDWebImage
|
||||||
- SwiftyGif
|
- SwiftyGif
|
||||||
- DKPhotoGallery/Preview (0.0.17):
|
- DKPhotoGallery/Preview (0.0.19):
|
||||||
- DKPhotoGallery/Model
|
- DKPhotoGallery/Model
|
||||||
- DKPhotoGallery/Resource
|
- DKPhotoGallery/Resource
|
||||||
- SDWebImage
|
- SDWebImage
|
||||||
- SwiftyGif
|
- SwiftyGif
|
||||||
- DKPhotoGallery/Resource (0.0.17):
|
- DKPhotoGallery/Resource (0.0.19):
|
||||||
- SDWebImage
|
- SDWebImage
|
||||||
- SwiftyGif
|
- SwiftyGif
|
||||||
- EMASRest (11.1.1.2)
|
- EMASRest (11.1.1.2)
|
||||||
@ -136,9 +136,9 @@ PODS:
|
|||||||
- FlutterMacOS
|
- FlutterMacOS
|
||||||
- permission_handler_apple (9.3.0):
|
- permission_handler_apple (9.3.0):
|
||||||
- Flutter
|
- Flutter
|
||||||
- SDWebImage (5.19.1):
|
- SDWebImage (5.19.2):
|
||||||
- SDWebImage/Core (= 5.19.1)
|
- SDWebImage/Core (= 5.19.2)
|
||||||
- SDWebImage/Core (5.19.1)
|
- SDWebImage/Core (5.19.2)
|
||||||
- shared_preferences_foundation (0.0.1):
|
- shared_preferences_foundation (0.0.1):
|
||||||
- Flutter
|
- Flutter
|
||||||
- FlutterMacOS
|
- FlutterMacOS
|
||||||
@ -321,10 +321,10 @@ SPEC CHECKSUMS:
|
|||||||
AlicloudPush: 88529c9b796e4ece0601de0867b30359f55b61f7
|
AlicloudPush: 88529c9b796e4ece0601de0867b30359f55b61f7
|
||||||
AlicloudSender: 1f468b6bd962a099ffc19d45e3608b0fe98f259d
|
AlicloudSender: 1f468b6bd962a099ffc19d45e3608b0fe98f259d
|
||||||
AlicloudUT: 6d1cf30d57d096b7e9bb4b069dd0ba6ad59a3338
|
AlicloudUT: 6d1cf30d57d096b7e9bb4b069dd0ba6ad59a3338
|
||||||
AlicloudUTDID: 7323c443dcdf9a73e2224dc6ce51703671d7a765
|
AlicloudUTDID: 4e9d44c2fd704b3508069c38eaec9d6a759e702c
|
||||||
AlicloudUtils: 873a76615bebcee8b1996f20820d366e433c3eab
|
AlicloudUtils: 2a78de434a8b2dc99e408c4d6220e654076d9ef0
|
||||||
aliyun_face_plugin: 7a90b6526c5acea616062e809699294c782c3eb8
|
aliyun_face_plugin: 7a90b6526c5acea616062e809699294c782c3eb8
|
||||||
AMap3DMap: d104a679c2bad573c908e0ddadf26bc399678b24
|
AMap3DMap: 6ee456d7ba946ebbad580a343b74ffa8e9936175
|
||||||
amap_flutter_location: 44ff5beb64f42e0bf5feb402fe299dac0013af6f
|
amap_flutter_location: 44ff5beb64f42e0bf5feb402fe299dac0013af6f
|
||||||
amap_flutter_map: 979e54d227cedac6c7504a2151bfbf3bcf96760a
|
amap_flutter_map: 979e54d227cedac6c7504a2151bfbf3bcf96760a
|
||||||
AMapFoundation: 9885c48fc3a78fdfb84a0299a2293e56ea3c9fec
|
AMapFoundation: 9885c48fc3a78fdfb84a0299a2293e56ea3c9fec
|
||||||
@ -337,8 +337,8 @@ SPEC CHECKSUMS:
|
|||||||
camera_avfoundation: dd002b0330f4981e1bbcb46ae9b62829237459a4
|
camera_avfoundation: dd002b0330f4981e1bbcb46ae9b62829237459a4
|
||||||
connectivity_plus: ddd7f30999e1faaef5967c23d5b6d503d10434db
|
connectivity_plus: ddd7f30999e1faaef5967c23d5b6d503d10434db
|
||||||
device_info_plus: e5c5da33f982a436e103237c0c85f9031142abed
|
device_info_plus: e5c5da33f982a436e103237c0c85f9031142abed
|
||||||
DKImagePickerController: 0a24ebfe7b48beeb74c27531540aaa2cc1dac6cf
|
DKImagePickerController: 946cec48c7873164274ecc4624d19e3da4c1ef3c
|
||||||
DKPhotoGallery: fdfad5125a9fdda9cc57df834d49df790dbb4179
|
DKPhotoGallery: b3834fecb755ee09a593d7c9e389d8b5d6deed60
|
||||||
EMASRest: 8df6f87836767a9415ad5cc4af739bc9d215b475
|
EMASRest: 8df6f87836767a9415ad5cc4af739bc9d215b475
|
||||||
fast_rsa: a1fed69b074093d2e2e3fefae6b821a071649d4c
|
fast_rsa: a1fed69b074093d2e2e3fefae6b821a071649d4c
|
||||||
file_picker: ce3938a0df3cc1ef404671531facef740d03f920
|
file_picker: ce3938a0df3cc1ef404671531facef740d03f920
|
||||||
@ -365,7 +365,7 @@ SPEC CHECKSUMS:
|
|||||||
package_info_plus: 6c92f08e1f853dc01228d6f553146438dafcd14e
|
package_info_plus: 6c92f08e1f853dc01228d6f553146438dafcd14e
|
||||||
path_provider_foundation: 2b6b4c569c0fb62ec74538f866245ac84301af46
|
path_provider_foundation: 2b6b4c569c0fb62ec74538f866245ac84301af46
|
||||||
permission_handler_apple: 9878588469a2b0d0fc1e048d9f43605f92e6cec2
|
permission_handler_apple: 9878588469a2b0d0fc1e048d9f43605f92e6cec2
|
||||||
SDWebImage: 40b0b4053e36c660a764958bff99eed16610acbb
|
SDWebImage: dfe95b2466a9823cf9f0c6d01217c06550d7b29a
|
||||||
shared_preferences_foundation: fcdcbc04712aee1108ac7fda236f363274528f78
|
shared_preferences_foundation: fcdcbc04712aee1108ac7fda236f363274528f78
|
||||||
sqflite: 673a0e54cc04b7d6dba8d24fb8095b31c3a99eec
|
sqflite: 673a0e54cc04b7d6dba8d24fb8095b31c3a99eec
|
||||||
SwiftyGif: 706c60cf65fa2bc5ee0313beece843c8eb8194d4
|
SwiftyGif: 706c60cf65fa2bc5ee0313beece843c8eb8194d4
|
||||||
|
|||||||
@ -7,6 +7,7 @@
|
|||||||
objects = {
|
objects = {
|
||||||
|
|
||||||
/* Begin PBXBuildFile section */
|
/* Begin PBXBuildFile section */
|
||||||
|
04C1FC572D13F1A2000C959E /* InfoPlist.xcstrings in Resources */ = {isa = PBXBuildFile; fileRef = 04C1FC562D13F1A2000C959E /* InfoPlist.xcstrings */; };
|
||||||
04D0CC262D06CE570042EF10 /* launchImage_xhj.png in Resources */ = {isa = PBXBuildFile; fileRef = 82B657662C919BDF0079121C /* launchImage_xhj.png */; };
|
04D0CC262D06CE570042EF10 /* launchImage_xhj.png in Resources */ = {isa = PBXBuildFile; fileRef = 82B657662C919BDF0079121C /* launchImage_xhj.png */; };
|
||||||
1498D2341E8E89220040F4C2 /* GeneratedPluginRegistrant.m in Sources */ = {isa = PBXBuildFile; fileRef = 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */; };
|
1498D2341E8E89220040F4C2 /* GeneratedPluginRegistrant.m in Sources */ = {isa = PBXBuildFile; fileRef = 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */; };
|
||||||
25B2A1422F9A2CCCBBCBBB97 /* skyRelease.xcconfig in Resources */ = {isa = PBXBuildFile; fileRef = 35F02D170492750B437D6AB6 /* skyRelease.xcconfig */; };
|
25B2A1422F9A2CCCBBCBBB97 /* skyRelease.xcconfig in Resources */ = {isa = PBXBuildFile; fileRef = 35F02D170492750B437D6AB6 /* skyRelease.xcconfig */; };
|
||||||
@ -98,6 +99,7 @@
|
|||||||
/* Begin PBXFileReference section */
|
/* Begin PBXFileReference section */
|
||||||
0420903B2C0EEAA50073E654 /* zh-Hans */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "zh-Hans"; path = "zh-Hans.lproj/Main.strings"; sourceTree = "<group>"; };
|
0420903B2C0EEAA50073E654 /* zh-Hans */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "zh-Hans"; path = "zh-Hans.lproj/Main.strings"; sourceTree = "<group>"; };
|
||||||
04BFC4482BCFE05100688FCA /* RunnerRelease-xhj.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = "RunnerRelease-xhj.entitlements"; sourceTree = "<group>"; };
|
04BFC4482BCFE05100688FCA /* RunnerRelease-xhj.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = "RunnerRelease-xhj.entitlements"; sourceTree = "<group>"; };
|
||||||
|
04C1FC562D13F1A2000C959E /* InfoPlist.xcstrings */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json.xcstrings; path = InfoPlist.xcstrings; sourceTree = "<group>"; };
|
||||||
0BEB3ADCCEC961E2916B9004 /* Pods-Runner.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.debug.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig"; sourceTree = "<group>"; };
|
0BEB3ADCCEC961E2916B9004 /* Pods-Runner.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.debug.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig"; sourceTree = "<group>"; };
|
||||||
0D02C18E16914A687A4A1AC2 /* devDebug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = devDebug.xcconfig; path = Flutter/devDebug.xcconfig; sourceTree = "<group>"; };
|
0D02C18E16914A687A4A1AC2 /* devDebug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = devDebug.xcconfig; path = Flutter/devDebug.xcconfig; sourceTree = "<group>"; };
|
||||||
126D1370182AB44291C67A10 /* Pods-Runner.dev-release-sky.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.dev-release-sky.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.dev-release-sky.xcconfig"; sourceTree = "<group>"; };
|
126D1370182AB44291C67A10 /* Pods-Runner.dev-release-sky.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.dev-release-sky.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.dev-release-sky.xcconfig"; sourceTree = "<group>"; };
|
||||||
@ -341,6 +343,7 @@
|
|||||||
97C146F01CF9000F007C117D /* Runner */ = {
|
97C146F01CF9000F007C117D /* Runner */ = {
|
||||||
isa = PBXGroup;
|
isa = PBXGroup;
|
||||||
children = (
|
children = (
|
||||||
|
04C1FC562D13F1A2000C959E /* InfoPlist.xcstrings */,
|
||||||
E0B3E9EC2D04B36C00907A95 /* info_dev.plist */,
|
E0B3E9EC2D04B36C00907A95 /* info_dev.plist */,
|
||||||
E0B3E9EB2D04B36C00907A95 /* info_pre.plist */,
|
E0B3E9EB2D04B36C00907A95 /* info_pre.plist */,
|
||||||
E0B3E9EA2D04B36C00907A95 /* info_sky.plist */,
|
E0B3E9EA2D04B36C00907A95 /* info_sky.plist */,
|
||||||
@ -507,6 +510,7 @@
|
|||||||
9C453CBFAB0703DFA762337C /* preProfile.xcconfig in Resources */,
|
9C453CBFAB0703DFA762337C /* preProfile.xcconfig in Resources */,
|
||||||
44827AC367F1EAB110A97660 /* preRelease.xcconfig in Resources */,
|
44827AC367F1EAB110A97660 /* preRelease.xcconfig in Resources */,
|
||||||
D7EF77645AB1C3CEEA536468 /* skyDebug.xcconfig in Resources */,
|
D7EF77645AB1C3CEEA536468 /* skyDebug.xcconfig in Resources */,
|
||||||
|
04C1FC572D13F1A2000C959E /* InfoPlist.xcstrings in Resources */,
|
||||||
7B54002BF45E5D8B295B6447 /* skyProfile.xcconfig in Resources */,
|
7B54002BF45E5D8B295B6447 /* skyProfile.xcconfig in Resources */,
|
||||||
25B2A1422F9A2CCCBBCBBB97 /* skyRelease.xcconfig in Resources */,
|
25B2A1422F9A2CCCBBCBBB97 /* skyRelease.xcconfig in Resources */,
|
||||||
ADF948FD9EE8BD1AE71F0984 /* xhjDebug.xcconfig in Resources */,
|
ADF948FD9EE8BD1AE71F0984 /* xhjDebug.xcconfig in Resources */,
|
||||||
@ -698,10 +702,9 @@
|
|||||||
baseConfigurationReference = 4A63B2C308CB401731950EC8 /* Pods-Runner.debug-sky.xcconfig */;
|
baseConfigurationReference = 4A63B2C308CB401731950EC8 /* Pods-Runner.debug-sky.xcconfig */;
|
||||||
buildSettings = {
|
buildSettings = {
|
||||||
CODE_SIGN_ENTITLEMENTS = "Runner/RunnerRelease-sky.entitlements";
|
CODE_SIGN_ENTITLEMENTS = "Runner/RunnerRelease-sky.entitlements";
|
||||||
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
|
CODE_SIGN_IDENTITY = "Apple Development";
|
||||||
CODE_SIGN_STYLE = Manual;
|
CODE_SIGN_STYLE = Automatic;
|
||||||
DEVELOPMENT_TEAM = "";
|
DEVELOPMENT_TEAM = SF86QP26TZ;
|
||||||
"DEVELOPMENT_TEAM[sdk=iphoneos*]" = NAQ5PL2DYC;
|
|
||||||
INFOPLIST_FILE = Runner/info_sky.plist;
|
INFOPLIST_FILE = Runner/info_sky.plist;
|
||||||
IPHONEOS_DEPLOYMENT_TARGET = 12.0;
|
IPHONEOS_DEPLOYMENT_TARGET = 12.0;
|
||||||
LD_RUNPATH_SEARCH_PATHS = (
|
LD_RUNPATH_SEARCH_PATHS = (
|
||||||
@ -711,7 +714,6 @@
|
|||||||
PRODUCT_BUNDLE_IDENTIFIER = com.starlock.lock.local;
|
PRODUCT_BUNDLE_IDENTIFIER = com.starlock.lock.local;
|
||||||
PRODUCT_NAME = Runner;
|
PRODUCT_NAME = Runner;
|
||||||
PROVISIONING_PROFILE_SPECIFIER = "";
|
PROVISIONING_PROFILE_SPECIFIER = "";
|
||||||
"PROVISIONING_PROFILE_SPECIFIER[sdk=iphoneos*]" = Debug_com.starlock.lock.local.mobileprovision;
|
|
||||||
SUPPORTED_PLATFORMS = "iphoneos iphonesimulator";
|
SUPPORTED_PLATFORMS = "iphoneos iphonesimulator";
|
||||||
SUPPORTS_MACCATALYST = NO;
|
SUPPORTS_MACCATALYST = NO;
|
||||||
SUPPORTS_MAC_DESIGNED_FOR_IPHONE_IPAD = NO;
|
SUPPORTS_MAC_DESIGNED_FOR_IPHONE_IPAD = NO;
|
||||||
@ -795,10 +797,9 @@
|
|||||||
baseConfigurationReference = 22D858E988707FF26E068457 /* Pods-Runner.debug-xhj.xcconfig */;
|
baseConfigurationReference = 22D858E988707FF26E068457 /* Pods-Runner.debug-xhj.xcconfig */;
|
||||||
buildSettings = {
|
buildSettings = {
|
||||||
CODE_SIGN_ENTITLEMENTS = "Runner/RunnerRelease-xhj.entitlements";
|
CODE_SIGN_ENTITLEMENTS = "Runner/RunnerRelease-xhj.entitlements";
|
||||||
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
|
CODE_SIGN_IDENTITY = "Apple Development";
|
||||||
CODE_SIGN_STYLE = Manual;
|
CODE_SIGN_STYLE = Automatic;
|
||||||
DEVELOPMENT_TEAM = "";
|
DEVELOPMENT_TEAM = SF86QP26TZ;
|
||||||
"DEVELOPMENT_TEAM[sdk=iphoneos*]" = NAQ5PL2DYC;
|
|
||||||
INFOPLIST_FILE = Runner/info_xhj.plist;
|
INFOPLIST_FILE = Runner/info_xhj.plist;
|
||||||
IPHONEOS_DEPLOYMENT_TARGET = 12.0;
|
IPHONEOS_DEPLOYMENT_TARGET = 12.0;
|
||||||
LD_RUNPATH_SEARCH_PATHS = (
|
LD_RUNPATH_SEARCH_PATHS = (
|
||||||
@ -808,7 +809,6 @@
|
|||||||
PRODUCT_BUNDLE_IDENTIFIER = com.starlock.lock.local;
|
PRODUCT_BUNDLE_IDENTIFIER = com.starlock.lock.local;
|
||||||
PRODUCT_NAME = Runner;
|
PRODUCT_NAME = Runner;
|
||||||
PROVISIONING_PROFILE_SPECIFIER = "";
|
PROVISIONING_PROFILE_SPECIFIER = "";
|
||||||
"PROVISIONING_PROFILE_SPECIFIER[sdk=iphoneos*]" = Debug_com.starlock.lock.local.mobileprovision;
|
|
||||||
SUPPORTED_PLATFORMS = "iphoneos iphonesimulator";
|
SUPPORTED_PLATFORMS = "iphoneos iphonesimulator";
|
||||||
SUPPORTS_MACCATALYST = NO;
|
SUPPORTS_MACCATALYST = NO;
|
||||||
SUPPORTS_MAC_DESIGNED_FOR_IPHONE_IPAD = NO;
|
SUPPORTS_MAC_DESIGNED_FOR_IPHONE_IPAD = NO;
|
||||||
@ -821,9 +821,9 @@
|
|||||||
baseConfigurationReference = 16A83D21DFB231D8453DC681 /* Pods-Runner.release-sky.xcconfig */;
|
baseConfigurationReference = 16A83D21DFB231D8453DC681 /* Pods-Runner.release-sky.xcconfig */;
|
||||||
buildSettings = {
|
buildSettings = {
|
||||||
CODE_SIGN_ENTITLEMENTS = "Runner/RunnerRelease-sky.entitlements";
|
CODE_SIGN_ENTITLEMENTS = "Runner/RunnerRelease-sky.entitlements";
|
||||||
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Distribution";
|
CODE_SIGN_IDENTITY = "Apple Development";
|
||||||
|
CODE_SIGN_STYLE = Automatic;
|
||||||
DEVELOPMENT_TEAM = NAQ5PL2DYC;
|
DEVELOPMENT_TEAM = NAQ5PL2DYC;
|
||||||
"DEVELOPMENT_TEAM[sdk=iphoneos*]" = NAQ5PL2DYC;
|
|
||||||
INFOPLIST_FILE = Runner/info_sky.plist;
|
INFOPLIST_FILE = Runner/info_sky.plist;
|
||||||
IPHONEOS_DEPLOYMENT_TARGET = 12.0;
|
IPHONEOS_DEPLOYMENT_TARGET = 12.0;
|
||||||
LD_RUNPATH_SEARCH_PATHS = (
|
LD_RUNPATH_SEARCH_PATHS = (
|
||||||
@ -831,7 +831,7 @@
|
|||||||
"$(inherited)",
|
"$(inherited)",
|
||||||
);
|
);
|
||||||
PRODUCT_NAME = Runner;
|
PRODUCT_NAME = Runner;
|
||||||
"PROVISIONING_PROFILE_SPECIFIER[sdk=iphoneos*]" = Appstore_com.skychip.lock.mobileprovision;
|
PROVISIONING_PROFILE_SPECIFIER = "";
|
||||||
SUPPORTED_PLATFORMS = "iphoneos iphonesimulator";
|
SUPPORTED_PLATFORMS = "iphoneos iphonesimulator";
|
||||||
SUPPORTS_MACCATALYST = NO;
|
SUPPORTS_MACCATALYST = NO;
|
||||||
SUPPORTS_MAC_DESIGNED_FOR_IPHONE_IPAD = NO;
|
SUPPORTS_MAC_DESIGNED_FOR_IPHONE_IPAD = NO;
|
||||||
@ -844,9 +844,9 @@
|
|||||||
baseConfigurationReference = CDC2B8ED804B514A774F187D /* Pods-Runner.release-xhj.xcconfig */;
|
baseConfigurationReference = CDC2B8ED804B514A774F187D /* Pods-Runner.release-xhj.xcconfig */;
|
||||||
buildSettings = {
|
buildSettings = {
|
||||||
CODE_SIGN_ENTITLEMENTS = "Runner/RunnerRelease-xhj.entitlements";
|
CODE_SIGN_ENTITLEMENTS = "Runner/RunnerRelease-xhj.entitlements";
|
||||||
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Distribution";
|
CODE_SIGN_IDENTITY = "Apple Development";
|
||||||
|
CODE_SIGN_STYLE = Automatic;
|
||||||
DEVELOPMENT_TEAM = P8997RW3V8;
|
DEVELOPMENT_TEAM = P8997RW3V8;
|
||||||
"DEVELOPMENT_TEAM[sdk=iphoneos*]" = P8997RW3V8;
|
|
||||||
INFOPLIST_FILE = Runner/info_xhj.plist;
|
INFOPLIST_FILE = Runner/info_xhj.plist;
|
||||||
IPHONEOS_DEPLOYMENT_TARGET = 12.0;
|
IPHONEOS_DEPLOYMENT_TARGET = 12.0;
|
||||||
LD_RUNPATH_SEARCH_PATHS = (
|
LD_RUNPATH_SEARCH_PATHS = (
|
||||||
@ -855,7 +855,7 @@
|
|||||||
);
|
);
|
||||||
PRODUCT_BUNDLE_IDENTIFIER = com.xhjcn.lock;
|
PRODUCT_BUNDLE_IDENTIFIER = com.xhjcn.lock;
|
||||||
PRODUCT_NAME = Runner;
|
PRODUCT_NAME = Runner;
|
||||||
"PROVISIONING_PROFILE_SPECIFIER[sdk=iphoneos*]" = Appstore_com.xhjcn.lock.mobileprovision;
|
PROVISIONING_PROFILE_SPECIFIER = "";
|
||||||
SUPPORTED_PLATFORMS = "iphoneos iphonesimulator";
|
SUPPORTED_PLATFORMS = "iphoneos iphonesimulator";
|
||||||
SUPPORTS_MACCATALYST = NO;
|
SUPPORTS_MACCATALYST = NO;
|
||||||
SUPPORTS_MAC_DESIGNED_FOR_IPHONE_IPAD = NO;
|
SUPPORTS_MAC_DESIGNED_FOR_IPHONE_IPAD = NO;
|
||||||
@ -1088,10 +1088,8 @@
|
|||||||
buildSettings = {
|
buildSettings = {
|
||||||
CODE_SIGN_ENTITLEMENTS = "Runner/RunnerDebug-dev.entitlements";
|
CODE_SIGN_ENTITLEMENTS = "Runner/RunnerDebug-dev.entitlements";
|
||||||
CODE_SIGN_IDENTITY = "Apple Development";
|
CODE_SIGN_IDENTITY = "Apple Development";
|
||||||
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
|
CODE_SIGN_STYLE = Automatic;
|
||||||
CODE_SIGN_STYLE = Manual;
|
DEVELOPMENT_TEAM = SF86QP26TZ;
|
||||||
DEVELOPMENT_TEAM = "";
|
|
||||||
"DEVELOPMENT_TEAM[sdk=iphoneos*]" = NAQ5PL2DYC;
|
|
||||||
INFOPLIST_FILE = Runner/Info.plist;
|
INFOPLIST_FILE = Runner/Info.plist;
|
||||||
IPHONEOS_DEPLOYMENT_TARGET = 12.0;
|
IPHONEOS_DEPLOYMENT_TARGET = 12.0;
|
||||||
LD_RUNPATH_SEARCH_PATHS = (
|
LD_RUNPATH_SEARCH_PATHS = (
|
||||||
@ -1101,7 +1099,6 @@
|
|||||||
PRODUCT_BUNDLE_IDENTIFIER = com.starlock.lock.local;
|
PRODUCT_BUNDLE_IDENTIFIER = com.starlock.lock.local;
|
||||||
PRODUCT_NAME = Runner;
|
PRODUCT_NAME = Runner;
|
||||||
PROVISIONING_PROFILE_SPECIFIER = "";
|
PROVISIONING_PROFILE_SPECIFIER = "";
|
||||||
"PROVISIONING_PROFILE_SPECIFIER[sdk=iphoneos*]" = Debug_com.starlock.lock.local.mobileprovision;
|
|
||||||
SUPPORTED_PLATFORMS = "iphoneos iphonesimulator";
|
SUPPORTED_PLATFORMS = "iphoneos iphonesimulator";
|
||||||
SUPPORTS_MACCATALYST = NO;
|
SUPPORTS_MACCATALYST = NO;
|
||||||
SUPPORTS_MAC_DESIGNED_FOR_IPHONE_IPAD = NO;
|
SUPPORTS_MAC_DESIGNED_FOR_IPHONE_IPAD = NO;
|
||||||
@ -1185,10 +1182,9 @@
|
|||||||
baseConfigurationReference = D697F91E8405773AB9A5881E /* Pods-Runner.pre-release-sky.xcconfig */;
|
baseConfigurationReference = D697F91E8405773AB9A5881E /* Pods-Runner.pre-release-sky.xcconfig */;
|
||||||
buildSettings = {
|
buildSettings = {
|
||||||
CODE_SIGN_ENTITLEMENTS = "Runner/RunnerRelease-sky.entitlements";
|
CODE_SIGN_ENTITLEMENTS = "Runner/RunnerRelease-sky.entitlements";
|
||||||
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Distribution";
|
CODE_SIGN_IDENTITY = "Apple Development";
|
||||||
CODE_SIGN_STYLE = Manual;
|
CODE_SIGN_STYLE = Automatic;
|
||||||
DEVELOPMENT_TEAM = "";
|
DEVELOPMENT_TEAM = NAQ5PL2DYC;
|
||||||
"DEVELOPMENT_TEAM[sdk=iphoneos*]" = NAQ5PL2DYC;
|
|
||||||
INFOPLIST_FILE = Runner/info_sky.plist;
|
INFOPLIST_FILE = Runner/info_sky.plist;
|
||||||
IPHONEOS_DEPLOYMENT_TARGET = 12.0;
|
IPHONEOS_DEPLOYMENT_TARGET = 12.0;
|
||||||
LD_RUNPATH_SEARCH_PATHS = (
|
LD_RUNPATH_SEARCH_PATHS = (
|
||||||
@ -1198,7 +1194,6 @@
|
|||||||
PRODUCT_BUNDLE_IDENTIFIER = com.skychip.lock.pre;
|
PRODUCT_BUNDLE_IDENTIFIER = com.skychip.lock.pre;
|
||||||
PRODUCT_NAME = Runner;
|
PRODUCT_NAME = Runner;
|
||||||
PROVISIONING_PROFILE_SPECIFIER = "";
|
PROVISIONING_PROFILE_SPECIFIER = "";
|
||||||
"PROVISIONING_PROFILE_SPECIFIER[sdk=iphoneos*]" = Adhoc_com.skychip.lock.pre.mobileprovision;
|
|
||||||
SUPPORTED_PLATFORMS = "iphoneos iphonesimulator";
|
SUPPORTED_PLATFORMS = "iphoneos iphonesimulator";
|
||||||
SUPPORTS_MACCATALYST = NO;
|
SUPPORTS_MACCATALYST = NO;
|
||||||
SUPPORTS_MAC_DESIGNED_FOR_IPHONE_IPAD = NO;
|
SUPPORTS_MAC_DESIGNED_FOR_IPHONE_IPAD = NO;
|
||||||
@ -1282,10 +1277,9 @@
|
|||||||
baseConfigurationReference = 126D1370182AB44291C67A10 /* Pods-Runner.dev-release-sky.xcconfig */;
|
baseConfigurationReference = 126D1370182AB44291C67A10 /* Pods-Runner.dev-release-sky.xcconfig */;
|
||||||
buildSettings = {
|
buildSettings = {
|
||||||
CODE_SIGN_ENTITLEMENTS = "Runner/RunnerRelease-sky.entitlements";
|
CODE_SIGN_ENTITLEMENTS = "Runner/RunnerRelease-sky.entitlements";
|
||||||
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Distribution";
|
CODE_SIGN_IDENTITY = "Apple Development";
|
||||||
CODE_SIGN_STYLE = Manual;
|
CODE_SIGN_STYLE = Automatic;
|
||||||
DEVELOPMENT_TEAM = "";
|
DEVELOPMENT_TEAM = NAQ5PL2DYC;
|
||||||
"DEVELOPMENT_TEAM[sdk=iphoneos*]" = NAQ5PL2DYC;
|
|
||||||
INFOPLIST_FILE = Runner/info_sky.plist;
|
INFOPLIST_FILE = Runner/info_sky.plist;
|
||||||
IPHONEOS_DEPLOYMENT_TARGET = 12.0;
|
IPHONEOS_DEPLOYMENT_TARGET = 12.0;
|
||||||
LD_RUNPATH_SEARCH_PATHS = (
|
LD_RUNPATH_SEARCH_PATHS = (
|
||||||
@ -1295,7 +1289,6 @@
|
|||||||
PRODUCT_BUNDLE_IDENTIFIER = com.skychip.lock.dev;
|
PRODUCT_BUNDLE_IDENTIFIER = com.skychip.lock.dev;
|
||||||
PRODUCT_NAME = Runner;
|
PRODUCT_NAME = Runner;
|
||||||
PROVISIONING_PROFILE_SPECIFIER = "";
|
PROVISIONING_PROFILE_SPECIFIER = "";
|
||||||
"PROVISIONING_PROFILE_SPECIFIER[sdk=iphoneos*]" = Adhoc_com.skychip.lock.dev.mobileprovision;
|
|
||||||
SUPPORTED_PLATFORMS = "iphoneos iphonesimulator";
|
SUPPORTED_PLATFORMS = "iphoneos iphonesimulator";
|
||||||
SUPPORTS_MACCATALYST = NO;
|
SUPPORTS_MACCATALYST = NO;
|
||||||
SUPPORTS_MAC_DESIGNED_FOR_IPHONE_IPAD = NO;
|
SUPPORTS_MAC_DESIGNED_FOR_IPHONE_IPAD = NO;
|
||||||
@ -1379,10 +1372,9 @@
|
|||||||
baseConfigurationReference = 789004F1B475B44713E199BC /* Pods-Runner.pre-release-xhj.xcconfig */;
|
baseConfigurationReference = 789004F1B475B44713E199BC /* Pods-Runner.pre-release-xhj.xcconfig */;
|
||||||
buildSettings = {
|
buildSettings = {
|
||||||
CODE_SIGN_ENTITLEMENTS = "Runner/RunnerRelease-xhj.entitlements";
|
CODE_SIGN_ENTITLEMENTS = "Runner/RunnerRelease-xhj.entitlements";
|
||||||
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Distribution";
|
CODE_SIGN_IDENTITY = "Apple Development";
|
||||||
CODE_SIGN_STYLE = Manual;
|
CODE_SIGN_STYLE = Automatic;
|
||||||
DEVELOPMENT_TEAM = "";
|
DEVELOPMENT_TEAM = P8997RW3V8;
|
||||||
"DEVELOPMENT_TEAM[sdk=iphoneos*]" = P8997RW3V8;
|
|
||||||
INFOPLIST_FILE = Runner/info_xhj.plist;
|
INFOPLIST_FILE = Runner/info_xhj.plist;
|
||||||
IPHONEOS_DEPLOYMENT_TARGET = 12.0;
|
IPHONEOS_DEPLOYMENT_TARGET = 12.0;
|
||||||
LD_RUNPATH_SEARCH_PATHS = (
|
LD_RUNPATH_SEARCH_PATHS = (
|
||||||
@ -1392,7 +1384,6 @@
|
|||||||
PRODUCT_BUNDLE_IDENTIFIER = com.xhjcn.lock.pre;
|
PRODUCT_BUNDLE_IDENTIFIER = com.xhjcn.lock.pre;
|
||||||
PRODUCT_NAME = Runner;
|
PRODUCT_NAME = Runner;
|
||||||
PROVISIONING_PROFILE_SPECIFIER = "";
|
PROVISIONING_PROFILE_SPECIFIER = "";
|
||||||
"PROVISIONING_PROFILE_SPECIFIER[sdk=iphoneos*]" = Adhoc_com.xhjcn.lock.pre.mobileprovision;
|
|
||||||
SUPPORTED_PLATFORMS = "iphoneos iphonesimulator";
|
SUPPORTED_PLATFORMS = "iphoneos iphonesimulator";
|
||||||
SUPPORTS_MACCATALYST = NO;
|
SUPPORTS_MACCATALYST = NO;
|
||||||
SUPPORTS_MAC_DESIGNED_FOR_IPHONE_IPAD = NO;
|
SUPPORTS_MAC_DESIGNED_FOR_IPHONE_IPAD = NO;
|
||||||
@ -1476,10 +1467,9 @@
|
|||||||
baseConfigurationReference = ED3A443EA1439FD0FB4BCF80 /* Pods-Runner.dev-release-xhj.xcconfig */;
|
baseConfigurationReference = ED3A443EA1439FD0FB4BCF80 /* Pods-Runner.dev-release-xhj.xcconfig */;
|
||||||
buildSettings = {
|
buildSettings = {
|
||||||
CODE_SIGN_ENTITLEMENTS = "Runner/RunnerRelease-xhj.entitlements";
|
CODE_SIGN_ENTITLEMENTS = "Runner/RunnerRelease-xhj.entitlements";
|
||||||
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Distribution";
|
CODE_SIGN_IDENTITY = "Apple Development";
|
||||||
CODE_SIGN_STYLE = Manual;
|
CODE_SIGN_STYLE = Automatic;
|
||||||
DEVELOPMENT_TEAM = "";
|
DEVELOPMENT_TEAM = P8997RW3V8;
|
||||||
"DEVELOPMENT_TEAM[sdk=iphoneos*]" = P8997RW3V8;
|
|
||||||
INFOPLIST_FILE = Runner/info_xhj.plist;
|
INFOPLIST_FILE = Runner/info_xhj.plist;
|
||||||
IPHONEOS_DEPLOYMENT_TARGET = 12.0;
|
IPHONEOS_DEPLOYMENT_TARGET = 12.0;
|
||||||
LD_RUNPATH_SEARCH_PATHS = (
|
LD_RUNPATH_SEARCH_PATHS = (
|
||||||
@ -1489,7 +1479,6 @@
|
|||||||
PRODUCT_BUNDLE_IDENTIFIER = com.xhjcn.lock.dev;
|
PRODUCT_BUNDLE_IDENTIFIER = com.xhjcn.lock.dev;
|
||||||
PRODUCT_NAME = Runner;
|
PRODUCT_NAME = Runner;
|
||||||
PROVISIONING_PROFILE_SPECIFIER = "";
|
PROVISIONING_PROFILE_SPECIFIER = "";
|
||||||
"PROVISIONING_PROFILE_SPECIFIER[sdk=iphoneos*]" = Adhoc_com.xhjcn.lock.dev.mobileprovision;
|
|
||||||
SUPPORTED_PLATFORMS = "iphoneos iphonesimulator";
|
SUPPORTED_PLATFORMS = "iphoneos iphonesimulator";
|
||||||
SUPPORTS_MACCATALYST = NO;
|
SUPPORTS_MACCATALYST = NO;
|
||||||
SUPPORTS_MAC_DESIGNED_FOR_IPHONE_IPAD = NO;
|
SUPPORTS_MAC_DESIGNED_FOR_IPHONE_IPAD = NO;
|
||||||
|
|||||||
@ -313,7 +313,6 @@
|
|||||||
"删除账号后,你的所有信息及相关记录都会从平台彻底删除,且不可恢复,是否删除?": "ستتم إزالة جميع معلومات حسابك من المنصة بشكل دائم ولا يمكن استردادها. هل تريد حذفها ؟",
|
"删除账号后,你的所有信息及相关记录都会从平台彻底删除,且不可恢复,是否删除?": "ستتم إزالة جميع معلومات حسابك من المنصة بشكل دائم ولا يمكن استردادها. هل تريد حذفها ؟",
|
||||||
"监控": "شاشة",
|
"监控": "شاشة",
|
||||||
"视频日志": "سجل الفيديو",
|
"视频日志": "سجل الفيديو",
|
||||||
"网关设备": "بوابة",
|
|
||||||
"开门器": "فاتح باب",
|
"开门器": "فاتح باب",
|
||||||
"面容开锁": "يفتح الوجه",
|
"面容开锁": "يفتح الوجه",
|
||||||
"开门方向设置": "مجموعة فتح الاتجاه",
|
"开门方向设置": "مجموعة فتح الاتجاه",
|
||||||
@ -778,7 +777,6 @@
|
|||||||
"导出": "التصدير",
|
"导出": "التصدير",
|
||||||
"批量导出": "تصدير الدفعة",
|
"批量导出": "تصدير الدفعة",
|
||||||
"读取记录": "تحديث السجلات",
|
"读取记录": "تحديث السجلات",
|
||||||
"手机需联网": "إبرة",
|
|
||||||
"设备": "جهاز",
|
"设备": "جهاز",
|
||||||
"消息": "الرسائل",
|
"消息": "الرسائل",
|
||||||
"智能分析": "تحليلات ذكية",
|
"智能分析": "تحليلات ذكية",
|
||||||
@ -1110,5 +1108,15 @@
|
|||||||
"常规使用": "استخدام منتظم",
|
"常规使用": "استخدام منتظم",
|
||||||
"网关通电后,长按重置按钮5秒,指示灯交替闪烁时点击下一步": "بعد تشغيل البوابة ، اضغط مع الاستمرار على زر إعادة الضبط لمدة 5 ثوانٍ ، وانقر بعد ذلك عندما يومض مصباح المؤشر بالتناوب",
|
"网关通电后,长按重置按钮5秒,指示灯交替闪烁时点击下一步": "بعد تشغيل البوابة ، اضغط مع الاستمرار على زر إعادة الضبط لمدة 5 ثوانٍ ، وانقر بعد ذلك عندما يومض مصباح المؤشر بالتناوب",
|
||||||
"扫描设备": "جهاز المسح الضوئي",
|
"扫描设备": "جهاز المسح الضوئي",
|
||||||
"删除失败,网关可能已经离线,是否强制删除该数据?": "فشل الحذف. ربما تكون البوابة قد اختفت دون اتصال. هل تريد فرض حذف البيانات ؟"
|
"删除失败,网关可能已经离线,是否强制删除该数据?": "فشل الحذف. ربما تكون البوابة قد اختفت دون اتصال. هل تريد فرض حذف البيانات ؟",
|
||||||
|
"超级管理员英文": "Super Admin",
|
||||||
|
"授权管理员英文": "Make admin",
|
||||||
|
"普通管理员英文": "Ordinary user",
|
||||||
|
"网关设备英文": "Gateway",
|
||||||
|
"手机需联网英文": "NeedNet",
|
||||||
|
"年简称": "Y",
|
||||||
|
"月简称": "M",
|
||||||
|
"日简称": "D",
|
||||||
|
"时简称": "H",
|
||||||
|
"分简称": "M"
|
||||||
}
|
}
|
||||||
@ -314,7 +314,6 @@
|
|||||||
"删除账号后,你的所有信息及相关记录都会从平台彻底删除,且不可恢复,是否删除?": "Цялата информация за профила ви ще бъде премахната от платформата за постоянно и не може да бъде възстановена. искате ли да изтриете?",
|
"删除账号后,你的所有信息及相关记录都会从平台彻底删除,且不可恢复,是否删除?": "Цялата информация за профила ви ще бъде премахната от платформата за постоянно и не може да бъде възстановена. искате ли да изтриете?",
|
||||||
"监控": "Монитор",
|
"监控": "Монитор",
|
||||||
"视频日志": "Видео дневник",
|
"视频日志": "Видео дневник",
|
||||||
"网关设备": "Шлюз",
|
|
||||||
"开门器": "Отварачка за врати",
|
"开门器": "Отварачка за врати",
|
||||||
"面容开锁": "Face отключва",
|
"面容开锁": "Face отключва",
|
||||||
"开门方向设置": "Задаване на посоката на отваряне",
|
"开门方向设置": "Задаване на посоката на отваряне",
|
||||||
@ -779,7 +778,6 @@
|
|||||||
"导出": "Експортиране",
|
"导出": "Експортиране",
|
||||||
"批量导出": "Партиден износ",
|
"批量导出": "Партиден износ",
|
||||||
"读取记录": "Опресняване на записи",
|
"读取记录": "Опресняване на записи",
|
||||||
"手机需联网": "Neednet",
|
|
||||||
"设备": "Устройство",
|
"设备": "Устройство",
|
||||||
"消息": "Съобщения",
|
"消息": "Съобщения",
|
||||||
"智能分析": "Интелигентни анализи",
|
"智能分析": "Интелигентни анализи",
|
||||||
@ -1110,5 +1108,15 @@
|
|||||||
"常规使用": "Редовна употреба",
|
"常规使用": "Редовна употреба",
|
||||||
"网关通电后,长按重置按钮5秒,指示灯交替闪烁时点击下一步": "След като шлюзът е включен, натиснете и задръжте бутона reset за 5 секунди и щракнете върху следващия, когато индикаторната светлина мига алтернативно",
|
"网关通电后,长按重置按钮5秒,指示灯交替闪烁时点击下一步": "След като шлюзът е включен, натиснете и задръжте бутона reset за 5 секунди и щракнете върху следващия, когато индикаторната светлина мига алтернативно",
|
||||||
"扫描设备": "Сканиране устройство",
|
"扫描设备": "Сканиране устройство",
|
||||||
"删除失败,网关可能已经离线,是否强制删除该数据?": "Изтриването не успя. Портата може да е отишла офлайн. Искате ли да принудите изтриване на данните?"
|
"删除失败,网关可能已经离线,是否强制删除该数据?": "Изтриването не успя. Портата може да е отишла офлайн. Искате ли да принудите изтриване на данните?",
|
||||||
|
"超级管理员英文": "Super Admin",
|
||||||
|
"授权管理员英文": "Make admin",
|
||||||
|
"普通管理员英文": "Ordinary user",
|
||||||
|
"网关设备英文": "Gateway",
|
||||||
|
"手机需联网英文": "NeedNet",
|
||||||
|
"年简称": "Y",
|
||||||
|
"月简称": "M",
|
||||||
|
"日简称": "D",
|
||||||
|
"时简称": "H",
|
||||||
|
"分简称": "M"
|
||||||
}
|
}
|
||||||
@ -313,7 +313,6 @@
|
|||||||
"删除账号后,你的所有信息及相关记录都会从平台彻底删除,且不可恢复,是否删除?": "অ্যালসসআরগানগান্টের মাইউইল্ডবেইভেড-এরফেইট্রোমফর্ম",
|
"删除账号后,你的所有信息及相关记录都会从平台彻底删除,且不可恢复,是否删除?": "অ্যালসসআরগানগান্টের মাইউইল্ডবেইভেড-এরফেইট্রোমফর্ম",
|
||||||
"监控": "Monitor",
|
"监控": "Monitor",
|
||||||
"视频日志": "নিঃশব্দ",
|
"视频日志": "নিঃশব্দ",
|
||||||
"网关设备": "সমুদ্রে",
|
|
||||||
"开门器": "ডোরওএফ",
|
"开门器": "ডোরওএফ",
|
||||||
"面容开锁": "ফেসসসুনcolocs",
|
"面容开锁": "ফেসসসুনcolocs",
|
||||||
"开门方向设置": "ডিরেক্টরসেট",
|
"开门方向设置": "ডিরেক্টরসেট",
|
||||||
@ -778,7 +777,6 @@
|
|||||||
"导出": "পোর্ট",
|
"导出": "পোর্ট",
|
||||||
"批量导出": "পোর্ট",
|
"批量导出": "পোর্ট",
|
||||||
"读取记录": "রূপ",
|
"读取记录": "রূপ",
|
||||||
"手机需联网": "উইমেনেট",
|
|
||||||
"设备": "ব্লিভাইস",
|
"设备": "ব্লিভাইস",
|
||||||
"消息": "এন্টস",
|
"消息": "এন্টস",
|
||||||
"智能分析": "Intel▁লিজেন্টা",
|
"智能分析": "Intel▁লিজেন্টা",
|
||||||
@ -1110,5 +1108,15 @@
|
|||||||
"常规使用": "গ্যারিউস",
|
"常规使用": "গ্যারিউস",
|
||||||
"网关通电后,长按重置按钮5秒,指示灯交替闪烁时点击下一步": "অ্যারাস্টার্টিউইসপোভেরেডন, প্রেস এবং টিপেস্টেট্রিসেট গানttonfor5sononds, এবং চক্লিক উইভেন্থে-উইন্টার",
|
"网关通电后,长按重置按钮5秒,指示灯交替闪烁时点击下一步": "অ্যারাস্টার্টিউইসপোভেরেডন, প্রেস এবং টিপেস্টেট্রিসেট গানttonfor5sononds, এবং চক্লিক উইভেন্থে-উইন্টার",
|
||||||
"扫描设备": "সিস্কান্লিভাইস",
|
"扫描设备": "সিস্কান্লিভাইস",
|
||||||
"删除失败,网关可能已经离线,是否强制删除该数据?": "ডাইজেজেশনিমেরিলেড। টিভওয়েমাইয়ানভিগনোনোআরলাইন। ডো ডাউনডেটা?"
|
"删除失败,网关可能已经离线,是否强制删除该数据?": "ডাইজেজেশনিমেরিলেড। টিভওয়েমাইয়ানভিগনোনোআরলাইন। ডো ডাউনডেটা?",
|
||||||
|
"超级管理员英文": "Super Admin",
|
||||||
|
"授权管理员英文": "Make admin",
|
||||||
|
"普通管理员英文": "Ordinary user",
|
||||||
|
"网关设备英文": "Gateway",
|
||||||
|
"手机需联网英文": "NeedNet",
|
||||||
|
"年简称": "Y",
|
||||||
|
"月简称": "M",
|
||||||
|
"日简称": "D",
|
||||||
|
"时简称": "H",
|
||||||
|
"分简称": "M"
|
||||||
}
|
}
|
||||||
@ -313,7 +313,6 @@
|
|||||||
"删除账号后,你的所有信息及相关记录都会从平台彻底删除,且不可恢复,是否删除?": "Všechny informace o vašem účtu budou z platformy odebrány natrvalo a nemohou být obnoveny.",
|
"删除账号后,你的所有信息及相关记录都会从平台彻底删除,且不可恢复,是否删除?": "Všechny informace o vašem účtu budou z platformy odebrány natrvalo a nemohou být obnoveny.",
|
||||||
"监控": "Monitor",
|
"监控": "Monitor",
|
||||||
"视频日志": "Protokol videa",
|
"视频日志": "Protokol videa",
|
||||||
"网关设备": "Brána",
|
|
||||||
"开门器": "Otvírač dveří",
|
"开门器": "Otvírač dveří",
|
||||||
"面容开锁": "Tvář odemkne",
|
"面容开锁": "Tvář odemkne",
|
||||||
"开门方向设置": "Nastavit směr otevření",
|
"开门方向设置": "Nastavit směr otevření",
|
||||||
@ -778,7 +777,6 @@
|
|||||||
"导出": "Export",
|
"导出": "Export",
|
||||||
"批量导出": "Export šarže",
|
"批量导出": "Export šarže",
|
||||||
"读取记录": "Refresh records",
|
"读取记录": "Refresh records",
|
||||||
"手机需联网": "Neednet",
|
|
||||||
"设备": "Zařízení",
|
"设备": "Zařízení",
|
||||||
"消息": "Zprávy",
|
"消息": "Zprávy",
|
||||||
"智能分析": "Inteligentní analýza",
|
"智能分析": "Inteligentní analýza",
|
||||||
@ -1110,5 +1108,15 @@
|
|||||||
"常规使用": "Pravidelné použití",
|
"常规使用": "Pravidelné použití",
|
||||||
"网关通电后,长按重置按钮5秒,指示灯交替闪烁时点击下一步": "Po zapnutí brány stiskněte a podržte tlačítko reset po dobu 5 sekund a klepněte na tlačítko next",
|
"网关通电后,长按重置按钮5秒,指示灯交替闪烁时点击下一步": "Po zapnutí brány stiskněte a podržte tlačítko reset po dobu 5 sekund a klepněte na tlačítko next",
|
||||||
"扫描设备": "Skenovat zařízení",
|
"扫描设备": "Skenovat zařízení",
|
||||||
"删除失败,网关可能已经离线,是否强制删除该数据?": "Odstranění se nezdařilo. Brána možná byla offline. Chcete vynutit smazat data?"
|
"删除失败,网关可能已经离线,是否强制删除该数据?": "Odstranění se nezdařilo. Brána možná byla offline. Chcete vynutit smazat data?",
|
||||||
|
"超级管理员英文": "Super Admin",
|
||||||
|
"授权管理员英文": "Make admin",
|
||||||
|
"普通管理员英文": "Ordinary user",
|
||||||
|
"网关设备英文": "Gateway",
|
||||||
|
"手机需联网英文": "NeedNet",
|
||||||
|
"年简称": "Y",
|
||||||
|
"月简称": "M",
|
||||||
|
"日简称": "D",
|
||||||
|
"时简称": "H",
|
||||||
|
"分简称": "M"
|
||||||
}
|
}
|
||||||
@ -313,7 +313,6 @@
|
|||||||
"删除账号后,你的所有信息及相关记录都会从平台彻底删除,且不可恢复,是否删除?": "Alle dine kontooplysninger vil blive fjernet fra platformen PERMANENTENTIGT og kan ikke gendannes. Ønsker du at slette?",
|
"删除账号后,你的所有信息及相关记录都会从平台彻底删除,且不可恢复,是否删除?": "Alle dine kontooplysninger vil blive fjernet fra platformen PERMANENTENTIGT og kan ikke gendannes. Ønsker du at slette?",
|
||||||
"监控": "Skærm",
|
"监控": "Skærm",
|
||||||
"视频日志": "Videologg",
|
"视频日志": "Videologg",
|
||||||
"网关设备": "GatewayName",
|
|
||||||
"开门器": "Døråbnere",
|
"开门器": "Døråbnere",
|
||||||
"面容开锁": "Ansigt åbnes",
|
"面容开锁": "Ansigt åbnes",
|
||||||
"开门方向设置": "Åbningsvejssæt",
|
"开门方向设置": "Åbningsvejssæt",
|
||||||
@ -778,7 +777,6 @@
|
|||||||
"导出": "Eksportører",
|
"导出": "Eksportører",
|
||||||
"批量导出": "Batch-eksport",
|
"批量导出": "Batch-eksport",
|
||||||
"读取记录": "Genopfrisk poster",
|
"读取记录": "Genopfrisk poster",
|
||||||
"手机需联网": "NeedNet",
|
|
||||||
"设备": "Enhed",
|
"设备": "Enhed",
|
||||||
"消息": "Meddelelser",
|
"消息": "Meddelelser",
|
||||||
"智能分析": "Intelligent analyse",
|
"智能分析": "Intelligent analyse",
|
||||||
@ -1110,5 +1108,15 @@
|
|||||||
"常规使用": "Regelmæssig anvendelse",
|
"常规使用": "Regelmæssig anvendelse",
|
||||||
"网关通电后,长按重置按钮5秒,指示灯交替闪烁时点击下一步": "Når gateway er tændt, tryk og hold nulstillingsknappen i 5 sekunder, og klik Next, når indikator lys blinker skiftevist",
|
"网关通电后,长按重置按钮5秒,指示灯交替闪烁时点击下一步": "Når gateway er tændt, tryk og hold nulstillingsknappen i 5 sekunder, og klik Next, når indikator lys blinker skiftevist",
|
||||||
"扫描设备": "Scan- enhed",
|
"扫描设备": "Scan- enhed",
|
||||||
"删除失败,网关可能已经离线,是否强制删除该数据?": "Sletning mislykkedes. Porten er måske offline. Vil du tvinge slette data?"
|
"删除失败,网关可能已经离线,是否强制删除该数据?": "Sletning mislykkedes. Porten er måske offline. Vil du tvinge slette data?",
|
||||||
|
"超级管理员英文": "Super Admin",
|
||||||
|
"授权管理员英文": "Make admin",
|
||||||
|
"普通管理员英文": "Ordinary user",
|
||||||
|
"网关设备英文": "Gateway",
|
||||||
|
"手机需联网英文": "NeedNet",
|
||||||
|
"年简称": "Y",
|
||||||
|
"月简称": "M",
|
||||||
|
"日简称": "D",
|
||||||
|
"时简称": "H",
|
||||||
|
"分简称": "M"
|
||||||
}
|
}
|
||||||
@ -313,7 +313,6 @@
|
|||||||
"删除账号后,你的所有信息及相关记录都会从平台彻底删除,且不可恢复,是否删除?": "Alle Ihre Konto informationen werden DAUERHAFT von der Plattform entfernt und können nicht wieder hergestellt werden. Möchten Sie löschen?",
|
"删除账号后,你的所有信息及相关记录都会从平台彻底删除,且不可恢复,是否删除?": "Alle Ihre Konto informationen werden DAUERHAFT von der Plattform entfernt und können nicht wieder hergestellt werden. Möchten Sie löschen?",
|
||||||
"监控": "Monitor",
|
"监控": "Monitor",
|
||||||
"视频日志": "Video protokoll",
|
"视频日志": "Video protokoll",
|
||||||
"网关设备": "Gateway",
|
|
||||||
"开门器": "Türöffner",
|
"开门器": "Türöffner",
|
||||||
"面容开锁": "Gesicht öffnet sich",
|
"面容开锁": "Gesicht öffnet sich",
|
||||||
"开门方向设置": "Öffnungs richtung Set",
|
"开门方向设置": "Öffnungs richtung Set",
|
||||||
@ -778,7 +777,6 @@
|
|||||||
"导出": "Export",
|
"导出": "Export",
|
||||||
"批量导出": "Batch-Export",
|
"批量导出": "Batch-Export",
|
||||||
"读取记录": "Rekorde auffrischen",
|
"读取记录": "Rekorde auffrischen",
|
||||||
"手机需联网": "NeedNet",
|
|
||||||
"设备": "Gerät",
|
"设备": "Gerät",
|
||||||
"消息": "Nachrichten",
|
"消息": "Nachrichten",
|
||||||
"智能分析": "Intelligente Analytik",
|
"智能分析": "Intelligente Analytik",
|
||||||
@ -1110,5 +1108,15 @@
|
|||||||
"常规使用": "Regelmäßige Verwendung",
|
"常规使用": "Regelmäßige Verwendung",
|
||||||
"网关通电后,长按重置按钮5秒,指示灯交替闪烁时点击下一步": "Nachdem das Gateway eingesc haltet ist, drücken und halten Sie die Reset-Taste für 5 Sekunden, und klicken Sie auf Weiter, wenn die Kontroll leuchte blinkt abwechselnd",
|
"网关通电后,长按重置按钮5秒,指示灯交替闪烁时点击下一步": "Nachdem das Gateway eingesc haltet ist, drücken und halten Sie die Reset-Taste für 5 Sekunden, und klicken Sie auf Weiter, wenn die Kontroll leuchte blinkt abwechselnd",
|
||||||
"扫描设备": "Scan-Gerät",
|
"扫描设备": "Scan-Gerät",
|
||||||
"删除失败,网关可能已经离线,是否强制删除该数据?": "Löschung fehl geschlagen. Das Gateway ist möglicher weise offline gegangen. Möchten Sie das Löschen der Daten erzwingen?"
|
"删除失败,网关可能已经离线,是否强制删除该数据?": "Löschung fehl geschlagen. Das Gateway ist möglicher weise offline gegangen. Möchten Sie das Löschen der Daten erzwingen?",
|
||||||
|
"超级管理员英文": "Super Admin",
|
||||||
|
"授权管理员英文": "Make admin",
|
||||||
|
"普通管理员英文": "Ordinary user",
|
||||||
|
"网关设备英文": "Gateway",
|
||||||
|
"手机需联网英文": "NeedNet",
|
||||||
|
"年简称": "Y",
|
||||||
|
"月简称": "M",
|
||||||
|
"日简称": "D",
|
||||||
|
"时简称": "H",
|
||||||
|
"分简称": "M"
|
||||||
}
|
}
|
||||||
@ -313,7 +313,6 @@
|
|||||||
"删除账号后,你的所有信息及相关记录都会从平台彻底删除,且不可恢复,是否删除?": "Όλες οι πληροφορίες λογαριασμού σας θα αφαιρεθούν από την πλατφόρμα ΜΟΝΑ και δεν μπορούν να ανακτηθούν. Θέλετε να διαγραφείτε;",
|
"删除账号后,你的所有信息及相关记录都会从平台彻底删除,且不可恢复,是否删除?": "Όλες οι πληροφορίες λογαριασμού σας θα αφαιρεθούν από την πλατφόρμα ΜΟΝΑ και δεν μπορούν να ανακτηθούν. Θέλετε να διαγραφείτε;",
|
||||||
"监控": "Παρακολούθηση",
|
"监控": "Παρακολούθηση",
|
||||||
"视频日志": "Καταγραφή βίντεο",
|
"视频日志": "Καταγραφή βίντεο",
|
||||||
"网关设备": "Πύλη πύλης",
|
|
||||||
"开门器": "Ανοιχτή πόρτας",
|
"开门器": "Ανοιχτή πόρτας",
|
||||||
"面容开锁": "Ξεκλείδωμα πρόσωπου",
|
"面容开锁": "Ξεκλείδωμα πρόσωπου",
|
||||||
"开门方向设置": "Άνοιγμα σύνολο κατεύθυνσης",
|
"开门方向设置": "Άνοιγμα σύνολο κατεύθυνσης",
|
||||||
@ -778,7 +777,6 @@
|
|||||||
"导出": "Εξαγωγή",
|
"导出": "Εξαγωγή",
|
||||||
"批量导出": "Παρτίδα εξαγωγή",
|
"批量导出": "Παρτίδα εξαγωγή",
|
||||||
"读取记录": "Ανανέωση εγγραφής",
|
"读取记录": "Ανανέωση εγγραφής",
|
||||||
"手机需联网": "NeedNet",
|
|
||||||
"设备": "Συσκευή",
|
"设备": "Συσκευή",
|
||||||
"消息": "Μηνύματα",
|
"消息": "Μηνύματα",
|
||||||
"智能分析": "Ευφυής αναλυτικός",
|
"智能分析": "Ευφυής αναλυτικός",
|
||||||
@ -1110,5 +1108,15 @@
|
|||||||
"常规使用": "Κανονική χρήση:",
|
"常规使用": "Κανονική χρήση:",
|
||||||
"网关通电后,长按重置按钮5秒,指示灯交替闪烁时点击下一步": "Αφού ενεργοποιηθεί η πύλη, πατήστε και κρατήστε το κουμπί επαναφοράς για 5 δευτερόλεπτα, και κάντε κλικ Next όταν το φως δείκτη αναβοσβήνει εναλλάξα",
|
"网关通电后,长按重置按钮5秒,指示灯交替闪烁时点击下一步": "Αφού ενεργοποιηθεί η πύλη, πατήστε και κρατήστε το κουμπί επαναφοράς για 5 δευτερόλεπτα, και κάντε κλικ Next όταν το φως δείκτη αναβοσβήνει εναλλάξα",
|
||||||
"扫描设备": "Συσκευή σάρωσης",
|
"扫描设备": "Συσκευή σάρωσης",
|
||||||
"删除失败,网关可能已经离线,是否强制删除该数据?": "Η διαγραφή απέτυχε. Η πύλη μπορεί να έχει εκτός λειτουργίας. Θέλετε να αναγκάσετε τη διαγραφή των δεδομένων;"
|
"删除失败,网关可能已经离线,是否强制删除该数据?": "Η διαγραφή απέτυχε. Η πύλη μπορεί να έχει εκτός λειτουργίας. Θέλετε να αναγκάσετε τη διαγραφή των δεδομένων;",
|
||||||
|
"超级管理员英文": "Super Admin",
|
||||||
|
"授权管理员英文": "Make admin",
|
||||||
|
"普通管理员英文": "Ordinary user",
|
||||||
|
"网关设备英文": "Gateway",
|
||||||
|
"手机需联网英文": "NeedNet",
|
||||||
|
"年简称": "Y",
|
||||||
|
"月简称": "M",
|
||||||
|
"日简称": "D",
|
||||||
|
"时简称": "H",
|
||||||
|
"分简称": "M"
|
||||||
}
|
}
|
||||||
@ -315,7 +315,6 @@
|
|||||||
"删除账号后,你的所有信息及相关记录都会从平台彻底删除,且不可恢复,是否删除?": "All your Account information will be Removed from the Platform PERMANENTLY and cannot be Recovered.Do you want to Delete?",
|
"删除账号后,你的所有信息及相关记录都会从平台彻底删除,且不可恢复,是否删除?": "All your Account information will be Removed from the Platform PERMANENTLY and cannot be Recovered.Do you want to Delete?",
|
||||||
"监控": "Monitor",
|
"监控": "Monitor",
|
||||||
"视频日志": "Video Log",
|
"视频日志": "Video Log",
|
||||||
"网关设备": "Gateway",
|
|
||||||
"开门器": "Door Opener",
|
"开门器": "Door Opener",
|
||||||
"面容开锁": "Face Unlocks",
|
"面容开锁": "Face Unlocks",
|
||||||
"开门方向设置": "Opening Direction Set",
|
"开门方向设置": "Opening Direction Set",
|
||||||
@ -787,7 +786,6 @@
|
|||||||
"导出":"Export",
|
"导出":"Export",
|
||||||
"批量导出":"Batch export",
|
"批量导出":"Batch export",
|
||||||
"读取记录":"Refresh Records",
|
"读取记录":"Refresh Records",
|
||||||
"手机需联网":"NeedNet",
|
|
||||||
"设备":"Device",
|
"设备":"Device",
|
||||||
"消息":"Messages",
|
"消息":"Messages",
|
||||||
"智能分析":"Intelligent analytics",
|
"智能分析":"Intelligent analytics",
|
||||||
@ -1113,6 +1111,15 @@
|
|||||||
"中功率": "Medium power",
|
"中功率": "Medium power",
|
||||||
"常规使用": "Regular use",
|
"常规使用": "Regular use",
|
||||||
"扫描设备": "Scan device",
|
"扫描设备": "Scan device",
|
||||||
"删除失败,网关可能已经离线,是否强制删除该数据?": "Deletion failed. The gateway may have gone offline. Do you want to force delete the data?"
|
"删除失败,网关可能已经离线,是否强制删除该数据?": "Deletion failed. The gateway may have gone offline. Do you want to force delete the data?",
|
||||||
|
"超级管理员英文": "Super Admin",
|
||||||
|
"授权管理员英文": "Make admin",
|
||||||
|
"普通管理员英文": "Ordinary user",
|
||||||
|
"网关设备英文": "Gateway",
|
||||||
|
"手机需联网英文": "NeedNet",
|
||||||
|
"年简称": "Y",
|
||||||
|
"月简称": "M",
|
||||||
|
"日简称": "D",
|
||||||
|
"时简称": "H",
|
||||||
|
"分简称": "M"
|
||||||
}
|
}
|
||||||
|
|||||||
@ -313,7 +313,6 @@
|
|||||||
"删除账号后,你的所有信息及相关记录都会从平台彻底删除,且不可恢复,是否删除?": "Toda la información de su cuenta se eliminará de la plataforma de forma permanente y no se podrá recuperar.",
|
"删除账号后,你的所有信息及相关记录都会从平台彻底删除,且不可恢复,是否删除?": "Toda la información de su cuenta se eliminará de la plataforma de forma permanente y no se podrá recuperar.",
|
||||||
"监控": "Monitor",
|
"监控": "Monitor",
|
||||||
"视频日志": "Registro de vídeo",
|
"视频日志": "Registro de vídeo",
|
||||||
"网关设备": "Puerta de enlace",
|
|
||||||
"开门器": "Abrelatas de la puerta",
|
"开门器": "Abrelatas de la puerta",
|
||||||
"面容开锁": "Desbloquea la cara",
|
"面容开锁": "Desbloquea la cara",
|
||||||
"开门方向设置": "Conjunto de dirección de apertura",
|
"开门方向设置": "Conjunto de dirección de apertura",
|
||||||
@ -778,7 +777,6 @@
|
|||||||
"导出": "Exportación",
|
"导出": "Exportación",
|
||||||
"批量导出": "Exportación de lotes",
|
"批量导出": "Exportación de lotes",
|
||||||
"读取记录": "Actualizar registros",
|
"读取记录": "Actualizar registros",
|
||||||
"手机需联网": "NeedNet",
|
|
||||||
"设备": "Dispositivo",
|
"设备": "Dispositivo",
|
||||||
"消息": "Mensajes",
|
"消息": "Mensajes",
|
||||||
"智能分析": "Analítica inteligente",
|
"智能分析": "Analítica inteligente",
|
||||||
@ -1110,5 +1108,15 @@
|
|||||||
"常规使用": "Uso regular",
|
"常规使用": "Uso regular",
|
||||||
"网关通电后,长按重置按钮5秒,指示灯交替闪烁时点击下一步": "Después de encender la puerta de enlace, mantenga presionado el botón de reinicio durante 5 segundos y haga clic en Siguiente cuando la luz indicadora parpadee alternativamente",
|
"网关通电后,长按重置按钮5秒,指示灯交替闪烁时点击下一步": "Después de encender la puerta de enlace, mantenga presionado el botón de reinicio durante 5 segundos y haga clic en Siguiente cuando la luz indicadora parpadee alternativamente",
|
||||||
"扫描设备": "Dispositivo de exploración",
|
"扫描设备": "Dispositivo de exploración",
|
||||||
"删除失败,网关可能已经离线,是否强制删除该数据?": "Falló la eliminación. Es posible que la puerta de enlace se haya desconectado. ¿Desea forzar la eliminación de los datos?"
|
"删除失败,网关可能已经离线,是否强制删除该数据?": "Falló la eliminación. Es posible que la puerta de enlace se haya desconectado. ¿Desea forzar la eliminación de los datos?",
|
||||||
|
"超级管理员英文": "Super Admin",
|
||||||
|
"授权管理员英文": "Make admin",
|
||||||
|
"普通管理员英文": "Ordinary user",
|
||||||
|
"网关设备英文": "Gateway",
|
||||||
|
"手机需联网英文": "NeedNet",
|
||||||
|
"年简称": "Y",
|
||||||
|
"月简称": "M",
|
||||||
|
"日简称": "D",
|
||||||
|
"时简称": "H",
|
||||||
|
"分简称": "M"
|
||||||
}
|
}
|
||||||
@ -313,7 +313,6 @@
|
|||||||
"删除账号后,你的所有信息及相关记录都会从平台彻底删除,且不可恢复,是否删除?": "Kogu Teie konto teave eemaldatakse platvormilt PERMANENTILT ja seda ei saa taastada.Kas soovite kustutada?",
|
"删除账号后,你的所有信息及相关记录都会从平台彻底删除,且不可恢复,是否删除?": "Kogu Teie konto teave eemaldatakse platvormilt PERMANENTILT ja seda ei saa taastada.Kas soovite kustutada?",
|
||||||
"监控": "Monitor",
|
"监控": "Monitor",
|
||||||
"视频日志": "Video logi",
|
"视频日志": "Video logi",
|
||||||
"网关设备": "Väravatee",
|
|
||||||
"开门器": "Ukseavaja",
|
"开门器": "Ukseavaja",
|
||||||
"面容开锁": "Nägu lahti lukustus",
|
"面容开锁": "Nägu lahti lukustus",
|
||||||
"开门方向设置": "Avava suuna komplektComment",
|
"开门方向设置": "Avava suuna komplektComment",
|
||||||
@ -778,7 +777,6 @@
|
|||||||
"导出": "Eksport",
|
"导出": "Eksport",
|
||||||
"批量导出": "Partii eksportimine",
|
"批量导出": "Partii eksportimine",
|
||||||
"读取记录": "Värskenda salvestus",
|
"读取记录": "Värskenda salvestus",
|
||||||
"手机需联网": "NeedNet",
|
|
||||||
"设备": "Seade",
|
"设备": "Seade",
|
||||||
"消息": "Teated",
|
"消息": "Teated",
|
||||||
"智能分析": "Intelligentne analüüs",
|
"智能分析": "Intelligentne analüüs",
|
||||||
@ -1110,5 +1108,15 @@
|
|||||||
"常规使用": "Regulaarne kasutamine",
|
"常规使用": "Regulaarne kasutamine",
|
||||||
"网关通电后,长按重置按钮5秒,指示灯交替闪烁时点击下一步": "Kui värav on sisse lülitatud, vajutage ja hoidke nuppu 5 sekundit, ja klõpsa Järgmine, kui indikaator valgus vilgub vaheldumisel",
|
"网关通电后,长按重置按钮5秒,指示灯交替闪烁时点击下一步": "Kui värav on sisse lülitatud, vajutage ja hoidke nuppu 5 sekundit, ja klõpsa Järgmine, kui indikaator valgus vilgub vaheldumisel",
|
||||||
"扫描设备": "Skaneerimisseade",
|
"扫描设备": "Skaneerimisseade",
|
||||||
"删除失败,网关可能已经离线,是否强制删除该数据?": "Kustutamine nurjus. Värav võis välja lülitada. Kas soovid kustutada andmed?"
|
"删除失败,网关可能已经离线,是否强制删除该数据?": "Kustutamine nurjus. Värav võis välja lülitada. Kas soovid kustutada andmed?",
|
||||||
|
"超级管理员英文": "Super Admin",
|
||||||
|
"授权管理员英文": "Make admin",
|
||||||
|
"普通管理员英文": "Ordinary user",
|
||||||
|
"网关设备英文": "Gateway",
|
||||||
|
"手机需联网英文": "NeedNet",
|
||||||
|
"年简称": "Y",
|
||||||
|
"月简称": "M",
|
||||||
|
"日简称": "D",
|
||||||
|
"时简称": "H",
|
||||||
|
"分简称": "M"
|
||||||
}
|
}
|
||||||
@ -313,7 +313,6 @@
|
|||||||
"删除账号后,你的所有信息及相关记录都会从平台彻底删除,且不可恢复,是否删除?": "Kaikki tilitiedot poistetaan alustalta PERMANENTTI eikä niitä voi palauttaa.Haluatko poistaa?",
|
"删除账号后,你的所有信息及相关记录都会从平台彻底删除,且不可恢复,是否删除?": "Kaikki tilitiedot poistetaan alustalta PERMANENTTI eikä niitä voi palauttaa.Haluatko poistaa?",
|
||||||
"监控": "Monitori",
|
"监控": "Monitori",
|
||||||
"视频日志": "Videoloki",
|
"视频日志": "Videoloki",
|
||||||
"网关设备": "GatewayComment",
|
|
||||||
"开门器": "Oviaukko",
|
"开门器": "Oviaukko",
|
||||||
"面容开锁": "Kasvo avaa",
|
"面容开锁": "Kasvo avaa",
|
||||||
"开门方向设置": "Avaava suunta",
|
"开门方向设置": "Avaava suunta",
|
||||||
@ -778,7 +777,6 @@
|
|||||||
"导出": "Vienti",
|
"导出": "Vienti",
|
||||||
"批量导出": "Erän vienti",
|
"批量导出": "Erän vienti",
|
||||||
"读取记录": "Päivitä tiedostot",
|
"读取记录": "Päivitä tiedostot",
|
||||||
"手机需联网": "NeedNet",
|
|
||||||
"设备": "Laite",
|
"设备": "Laite",
|
||||||
"消息": "Viestit",
|
"消息": "Viestit",
|
||||||
"智能分析": "Älykäs analytiikka",
|
"智能分析": "Älykäs analytiikka",
|
||||||
@ -1110,5 +1108,15 @@
|
|||||||
"常规使用": "Säännöllinen käyttö",
|
"常规使用": "Säännöllinen käyttö",
|
||||||
"网关通电后,长按重置按钮5秒,指示灯交替闪烁时点击下一步": "Kun portti on käytössä, paina ja pidä painiketta nollauspainiketta 5 sekunnin ajan, ja klikkaa Seuraava kun ilmaisin valo vilkkuu vuorotellensa",
|
"网关通电后,长按重置按钮5秒,指示灯交替闪烁时点击下一步": "Kun portti on käytössä, paina ja pidä painiketta nollauspainiketta 5 sekunnin ajan, ja klikkaa Seuraava kun ilmaisin valo vilkkuu vuorotellensa",
|
||||||
"扫描设备": "Skannauslaite",
|
"扫描设备": "Skannauslaite",
|
||||||
"删除失败,网关可能已经离线,是否强制删除该数据?": "Poisto epäonnistui. Portti on ehkä pois päältä. Haluatko pakottaa poistamaan tiedot?"
|
"删除失败,网关可能已经离线,是否强制删除该数据?": "Poisto epäonnistui. Portti on ehkä pois päältä. Haluatko pakottaa poistamaan tiedot?",
|
||||||
|
"超级管理员英文": "Super Admin",
|
||||||
|
"授权管理员英文": "Make admin",
|
||||||
|
"普通管理员英文": "Ordinary user",
|
||||||
|
"网关设备英文": "Gateway",
|
||||||
|
"手机需联网英文": "NeedNet",
|
||||||
|
"年简称": "Y",
|
||||||
|
"月简称": "M",
|
||||||
|
"日简称": "D",
|
||||||
|
"时简称": "H",
|
||||||
|
"分简称": "M"
|
||||||
}
|
}
|
||||||
@ -313,7 +313,6 @@
|
|||||||
"删除账号后,你的所有信息及相关记录都会从平台彻底删除,且不可恢复,是否删除?": "Toutes les informations de votre compte seront supprimées de la plate-forme de manière PERMANENTE et ne pourront pas être récupérées. Voulez-vous supprimer?",
|
"删除账号后,你的所有信息及相关记录都会从平台彻底删除,且不可恢复,是否删除?": "Toutes les informations de votre compte seront supprimées de la plate-forme de manière PERMANENTE et ne pourront pas être récupérées. Voulez-vous supprimer?",
|
||||||
"监控": "Moniteur",
|
"监控": "Moniteur",
|
||||||
"视频日志": "Journal vidéo",
|
"视频日志": "Journal vidéo",
|
||||||
"网关设备": "Passerelle",
|
|
||||||
"开门器": "Ouvre-porte",
|
"开门器": "Ouvre-porte",
|
||||||
"面容开锁": "Le visage se déverrouille",
|
"面容开锁": "Le visage se déverrouille",
|
||||||
"开门方向设置": "Ensemble de direction d'ouverture",
|
"开门方向设置": "Ensemble de direction d'ouverture",
|
||||||
@ -778,7 +777,6 @@
|
|||||||
"导出": "Exportation",
|
"导出": "Exportation",
|
||||||
"批量导出": "Exportation par lots",
|
"批量导出": "Exportation par lots",
|
||||||
"读取记录": "Rafraîchir les enregistrements",
|
"读取记录": "Rafraîchir les enregistrements",
|
||||||
"手机需联网": "NeedNet",
|
|
||||||
"设备": "Appareil",
|
"设备": "Appareil",
|
||||||
"消息": "Messages",
|
"消息": "Messages",
|
||||||
"智能分析": "Analyse intelligente",
|
"智能分析": "Analyse intelligente",
|
||||||
@ -1110,5 +1108,15 @@
|
|||||||
"常规使用": "Utilisation régulière",
|
"常规使用": "Utilisation régulière",
|
||||||
"网关通电后,长按重置按钮5秒,指示灯交替闪烁时点击下一步": "Une fois la passerelle allumée, appuyez et maintenez enfoncé le bouton de réinitialisation pendant 5 secondes, puis cliquez sur Suivant lorsque le voyant clignote alternativement",
|
"网关通电后,长按重置按钮5秒,指示灯交替闪烁时点击下一步": "Une fois la passerelle allumée, appuyez et maintenez enfoncé le bouton de réinitialisation pendant 5 secondes, puis cliquez sur Suivant lorsque le voyant clignote alternativement",
|
||||||
"扫描设备": "Appareil de numérisation",
|
"扫描设备": "Appareil de numérisation",
|
||||||
"删除失败,网关可能已经离线,是否强制删除该数据?": "La suppression a échoué. La passerelle est peut-être hors ligne. Voulez-vous forcer la suppression des données?"
|
"删除失败,网关可能已经离线,是否强制删除该数据?": "La suppression a échoué. La passerelle est peut-être hors ligne. Voulez-vous forcer la suppression des données?",
|
||||||
|
"超级管理员英文": "Super Admin",
|
||||||
|
"授权管理员英文": "Make admin",
|
||||||
|
"普通管理员英文": "Ordinary user",
|
||||||
|
"网关设备英文": "Gateway",
|
||||||
|
"手机需联网英文": "NeedNet",
|
||||||
|
"年简称": "Y",
|
||||||
|
"月简称": "M",
|
||||||
|
"日简称": "D",
|
||||||
|
"时简称": "H",
|
||||||
|
"分简称": "M"
|
||||||
}
|
}
|
||||||
@ -313,7 +313,6 @@
|
|||||||
"删除账号后,你的所有信息及相关记录都会从平台彻底删除,且不可恢复,是否删除?": "כל פרטי החשבון שלך יוסר מהפלטפורמה לצמיתות ולא ניתן לשחזר. האם ברצונך למחוק?",
|
"删除账号后,你的所有信息及相关记录都会从平台彻底删除,且不可恢复,是否删除?": "כל פרטי החשבון שלך יוסר מהפלטפורמה לצמיתות ולא ניתן לשחזר. האם ברצונך למחוק?",
|
||||||
"监控": "מוניטור",
|
"监控": "מוניטור",
|
||||||
"视频日志": "יומן וידאו",
|
"视频日志": "יומן וידאו",
|
||||||
"网关设备": "שער",
|
|
||||||
"开门器": "פותחן דלת",
|
"开门器": "פותחן דלת",
|
||||||
"面容开锁": "פותח פנים",
|
"面容开锁": "פותח פנים",
|
||||||
"开门方向设置": "פתיחת כיוון",
|
"开门方向设置": "פתיחת כיוון",
|
||||||
@ -778,7 +777,6 @@
|
|||||||
"导出": "יצוא",
|
"导出": "יצוא",
|
||||||
"批量导出": "יצוא אצווה",
|
"批量导出": "יצוא אצווה",
|
||||||
"读取记录": "ריענון רשומות",
|
"读取记录": "ריענון רשומות",
|
||||||
"手机需联网": "נברשת",
|
|
||||||
"设备": "מכשיר",
|
"设备": "מכשיר",
|
||||||
"消息": "הודעות",
|
"消息": "הודעות",
|
||||||
"智能分析": "ניתוח חכם",
|
"智能分析": "ניתוח חכם",
|
||||||
@ -1110,5 +1108,15 @@
|
|||||||
"常规使用": "שימוש קבוע",
|
"常规使用": "שימוש קבוע",
|
||||||
"网关通电后,长按重置按钮5秒,指示灯交替闪烁时点击下一步": "לאחר השער מופעל, לחץ והחזק את כפתור איפוס עבור 5 שניות, ולחץ על הבא כאשר מחוון אור מהבהב לסירוגין",
|
"网关通电后,长按重置按钮5秒,指示灯交替闪烁时点击下一步": "לאחר השער מופעל, לחץ והחזק את כפתור איפוס עבור 5 שניות, ולחץ על הבא כאשר מחוון אור מהבהב לסירוגין",
|
||||||
"扫描设备": "התקן סריקה",
|
"扫描设备": "התקן סריקה",
|
||||||
"删除失败,网关可能已经离线,是否强制删除该数据?": "מחיקה נכשלה. ייתכן שהשער נעלם מהרשת. האם ברצונך לאלץ למחוק את הנתונים?"
|
"删除失败,网关可能已经离线,是否强制删除该数据?": "מחיקה נכשלה. ייתכן שהשער נעלם מהרשת. האם ברצונך לאלץ למחוק את הנתונים?",
|
||||||
|
"超级管理员英文": "Super Admin",
|
||||||
|
"授权管理员英文": "Make admin",
|
||||||
|
"普通管理员英文": "Ordinary user",
|
||||||
|
"网关设备英文": "Gateway",
|
||||||
|
"手机需联网英文": "NeedNet",
|
||||||
|
"年简称": "Y",
|
||||||
|
"月简称": "M",
|
||||||
|
"日简称": "D",
|
||||||
|
"时简称": "H",
|
||||||
|
"分简称": "M"
|
||||||
}
|
}
|
||||||
@ -314,7 +314,6 @@
|
|||||||
"删除账号后,你的所有信息及相关记录都会从平台彻底删除,且不可恢复,是否删除?": "您的所有账户信息将从平台上永久删除,且无法恢复。要删除吗?",
|
"删除账号后,你的所有信息及相关记录都会从平台彻底删除,且不可恢复,是否删除?": "您的所有账户信息将从平台上永久删除,且无法恢复。要删除吗?",
|
||||||
"监控": "监控",
|
"监控": "监控",
|
||||||
"视频日志": "视频日志",
|
"视频日志": "视频日志",
|
||||||
"网关设备": "网关",
|
|
||||||
"开门器": "开门器",
|
"开门器": "开门器",
|
||||||
"面容开锁": "脸解锁",
|
"面容开锁": "脸解锁",
|
||||||
"开门方向设置": "开启方向集",
|
"开门方向设置": "开启方向集",
|
||||||
@ -786,7 +785,6 @@
|
|||||||
"导出": "出口",
|
"导出": "出口",
|
||||||
"批量导出": "批量出口",
|
"批量导出": "批量出口",
|
||||||
"读取记录": "刷新记录",
|
"读取记录": "刷新记录",
|
||||||
"手机需联网": "NeedNet",
|
|
||||||
"设备": "设备",
|
"设备": "设备",
|
||||||
"消息": "消息",
|
"消息": "消息",
|
||||||
"智能分析": "智能分析",
|
"智能分析": "智能分析",
|
||||||
@ -1110,5 +1108,15 @@
|
|||||||
"常规使用": "经常使用",
|
"常规使用": "经常使用",
|
||||||
"网关通电后,长按重置按钮5秒,指示灯交替闪烁时点击下一步": "待设备上电后,长按复位键5秒,指示灯交替闪烁后,单击“下一步”",
|
"网关通电后,长按重置按钮5秒,指示灯交替闪烁时点击下一步": "待设备上电后,长按复位键5秒,指示灯交替闪烁后,单击“下一步”",
|
||||||
"扫描设备": "扫描设备",
|
"扫描设备": "扫描设备",
|
||||||
"删除失败,网关可能已经离线,是否强制删除该数据?": "删除失败。网关可能已经脱机。是否要强制删除数据?"
|
"删除失败,网关可能已经离线,是否强制删除该数据?": "删除失败。网关可能已经脱机。是否要强制删除数据?",
|
||||||
|
"超级管理员英文": "超级管理员",
|
||||||
|
"授权管理员英文": "使管理",
|
||||||
|
"普通管理员英文": "普通用户",
|
||||||
|
"网关设备英文": "网关设备",
|
||||||
|
"手机需联网英文": "手机需联网",
|
||||||
|
"年简称": "Y",
|
||||||
|
"月简称": "M",
|
||||||
|
"日简称": "D",
|
||||||
|
"时简称": "H",
|
||||||
|
"分简称": "M"
|
||||||
}
|
}
|
||||||
@ -313,7 +313,6 @@
|
|||||||
"删除账号后,你的所有信息及相关记录都会从平台彻底删除,且不可恢复,是否删除?": "Sve informacije vašeg računa će biti uklonjene s platforme i neće se moći vratiti.Želite li izbrisati?",
|
"删除账号后,你的所有信息及相关记录都会从平台彻底删除,且不可恢复,是否删除?": "Sve informacije vašeg računa će biti uklonjene s platforme i neće se moći vratiti.Želite li izbrisati?",
|
||||||
"监控": "Monitor",
|
"监控": "Monitor",
|
||||||
"视频日志": "Video dnevnik",
|
"视频日志": "Video dnevnik",
|
||||||
"网关设备": "Prolaz",
|
|
||||||
"开门器": "Otvarač vrata",
|
"开门器": "Otvarač vrata",
|
||||||
"面容开锁": "Otključa lice",
|
"面容开锁": "Otključa lice",
|
||||||
"开门方向设置": "Smjer otvaranja",
|
"开门方向设置": "Smjer otvaranja",
|
||||||
@ -778,7 +777,6 @@
|
|||||||
"导出": "Izvozi",
|
"导出": "Izvozi",
|
||||||
"批量导出": "Izvoz serije",
|
"批量导出": "Izvoz serije",
|
||||||
"读取记录": "Osvježi zapise",
|
"读取记录": "Osvježi zapise",
|
||||||
"手机需联网": "NeedNet",
|
|
||||||
"设备": "Uređaj",
|
"设备": "Uređaj",
|
||||||
"消息": "Poruka servera:",
|
"消息": "Poruka servera:",
|
||||||
"智能分析": "Inteligentna analiza",
|
"智能分析": "Inteligentna analiza",
|
||||||
@ -1110,5 +1108,15 @@
|
|||||||
"常规使用": "Redovna upotreba",
|
"常规使用": "Redovna upotreba",
|
||||||
"网关通电后,长按重置按钮5秒,指示灯交替闪烁时点击下一步": "Nakon što se prolaz ukljuèi, pritisnite i zadržite dugme za reset 5 sekundi, i kliknite Sljedeća kada svjetlost indikatora izmijeniti",
|
"网关通电后,长按重置按钮5秒,指示灯交替闪烁时点击下一步": "Nakon što se prolaz ukljuèi, pritisnite i zadržite dugme za reset 5 sekundi, i kliknite Sljedeća kada svjetlost indikatora izmijeniti",
|
||||||
"扫描设备": "Skeniraj uređaj",
|
"扫描设备": "Skeniraj uređaj",
|
||||||
"删除失败,网关可能已经离线,是否强制删除该数据?": "Brisanje nije uspjelo. Prolaz je možda nestao. Želite li prisiliti brisati podatke?"
|
"删除失败,网关可能已经离线,是否强制删除该数据?": "Brisanje nije uspjelo. Prolaz je možda nestao. Želite li prisiliti brisati podatke?",
|
||||||
|
"超级管理员英文": "Super Admin",
|
||||||
|
"授权管理员英文": "Make admin",
|
||||||
|
"普通管理员英文": "Ordinary user",
|
||||||
|
"网关设备英文": "Gateway",
|
||||||
|
"手机需联网英文": "NeedNet",
|
||||||
|
"年简称": "Y",
|
||||||
|
"月简称": "M",
|
||||||
|
"日简称": "D",
|
||||||
|
"时简称": "H",
|
||||||
|
"分简称": "M"
|
||||||
}
|
}
|
||||||
@ -313,7 +313,6 @@
|
|||||||
"删除账号后,你的所有信息及相关记录都会从平台彻底删除,且不可恢复,是否删除?": "Az összes számlaadatot végleg eltávolítjuk a platformról, és nem lehet visszanyerni. szeretné törölni?",
|
"删除账号后,你的所有信息及相关记录都会从平台彻底删除,且不可恢复,是否删除?": "Az összes számlaadatot végleg eltávolítjuk a platformról, és nem lehet visszanyerni. szeretné törölni?",
|
||||||
"监控": "Monitor",
|
"监控": "Monitor",
|
||||||
"视频日志": "Videó napló",
|
"视频日志": "Videó napló",
|
||||||
"网关设备": "Gateway",
|
|
||||||
"开门器": "Ajtónyitó",
|
"开门器": "Ajtónyitó",
|
||||||
"面容开锁": "Face kinyit",
|
"面容开锁": "Face kinyit",
|
||||||
"开门方向设置": "Nyitási irány beállítás",
|
"开门方向设置": "Nyitási irány beállítás",
|
||||||
@ -778,7 +777,6 @@
|
|||||||
"导出": "Export",
|
"导出": "Export",
|
||||||
"批量导出": "Batch export",
|
"批量导出": "Batch export",
|
||||||
"读取记录": "Refresh records",
|
"读取记录": "Refresh records",
|
||||||
"手机需联网": "Neednet",
|
|
||||||
"设备": "Eszköz",
|
"设备": "Eszköz",
|
||||||
"消息": "Üzenetek",
|
"消息": "Üzenetek",
|
||||||
"智能分析": "Intelligens analitika",
|
"智能分析": "Intelligens analitika",
|
||||||
@ -1110,5 +1108,15 @@
|
|||||||
"常规使用": "Rendszeres használat",
|
"常规使用": "Rendszeres használat",
|
||||||
"网关通电后,长按重置按钮5秒,指示灯交替闪烁时点击下一步": "Miután az átjáró be van kapcsolva, nyomja meg és tartsa a reset gombot 5 másodpercig, és kattintson a következő gombra, amikor a jelző fény felváltva villog",
|
"网关通电后,长按重置按钮5秒,指示灯交替闪烁时点击下一步": "Miután az átjáró be van kapcsolva, nyomja meg és tartsa a reset gombot 5 másodpercig, és kattintson a következő gombra, amikor a jelző fény felváltva villog",
|
||||||
"扫描设备": "Beolvasási eszköz",
|
"扫描设备": "Beolvasási eszköz",
|
||||||
"删除失败,网关可能已经离线,是否强制删除该数据?": "A törlés nem sikerült. Az átjáró lehet, hogy offline lett. Szeretné kényszeríteni az adatok törlését?"
|
"删除失败,网关可能已经离线,是否强制删除该数据?": "A törlés nem sikerült. Az átjáró lehet, hogy offline lett. Szeretné kényszeríteni az adatok törlését?",
|
||||||
|
"超级管理员英文": "Super Admin",
|
||||||
|
"授权管理员英文": "Make admin",
|
||||||
|
"普通管理员英文": "Ordinary user",
|
||||||
|
"网关设备英文": "Gateway",
|
||||||
|
"手机需联网英文": "NeedNet",
|
||||||
|
"年简称": "Y",
|
||||||
|
"月简称": "M",
|
||||||
|
"日简称": "D",
|
||||||
|
"时简称": "H",
|
||||||
|
"分简称": "M"
|
||||||
}
|
}
|
||||||
@ -313,7 +313,6 @@
|
|||||||
"删除账号后,你的所有信息及相关记录都会从平台彻底删除,且不可恢复,是否删除?": "Semua informasi akun Anda akan dihapus dari Platform permanen dan tidak dapat dipulihkan. Apakah Anda ingin menghapus?",
|
"删除账号后,你的所有信息及相关记录都会从平台彻底删除,且不可恢复,是否删除?": "Semua informasi akun Anda akan dihapus dari Platform permanen dan tidak dapat dipulihkan. Apakah Anda ingin menghapus?",
|
||||||
"监控": "Monitor",
|
"监控": "Monitor",
|
||||||
"视频日志": "Log Video",
|
"视频日志": "Log Video",
|
||||||
"网关设备": "Gateway",
|
|
||||||
"开门器": "Pembuka pintu",
|
"开门器": "Pembuka pintu",
|
||||||
"面容开锁": "Buka kunci wajah",
|
"面容开锁": "Buka kunci wajah",
|
||||||
"开门方向设置": "Set penunjuk arah",
|
"开门方向设置": "Set penunjuk arah",
|
||||||
@ -778,7 +777,6 @@
|
|||||||
"导出": "Ekspor",
|
"导出": "Ekspor",
|
||||||
"批量导出": "Batch ekspor",
|
"批量导出": "Batch ekspor",
|
||||||
"读取记录": "Refresh rekaman",
|
"读取记录": "Refresh rekaman",
|
||||||
"手机需联网": "NeedNet",
|
|
||||||
"设备": "Perangkat",
|
"设备": "Perangkat",
|
||||||
"消息": "Pesan",
|
"消息": "Pesan",
|
||||||
"智能分析": "Intelligent analytics",
|
"智能分析": "Intelligent analytics",
|
||||||
@ -1110,5 +1108,15 @@
|
|||||||
"常规使用": "Penggunaan biasa",
|
"常规使用": "Penggunaan biasa",
|
||||||
"网关通电后,长按重置按钮5秒,指示灯交替闪烁时点击下一步": "Setelah gateway menyala, tekan dan tahan tombol reset selama 5 detik, dan klik berikutnya ketika lampu indikator berkedip secara bersamaan",
|
"网关通电后,长按重置按钮5秒,指示灯交替闪烁时点击下一步": "Setelah gateway menyala, tekan dan tahan tombol reset selama 5 detik, dan klik berikutnya ketika lampu indikator berkedip secara bersamaan",
|
||||||
"扫描设备": "Perangkat Pindai",
|
"扫描设备": "Perangkat Pindai",
|
||||||
"删除失败,网关可能已经离线,是否强制删除该数据?": "Penghapusan gagal. Gateway mungkin telah offline. Ingin menghapus data?"
|
"删除失败,网关可能已经离线,是否强制删除该数据?": "Penghapusan gagal. Gateway mungkin telah offline. Ingin menghapus data?",
|
||||||
|
"超级管理员英文": "Super Admin",
|
||||||
|
"授权管理员英文": "Make admin",
|
||||||
|
"普通管理员英文": "Ordinary user",
|
||||||
|
"网关设备英文": "Gateway",
|
||||||
|
"手机需联网英文": "NeedNet",
|
||||||
|
"年简称": "Y",
|
||||||
|
"月简称": "M",
|
||||||
|
"日简称": "D",
|
||||||
|
"时简称": "H",
|
||||||
|
"分简称": "M"
|
||||||
}
|
}
|
||||||
@ -313,7 +313,6 @@
|
|||||||
"删除账号后,你的所有信息及相关记录都会从平台彻底删除,且不可恢复,是否删除?": "Tutte le informazioni del tuo account verranno rimosse dalla piattaforma PERMANENTAMENTE e non potranno essere recuperate. Vuoi eliminare?",
|
"删除账号后,你的所有信息及相关记录都会从平台彻底删除,且不可恢复,是否删除?": "Tutte le informazioni del tuo account verranno rimosse dalla piattaforma PERMANENTAMENTE e non potranno essere recuperate. Vuoi eliminare?",
|
||||||
"监控": "Monitor",
|
"监控": "Monitor",
|
||||||
"视频日志": "Registro video",
|
"视频日志": "Registro video",
|
||||||
"网关设备": "Gateway",
|
|
||||||
"开门器": "Apriporta",
|
"开门器": "Apriporta",
|
||||||
"面容开锁": "Il viso si sblocca",
|
"面容开锁": "Il viso si sblocca",
|
||||||
"开门方向设置": "Set di direzione di apertura",
|
"开门方向设置": "Set di direzione di apertura",
|
||||||
@ -778,7 +777,6 @@
|
|||||||
"导出": "Esportazione",
|
"导出": "Esportazione",
|
||||||
"批量导出": "Esportazione in batch",
|
"批量导出": "Esportazione in batch",
|
||||||
"读取记录": "Aggiorna i record",
|
"读取记录": "Aggiorna i record",
|
||||||
"手机需联网": "NeedNet",
|
|
||||||
"设备": "Dispositivo",
|
"设备": "Dispositivo",
|
||||||
"消息": "Messaggi",
|
"消息": "Messaggi",
|
||||||
"智能分析": "Analisi intelligente",
|
"智能分析": "Analisi intelligente",
|
||||||
@ -1110,5 +1108,15 @@
|
|||||||
"常规使用": "Uso regolare",
|
"常规使用": "Uso regolare",
|
||||||
"网关通电后,长按重置按钮5秒,指示灯交替闪烁时点击下一步": "Dopo aver acceso il gateway, tenere premuto il pulsante di ripristino per 5 secondi e fare clic su Avanti quando l'indicatore luminoso lampeggia alternativamente",
|
"网关通电后,长按重置按钮5秒,指示灯交替闪烁时点击下一步": "Dopo aver acceso il gateway, tenere premuto il pulsante di ripristino per 5 secondi e fare clic su Avanti quando l'indicatore luminoso lampeggia alternativamente",
|
||||||
"扫描设备": "Dispositivo di scansione",
|
"扫描设备": "Dispositivo di scansione",
|
||||||
"删除失败,网关可能已经离线,是否强制删除该数据?": "Eliminazione non riuscita. Il gateway potrebbe essere andato offline. Vuoi forzare l'eliminazione dei dati?"
|
"删除失败,网关可能已经离线,是否强制删除该数据?": "Eliminazione non riuscita. Il gateway potrebbe essere andato offline. Vuoi forzare l'eliminazione dei dati?",
|
||||||
|
"超级管理员英文": "Super Admin",
|
||||||
|
"授权管理员英文": "Make admin",
|
||||||
|
"普通管理员英文": "Ordinary user",
|
||||||
|
"网关设备英文": "Gateway",
|
||||||
|
"手机需联网英文": "NeedNet",
|
||||||
|
"年简称": "Y",
|
||||||
|
"月简称": "M",
|
||||||
|
"日简称": "D",
|
||||||
|
"时简称": "H",
|
||||||
|
"分简称": "M"
|
||||||
}
|
}
|
||||||
@ -313,7 +313,6 @@
|
|||||||
"删除账号后,你的所有信息及相关记录都会从平台彻底删除,且不可恢复,是否删除?": "すべてのアカウント情報は完全にプラットフォームから削除され、回復できません。削除しますか?",
|
"删除账号后,你的所有信息及相关记录都会从平台彻底删除,且不可恢复,是否删除?": "すべてのアカウント情報は完全にプラットフォームから削除され、回復できません。削除しますか?",
|
||||||
"监控": "モニター",
|
"监控": "モニター",
|
||||||
"视频日志": "ビデオログ",
|
"视频日志": "ビデオログ",
|
||||||
"网关设备": "ゲートウェイ",
|
|
||||||
"开门器": "ドアオープナー",
|
"开门器": "ドアオープナー",
|
||||||
"面容开锁": "顔のロック解除",
|
"面容开锁": "顔のロック解除",
|
||||||
"开门方向设置": "オープニング方向セット",
|
"开门方向设置": "オープニング方向セット",
|
||||||
@ -778,7 +777,6 @@
|
|||||||
"导出": "エクスポート",
|
"导出": "エクスポート",
|
||||||
"批量导出": "一括エクスポート",
|
"批量导出": "一括エクスポート",
|
||||||
"读取记录": "レコードの更新",
|
"读取记录": "レコードの更新",
|
||||||
"手机需联网": "ニードネット",
|
|
||||||
"设备": "デバイス",
|
"设备": "デバイス",
|
||||||
"消息": "メッセージ",
|
"消息": "メッセージ",
|
||||||
"智能分析": "インテリジェント分析",
|
"智能分析": "インテリジェント分析",
|
||||||
@ -1110,5 +1108,15 @@
|
|||||||
"常规使用": "通常の使用",
|
"常规使用": "通常の使用",
|
||||||
"网关通电后,长按重置按钮5秒,指示灯交替闪烁时点击下一步": "ゲートウェイの電源がオンになった後、リセットボタンを5秒間押し続け、インジケーターライトが交互に点滅したら [次へ] をクリックします。",
|
"网关通电后,长按重置按钮5秒,指示灯交替闪烁时点击下一步": "ゲートウェイの電源がオンになった後、リセットボタンを5秒間押し続け、インジケーターライトが交互に点滅したら [次へ] をクリックします。",
|
||||||
"扫描设备": "スキャン装置",
|
"扫描设备": "スキャン装置",
|
||||||
"删除失败,网关可能已经离线,是否强制删除该数据?": "削除に失敗しました。ゲートウェイがオフラインになった可能性があります。強制的にデータを削除しますか?"
|
"删除失败,网关可能已经离线,是否强制删除该数据?": "削除に失敗しました。ゲートウェイがオフラインになった可能性があります。強制的にデータを削除しますか?",
|
||||||
|
"超级管理员英文": "Super Admin",
|
||||||
|
"授权管理员英文": "Make admin",
|
||||||
|
"普通管理员英文": "Ordinary user",
|
||||||
|
"网关设备英文": "Gateway",
|
||||||
|
"手机需联网英文": "NeedNet",
|
||||||
|
"年简称": "Y",
|
||||||
|
"月简称": "M",
|
||||||
|
"日简称": "D",
|
||||||
|
"时简称": "H",
|
||||||
|
"分简称": "M"
|
||||||
}
|
}
|
||||||
@ -317,7 +317,6 @@
|
|||||||
"删除账号后,你的所有信息及相关记录都会从平台彻底删除,且不可恢复,是否删除?": "删除账号后,你的所有信息及相关记录都会从平台彻底删除,且不可恢复,是否删除?",
|
"删除账号后,你的所有信息及相关记录都会从平台彻底删除,且不可恢复,是否删除?": "删除账号后,你的所有信息及相关记录都会从平台彻底删除,且不可恢复,是否删除?",
|
||||||
"监控": "监控",
|
"监控": "监控",
|
||||||
"视频日志": "视频日志",
|
"视频日志": "视频日志",
|
||||||
"网关设备": "网关设备",
|
|
||||||
"开门器": "开门器",
|
"开门器": "开门器",
|
||||||
"面容开锁": "面容开锁",
|
"面容开锁": "面容开锁",
|
||||||
"开门方向设置": "开门方向设置",
|
"开门方向设置": "开门方向设置",
|
||||||
@ -1112,5 +1111,15 @@
|
|||||||
"中功率": "中功率",
|
"中功率": "中功率",
|
||||||
"常规使用": "常规使用",
|
"常规使用": "常规使用",
|
||||||
"扫描设备": "扫描设备",
|
"扫描设备": "扫描设备",
|
||||||
"删除失败,网关可能已经离线,是否强制删除该数据?": "删除失败,网关可能已经离线,是否强制删除该数据?"
|
"删除失败,网关可能已经离线,是否强制删除该数据?": "删除失败,网关可能已经离线,是否强制删除该数据?",
|
||||||
|
"超级管理员英文": "超级管理员英文",
|
||||||
|
"授权管理员英文": "授权管理员英文",
|
||||||
|
"普通管理员英文": "普通管理员英文",
|
||||||
|
"网关设备英文": "网关设备英文",
|
||||||
|
"手机需联网英文": "手机需联网英文",
|
||||||
|
"年简称": "年简称",
|
||||||
|
"月简称": "月简称",
|
||||||
|
"日简称": "日简称",
|
||||||
|
"时简称": "时简称",
|
||||||
|
"分简称": "分简称"
|
||||||
}
|
}
|
||||||
|
|||||||
@ -313,7 +313,6 @@
|
|||||||
"删除账号后,你的所有信息及相关记录都会从平台彻底删除,且不可恢复,是否删除?": "Тіркелгіңіздің барлық мәліметі Платформадан өшірілген және қайта жоғалтылмайды. Өшіруге қалайсыз ба?",
|
"删除账号后,你的所有信息及相关记录都会从平台彻底删除,且不可恢复,是否删除?": "Тіркелгіңіздің барлық мәліметі Платформадан өшірілген және қайта жоғалтылмайды. Өшіруге қалайсыз ба?",
|
||||||
"监控": "Монитор",
|
"监控": "Монитор",
|
||||||
"视频日志": "Видео журналы",
|
"视频日志": "Видео журналы",
|
||||||
"网关设备": "Шлюз",
|
|
||||||
"开门器": "Қашықтығы ашу",
|
"开门器": "Қашықтығы ашу",
|
||||||
"面容开锁": "Өшірілгендер",
|
"面容开锁": "Өшірілгендер",
|
||||||
"开门方向设置": "Ашату жолы жинағы",
|
"开门方向设置": "Ашату жолы жинағы",
|
||||||
@ -778,7 +777,6 @@
|
|||||||
"导出": "Экспорттау",
|
"导出": "Экспорттау",
|
||||||
"批量导出": "Бағдарлама экспорттау",
|
"批量导出": "Бағдарлама экспорттау",
|
||||||
"读取记录": "Жаңарту",
|
"读取记录": "Жаңарту",
|
||||||
"手机需联网": "NeedNet",
|
|
||||||
"设备": "Құрылғысы",
|
"设备": "Құрылғысы",
|
||||||
"消息": "Хаттар",
|
"消息": "Хаттар",
|
||||||
"智能分析": "Интелгент аналітикасы",
|
"智能分析": "Интелгент аналітикасы",
|
||||||
@ -1110,5 +1108,15 @@
|
|||||||
"常规使用": "Қалыпты қолданылсын",
|
"常规使用": "Қалыпты қолданылсын",
|
||||||
"网关通电后,长按重置按钮5秒,指示灯交替闪烁时点击下一步": "Келесі періңізнен соң, ысырып тасымалдау батырмасын басып 5 секунд басыңыз, Индикаторның жарықты ауыстырғанда, келесі басыңыз",
|
"网关通电后,长按重置按钮5秒,指示灯交替闪烁时点击下一步": "Келесі періңізнен соң, ысырып тасымалдау батырмасын басып 5 секунд басыңыз, Индикаторның жарықты ауыстырғанда, келесі басыңыз",
|
||||||
"扫描设备": "Сканер құрылғысы",
|
"扫描设备": "Сканер құрылғысы",
|
||||||
"删除失败,网关可能已经离线,是否强制删除该数据?": "Өшіру жаңылысы. Келесі жіберді. Деректерді өшіргіңіз келе ме?"
|
"删除失败,网关可能已经离线,是否强制删除该数据?": "Өшіру жаңылысы. Келесі жіберді. Деректерді өшіргіңіз келе ме?",
|
||||||
|
"超级管理员英文": "Super Admin",
|
||||||
|
"授权管理员英文": "Make admin",
|
||||||
|
"普通管理员英文": "Ordinary user",
|
||||||
|
"网关设备英文": "Gateway",
|
||||||
|
"手机需联网英文": "NeedNet",
|
||||||
|
"年简称": "Y",
|
||||||
|
"月简称": "M",
|
||||||
|
"日简称": "D",
|
||||||
|
"时简称": "H",
|
||||||
|
"分简称": "M"
|
||||||
}
|
}
|
||||||
@ -313,7 +313,6 @@
|
|||||||
"删除账号后,你的所有信息及相关记录都会从平台彻底删除,且不可恢复,是否删除?": "모든 계정 정보는 플랫폼에서 자동으로 삭제되며 복구 할 수 없습니다. 삭제 하시겠습니까?",
|
"删除账号后,你的所有信息及相关记录都会从平台彻底删除,且不可恢复,是否删除?": "모든 계정 정보는 플랫폼에서 자동으로 삭제되며 복구 할 수 없습니다. 삭제 하시겠습니까?",
|
||||||
"监控": "모니터",
|
"监控": "모니터",
|
||||||
"视频日志": "비디오 로그",
|
"视频日志": "비디오 로그",
|
||||||
"网关设备": "게이트웨이",
|
|
||||||
"开门器": "도어 오프너",
|
"开门器": "도어 오프너",
|
||||||
"面容开锁": "얼굴 잠금 해제",
|
"面容开锁": "얼굴 잠금 해제",
|
||||||
"开门方向设置": "오프닝 방향 세트",
|
"开门方向设置": "오프닝 방향 세트",
|
||||||
@ -778,7 +777,6 @@
|
|||||||
"导出": "수출",
|
"导出": "수출",
|
||||||
"批量导出": "배치 수출",
|
"批量导出": "배치 수출",
|
||||||
"读取记录": "레코드 새로 고침",
|
"读取记录": "레코드 새로 고침",
|
||||||
"手机需联网": "니드넷",
|
|
||||||
"设备": "장치",
|
"设备": "장치",
|
||||||
"消息": "메시지",
|
"消息": "메시지",
|
||||||
"智能分析": "지능형 분석",
|
"智能分析": "지능형 분석",
|
||||||
@ -1110,5 +1108,15 @@
|
|||||||
"常规使用": "정사이즈 사용",
|
"常规使用": "정사이즈 사용",
|
||||||
"网关通电后,长按重置按钮5秒,指示灯交替闪烁时点击下一步": "게이트웨이의 전원이 켜진 후 5 초 동안 리셋 버튼을 누르고 누르고 표시등이 번갈아 깜박이면 다음 을 클릭하십시오.",
|
"网关通电后,长按重置按钮5秒,指示灯交替闪烁时点击下一步": "게이트웨이의 전원이 켜진 후 5 초 동안 리셋 버튼을 누르고 누르고 표시등이 번갈아 깜박이면 다음 을 클릭하십시오.",
|
||||||
"扫描设备": "스캔 장치",
|
"扫描设备": "스캔 장치",
|
||||||
"删除失败,网关可能已经离线,是否强制删除该数据?": "삭제가 실패했습니다. 게이트웨이가 오프라인 상태일 수 있다. 강제로 데이터 삭제를 하시겠습니까?"
|
"删除失败,网关可能已经离线,是否强制删除该数据?": "삭제가 실패했습니다. 게이트웨이가 오프라인 상태일 수 있다. 강제로 데이터 삭제를 하시겠습니까?",
|
||||||
|
"超级管理员英文": "Super Admin",
|
||||||
|
"授权管理员英文": "Make admin",
|
||||||
|
"普通管理员英文": "Ordinary user",
|
||||||
|
"网关设备英文": "Gateway",
|
||||||
|
"手机需联网英文": "NeedNet",
|
||||||
|
"年简称": "Y",
|
||||||
|
"月简称": "M",
|
||||||
|
"日简称": "D",
|
||||||
|
"时简称": "H",
|
||||||
|
"分简称": "M"
|
||||||
}
|
}
|
||||||
@ -313,7 +313,6 @@
|
|||||||
"删除账号后,你的所有信息及相关记录都会从平台彻底删除,且不可恢复,是否删除?": "Visa jūsų paskyros informacija bus pašalinta iš platformos visam laikui ir jų negalima atkurti. ar norite ištrinti?",
|
"删除账号后,你的所有信息及相关记录都会从平台彻底删除,且不可恢复,是否删除?": "Visa jūsų paskyros informacija bus pašalinta iš platformos visam laikui ir jų negalima atkurti. ar norite ištrinti?",
|
||||||
"监控": "Monitorius",
|
"监控": "Monitorius",
|
||||||
"视频日志": "Vaizdo žurnalas",
|
"视频日志": "Vaizdo žurnalas",
|
||||||
"网关设备": "Vartai",
|
|
||||||
"开门器": "Durų atidarytuvas",
|
"开门器": "Durų atidarytuvas",
|
||||||
"面容开锁": "Veidas atrakinamas",
|
"面容开锁": "Veidas atrakinamas",
|
||||||
"开门方向设置": "Atidarymo kryptis nustatytas",
|
"开门方向设置": "Atidarymo kryptis nustatytas",
|
||||||
@ -778,7 +777,6 @@
|
|||||||
"导出": "Eksporto",
|
"导出": "Eksporto",
|
||||||
"批量导出": "Paketo eksportas",
|
"批量导出": "Paketo eksportas",
|
||||||
"读取记录": "Atnaujinti įrašus",
|
"读取记录": "Atnaujinti įrašus",
|
||||||
"手机需联网": "Neednet",
|
|
||||||
"设备": "Įtaisas",
|
"设备": "Įtaisas",
|
||||||
"消息": "Pranešimai",
|
"消息": "Pranešimai",
|
||||||
"智能分析": "Intelektuali analizė",
|
"智能分析": "Intelektuali analizė",
|
||||||
@ -1110,5 +1108,15 @@
|
|||||||
"常规使用": "Reguliarus naudojimas",
|
"常规使用": "Reguliarus naudojimas",
|
||||||
"网关通电后,长按重置按钮5秒,指示灯交替闪烁时点击下一步": "Įjungus vartus, 5 sekundes paspauskite ir palaikykite reset mygtuką ir spustelėkite toliau, kai indikatoriaus lemputė mirksi pakaitomis.",
|
"网关通电后,长按重置按钮5秒,指示灯交替闪烁时点击下一步": "Įjungus vartus, 5 sekundes paspauskite ir palaikykite reset mygtuką ir spustelėkite toliau, kai indikatoriaus lemputė mirksi pakaitomis.",
|
||||||
"扫描设备": "Nuskaitymo įrenginys",
|
"扫描设备": "Nuskaitymo įrenginys",
|
||||||
"删除失败,网关可能已经离线,是否强制删除该数据?": "Ištrynimas nepavyko. Vartai gali būti neprisijungę. Ar norite priversti ištrinti duomenis?"
|
"删除失败,网关可能已经离线,是否强制删除该数据?": "Ištrynimas nepavyko. Vartai gali būti neprisijungę. Ar norite priversti ištrinti duomenis?",
|
||||||
|
"超级管理员英文": "Super Admin",
|
||||||
|
"授权管理员英文": "Make admin",
|
||||||
|
"普通管理员英文": "Ordinary user",
|
||||||
|
"网关设备英文": "Gateway",
|
||||||
|
"手机需联网英文": "NeedNet",
|
||||||
|
"年简称": "Y",
|
||||||
|
"月简称": "M",
|
||||||
|
"日简称": "D",
|
||||||
|
"时简称": "H",
|
||||||
|
"分简称": "M"
|
||||||
}
|
}
|
||||||
@ -313,7 +313,6 @@
|
|||||||
"删除账号后,你的所有信息及相关记录都会从平台彻底删除,且不可恢复,是否删除?": "Semua maklumat akaun anda akan dikeluarkan dari Platform secara kekal dan tidak dapat dipulihkan. Adakah anda ingin memadam?",
|
"删除账号后,你的所有信息及相关记录都会从平台彻底删除,且不可恢复,是否删除?": "Semua maklumat akaun anda akan dikeluarkan dari Platform secara kekal dan tidak dapat dipulihkan. Adakah anda ingin memadam?",
|
||||||
"监控": "Monitor",
|
"监控": "Monitor",
|
||||||
"视频日志": "Log Video",
|
"视频日志": "Log Video",
|
||||||
"网关设备": "Pintu masuk",
|
|
||||||
"开门器": "Pembuka pintu",
|
"开门器": "Pembuka pintu",
|
||||||
"面容开锁": "Membuka muka",
|
"面容开锁": "Membuka muka",
|
||||||
"开门方向设置": "Set arah pembukaan",
|
"开门方向设置": "Set arah pembukaan",
|
||||||
@ -778,7 +777,6 @@
|
|||||||
"导出": "Eksport",
|
"导出": "Eksport",
|
||||||
"批量导出": "Eksport Batch",
|
"批量导出": "Eksport Batch",
|
||||||
"读取记录": "Rekod-rekod segar semula",
|
"读取记录": "Rekod-rekod segar semula",
|
||||||
"手机需联网": "NeedNet",
|
|
||||||
"设备": "Peranti",
|
"设备": "Peranti",
|
||||||
"消息": "Mesej",
|
"消息": "Mesej",
|
||||||
"智能分析": "Analisis pintar",
|
"智能分析": "Analisis pintar",
|
||||||
@ -1110,5 +1108,15 @@
|
|||||||
"常规使用": "Penggunaan biasa",
|
"常规使用": "Penggunaan biasa",
|
||||||
"网关通电后,长按重置按钮5秒,指示灯交替闪烁时点击下一步": "Selepas pintu masuk dihidupkan, tekan dan tahan butang reset selama 5 saat, dan klik seterusnya apabila lampu penunjuk berkelip bergantian",
|
"网关通电后,长按重置按钮5秒,指示灯交替闪烁时点击下一步": "Selepas pintu masuk dihidupkan, tekan dan tahan butang reset selama 5 saat, dan klik seterusnya apabila lampu penunjuk berkelip bergantian",
|
||||||
"扫描设备": "Imbas peranti",
|
"扫描设备": "Imbas peranti",
|
||||||
"删除失败,网关可能已经离线,是否强制删除该数据?": "Penghapusan gagal. Pintu masuk mungkin telah pergi di luar talian. Adakah anda mahu memaksa memadam data?"
|
"删除失败,网关可能已经离线,是否强制删除该数据?": "Penghapusan gagal. Pintu masuk mungkin telah pergi di luar talian. Adakah anda mahu memaksa memadam data?",
|
||||||
|
"超级管理员英文": "Super Admin",
|
||||||
|
"授权管理员英文": "Make admin",
|
||||||
|
"普通管理员英文": "Ordinary user",
|
||||||
|
"网关设备英文": "Gateway",
|
||||||
|
"手机需联网英文": "NeedNet",
|
||||||
|
"年简称": "Y",
|
||||||
|
"月简称": "M",
|
||||||
|
"日简称": "D",
|
||||||
|
"时简称": "H",
|
||||||
|
"分简称": "M"
|
||||||
}
|
}
|
||||||
@ -313,7 +313,6 @@
|
|||||||
"删除账号后,你的所有信息及相关记录都会从平台彻底删除,且不可恢复,是否删除?": "Alle accountgegevens worden PERMANENT van het Platform verwijderd en kunnen niet worden teruggevonden. Wilt u Verwijderen?",
|
"删除账号后,你的所有信息及相关记录都会从平台彻底删除,且不可恢复,是否删除?": "Alle accountgegevens worden PERMANENT van het Platform verwijderd en kunnen niet worden teruggevonden. Wilt u Verwijderen?",
|
||||||
"监控": "Monitor",
|
"监控": "Monitor",
|
||||||
"视频日志": "Videologboek",
|
"视频日志": "Videologboek",
|
||||||
"网关设备": "Gateway",
|
|
||||||
"开门器": "Deuropener",
|
"开门器": "Deuropener",
|
||||||
"面容开锁": "Gezicht ontgrendelt",
|
"面容开锁": "Gezicht ontgrendelt",
|
||||||
"开门方向设置": "Openingsrichtingsset",
|
"开门方向设置": "Openingsrichtingsset",
|
||||||
@ -778,7 +777,6 @@
|
|||||||
"导出": "Uitvoer",
|
"导出": "Uitvoer",
|
||||||
"批量导出": "Batch export",
|
"批量导出": "Batch export",
|
||||||
"读取记录": "Records vernieuwen",
|
"读取记录": "Records vernieuwen",
|
||||||
"手机需联网": "Neednet",
|
|
||||||
"设备": "Apparaat",
|
"设备": "Apparaat",
|
||||||
"消息": "Berichten",
|
"消息": "Berichten",
|
||||||
"智能分析": "Intelligente analyses",
|
"智能分析": "Intelligente analyses",
|
||||||
@ -1110,5 +1108,15 @@
|
|||||||
"常规使用": "Regelmatig gebruik",
|
"常规使用": "Regelmatig gebruik",
|
||||||
"网关通电后,长按重置按钮5秒,指示灯交替闪烁时点击下一步": "Nadat de gateway is ingeschakeld, houdt u de resetknop 5 seconden ingedrukt en klikt u op Volgende wanneer het indicatielampje afwisselend knippert",
|
"网关通电后,长按重置按钮5秒,指示灯交替闪烁时点击下一步": "Nadat de gateway is ingeschakeld, houdt u de resetknop 5 seconden ingedrukt en klikt u op Volgende wanneer het indicatielampje afwisselend knippert",
|
||||||
"扫描设备": "Scan apparaat",
|
"扫描设备": "Scan apparaat",
|
||||||
"删除失败,网关可能已经离线,是否强制删除该数据?": "Verwijdering is mislukt. De gateway is mogelijk offline gegaan. Wilt u de gegevens forceren verwijderen?"
|
"删除失败,网关可能已经离线,是否强制删除该数据?": "Verwijdering is mislukt. De gateway is mogelijk offline gegaan. Wilt u de gegevens forceren verwijderen?",
|
||||||
|
"超级管理员英文": "Super Admin",
|
||||||
|
"授权管理员英文": "Make admin",
|
||||||
|
"普通管理员英文": "Ordinary user",
|
||||||
|
"网关设备英文": "Gateway",
|
||||||
|
"手机需联网英文": "NeedNet",
|
||||||
|
"年简称": "Y",
|
||||||
|
"月简称": "M",
|
||||||
|
"日简称": "D",
|
||||||
|
"时简称": "H",
|
||||||
|
"分简称": "M"
|
||||||
}
|
}
|
||||||
@ -313,7 +313,6 @@
|
|||||||
"删除账号后,你的所有信息及相关记录都会从平台彻底删除,且不可恢复,是否删除?": "Wszystkie informacje o koncie zostaną usunięte z platformy i nie będzie można ich odzyskać. Czy chcesz usunąć?",
|
"删除账号后,你的所有信息及相关记录都会从平台彻底删除,且不可恢复,是否删除?": "Wszystkie informacje o koncie zostaną usunięte z platformy i nie będzie można ich odzyskać. Czy chcesz usunąć?",
|
||||||
"监控": "Monitor",
|
"监控": "Monitor",
|
||||||
"视频日志": "Dziennik wideo",
|
"视频日志": "Dziennik wideo",
|
||||||
"网关设备": "Brama",
|
|
||||||
"开门器": "Otwieracz do drzwi",
|
"开门器": "Otwieracz do drzwi",
|
||||||
"面容开锁": "Odblokowywanie twarzy",
|
"面容开锁": "Odblokowywanie twarzy",
|
||||||
"开门方向设置": "Zestaw kierunku otwierania",
|
"开门方向设置": "Zestaw kierunku otwierania",
|
||||||
@ -778,7 +777,6 @@
|
|||||||
"导出": "Eksport",
|
"导出": "Eksport",
|
||||||
"批量导出": "Eksport partii",
|
"批量导出": "Eksport partii",
|
||||||
"读取记录": "Odśwież rekordy",
|
"读取记录": "Odśwież rekordy",
|
||||||
"手机需联网": "NeedNet",
|
|
||||||
"设备": "Urządzenie",
|
"设备": "Urządzenie",
|
||||||
"消息": "Wiadomości",
|
"消息": "Wiadomości",
|
||||||
"智能分析": "Inteligentna analityka",
|
"智能分析": "Inteligentna analityka",
|
||||||
@ -1110,5 +1108,15 @@
|
|||||||
"常规使用": "Regularne stosowanie",
|
"常规使用": "Regularne stosowanie",
|
||||||
"网关通电后,长按重置按钮5秒,指示灯交替闪烁时点击下一步": "Po włączeniu bramy naciśnij i przytrzymaj przycisk resetowania przez 5 sekund i kliknij przycisk Dalej, gdy wskaźnik miga na przemian",
|
"网关通电后,长按重置按钮5秒,指示灯交替闪烁时点击下一步": "Po włączeniu bramy naciśnij i przytrzymaj przycisk resetowania przez 5 sekund i kliknij przycisk Dalej, gdy wskaźnik miga na przemian",
|
||||||
"扫描设备": "Urządzenie skanujące",
|
"扫描设备": "Urządzenie skanujące",
|
||||||
"删除失败,网关可能已经离线,是否强制删除该数据?": "Usunięcie nie powiodło się. Brama mogła zostać wyłączona. Czy chcesz wymusić usunięcie danych?"
|
"删除失败,网关可能已经离线,是否强制删除该数据?": "Usunięcie nie powiodło się. Brama mogła zostać wyłączona. Czy chcesz wymusić usunięcie danych?",
|
||||||
|
"超级管理员英文": "Super Admin",
|
||||||
|
"授权管理员英文": "Make admin",
|
||||||
|
"普通管理员英文": "Ordinary user",
|
||||||
|
"网关设备英文": "Gateway",
|
||||||
|
"手机需联网英文": "NeedNet",
|
||||||
|
"年简称": "Y",
|
||||||
|
"月简称": "M",
|
||||||
|
"日简称": "D",
|
||||||
|
"时简称": "H",
|
||||||
|
"分简称": "M"
|
||||||
}
|
}
|
||||||
@ -313,7 +313,6 @@
|
|||||||
"删除账号后,你的所有信息及相关记录都会从平台彻底删除,且不可恢复,是否删除?": "Todas as informações da sua conta serão removidas da plataforma PERMANENTEMENTE e não poderão ser recuperadas. Deseja excluir?",
|
"删除账号后,你的所有信息及相关记录都会从平台彻底删除,且不可恢复,是否删除?": "Todas as informações da sua conta serão removidas da plataforma PERMANENTEMENTE e não poderão ser recuperadas. Deseja excluir?",
|
||||||
"监控": "Monitore",
|
"监控": "Monitore",
|
||||||
"视频日志": "Log Vídeo",
|
"视频日志": "Log Vídeo",
|
||||||
"网关设备": "Gateway",
|
|
||||||
"开门器": "Abridor porta",
|
"开门器": "Abridor porta",
|
||||||
"面容开锁": "Rosto desbloqueia",
|
"面容开锁": "Rosto desbloqueia",
|
||||||
"开门方向设置": "Conjunto Direção Abertura",
|
"开门方向设置": "Conjunto Direção Abertura",
|
||||||
@ -778,7 +777,6 @@
|
|||||||
"导出": "Exportação",
|
"导出": "Exportação",
|
||||||
"批量导出": "Exportação lote",
|
"批量导出": "Exportação lote",
|
||||||
"读取记录": "Atualizar Registros",
|
"读取记录": "Atualizar Registros",
|
||||||
"手机需联网": "NeedNet",
|
|
||||||
"设备": "Dispositivo",
|
"设备": "Dispositivo",
|
||||||
"消息": "Mensagens",
|
"消息": "Mensagens",
|
||||||
"智能分析": "Análise inteligente",
|
"智能分析": "Análise inteligente",
|
||||||
@ -1110,5 +1108,15 @@
|
|||||||
"常规使用": "Uso regular",
|
"常规使用": "Uso regular",
|
||||||
"网关通电后,长按重置按钮5秒,指示灯交替闪烁时点击下一步": "Depois que o gateway estiver ligado, pressione e segure o botão de reset por 5 segundos e clique em Next quando a luz indicadora pisca alternadamente",
|
"网关通电后,长按重置按钮5秒,指示灯交替闪烁时点击下一步": "Depois que o gateway estiver ligado, pressione e segure o botão de reset por 5 segundos e clique em Next quando a luz indicadora pisca alternadamente",
|
||||||
"扫描设备": "Digitalizar dispositivo",
|
"扫描设备": "Digitalizar dispositivo",
|
||||||
"删除失败,网关可能已经离线,是否强制删除该数据?": "A eliminação falhou. O gateway pode ter ficado offline. Você quer forçar a exclusão dos dados?"
|
"删除失败,网关可能已经离线,是否强制删除该数据?": "A eliminação falhou. O gateway pode ter ficado offline. Você quer forçar a exclusão dos dados?",
|
||||||
|
"超级管理员英文": "Super Admin",
|
||||||
|
"授权管理员英文": "Make admin",
|
||||||
|
"普通管理员英文": "Ordinary user",
|
||||||
|
"网关设备英文": "Gateway",
|
||||||
|
"手机需联网英文": "NeedNet",
|
||||||
|
"年简称": "Y",
|
||||||
|
"月简称": "M",
|
||||||
|
"日简称": "D",
|
||||||
|
"时简称": "H",
|
||||||
|
"分简称": "M"
|
||||||
}
|
}
|
||||||
@ -313,7 +313,6 @@
|
|||||||
"删除账号后,你的所有信息及相关记录都会从平台彻底删除,且不可恢复,是否删除?": "Toate informațiile contului dumneavoastră vor fi înlăturate de pe platformă și nu pot fi recuperate. Doriți să ștergeți?",
|
"删除账号后,你的所有信息及相关记录都会从平台彻底删除,且不可恢复,是否删除?": "Toate informațiile contului dumneavoastră vor fi înlăturate de pe platformă și nu pot fi recuperate. Doriți să ștergeți?",
|
||||||
"监控": "Monitor",
|
"监控": "Monitor",
|
||||||
"视频日志": "Jurnal video",
|
"视频日志": "Jurnal video",
|
||||||
"网关设备": "GatewayComment",
|
|
||||||
"开门器": "Deschizător de uși",
|
"开门器": "Deschizător de uși",
|
||||||
"面容开锁": "Fața deblochează",
|
"面容开锁": "Fața deblochează",
|
||||||
"开门方向设置": "Set de direcție de deschidere",
|
"开门方向设置": "Set de direcție de deschidere",
|
||||||
@ -778,7 +777,6 @@
|
|||||||
"导出": "Exportă",
|
"导出": "Exportă",
|
||||||
"批量导出": "Export pe lot",
|
"批量导出": "Export pe lot",
|
||||||
"读取记录": "Reîmprospătește înregistrările",
|
"读取记录": "Reîmprospătește înregistrările",
|
||||||
"手机需联网": "NeedNet",
|
|
||||||
"设备": "Dispozitive",
|
"设备": "Dispozitive",
|
||||||
"消息": "Mesaje",
|
"消息": "Mesaje",
|
||||||
"智能分析": "Analitică inteligentă",
|
"智能分析": "Analitică inteligentă",
|
||||||
@ -1110,5 +1108,15 @@
|
|||||||
"常规使用": "Utilizare regulată",
|
"常规使用": "Utilizare regulată",
|
||||||
"网关通电后,长按重置按钮5秒,指示灯交替闪烁时点击下一步": "După ce poarta este pornită, apăsați și țineți butonul de resetare timp de 5 secunde, și faceți clic pe Următor atunci când lumina indicatorului se aprinde alternativ.",
|
"网关通电后,长按重置按钮5秒,指示灯交替闪烁时点击下一步": "După ce poarta este pornită, apăsați și țineți butonul de resetare timp de 5 secunde, și faceți clic pe Următor atunci când lumina indicatorului se aprinde alternativ.",
|
||||||
"扫描设备": "Dispozitiv de scanare",
|
"扫描设备": "Dispozitiv de scanare",
|
||||||
"删除失败,网关可能已经离线,是否强制删除该数据?": "Ștergerea a eșuat. Poarta poate s-a oprit. Doriți să forțați ștergerea datelor?"
|
"删除失败,网关可能已经离线,是否强制删除该数据?": "Ștergerea a eșuat. Poarta poate s-a oprit. Doriți să forțați ștergerea datelor?",
|
||||||
|
"超级管理员英文": "Super Admin",
|
||||||
|
"授权管理员英文": "Make admin",
|
||||||
|
"普通管理员英文": "Ordinary user",
|
||||||
|
"网关设备英文": "Gateway",
|
||||||
|
"手机需联网英文": "NeedNet",
|
||||||
|
"年简称": "Y",
|
||||||
|
"月简称": "M",
|
||||||
|
"日简称": "D",
|
||||||
|
"时简称": "H",
|
||||||
|
"分简称": "M"
|
||||||
}
|
}
|
||||||
@ -180,7 +180,7 @@
|
|||||||
"隐藏无效开锁权限": "Скрыть недопустимый доступ",
|
"隐藏无效开锁权限": "Скрыть недопустимый доступ",
|
||||||
"APP开锁时需手机连网的锁": "Замки требующие телефона онлайн",
|
"APP开锁时需手机连网的锁": "Замки требующие телефона онлайн",
|
||||||
"增值服务": "Услуги",
|
"增值服务": "Услуги",
|
||||||
"关于": "Касательно",
|
"关于": "О нас",
|
||||||
"退出": "Выход",
|
"退出": "Выход",
|
||||||
"删除账号": "Удалить аккаунт",
|
"删除账号": "Удалить аккаунт",
|
||||||
"个人信息": "Информация счета",
|
"个人信息": "Информация счета",
|
||||||
@ -313,7 +313,6 @@
|
|||||||
"删除账号后,你的所有信息及相关记录都会从平台彻底删除,且不可恢复,是否删除?": "Вся информация о вашей учетной записи будет удалена с платформы ПОСТОЯННО и не может быть восстановлена. Вы хотите удалить?",
|
"删除账号后,你的所有信息及相关记录都会从平台彻底删除,且不可恢复,是否删除?": "Вся информация о вашей учетной записи будет удалена с платформы ПОСТОЯННО и не может быть восстановлена. Вы хотите удалить?",
|
||||||
"监控": "Монитор",
|
"监控": "Монитор",
|
||||||
"视频日志": "Видео журнал",
|
"视频日志": "Видео журнал",
|
||||||
"网关设备": "Шлюз",
|
|
||||||
"开门器": "Дверь открывалка",
|
"开门器": "Дверь открывалка",
|
||||||
"面容开锁": "Лицо разблокирует",
|
"面容开锁": "Лицо разблокирует",
|
||||||
"开门方向设置": "Набор направления открытия",
|
"开门方向设置": "Набор направления открытия",
|
||||||
@ -778,7 +777,6 @@
|
|||||||
"导出": "Экспорт",
|
"导出": "Экспорт",
|
||||||
"批量导出": "Пакетный экспорт",
|
"批量导出": "Пакетный экспорт",
|
||||||
"读取记录": "Обновить записи",
|
"读取记录": "Обновить записи",
|
||||||
"手机需联网": "Ниднет",
|
|
||||||
"设备": "Устройство",
|
"设备": "Устройство",
|
||||||
"消息": "Сообщения",
|
"消息": "Сообщения",
|
||||||
"智能分析": "Интеллектуальная аналитика",
|
"智能分析": "Интеллектуальная аналитика",
|
||||||
@ -1110,5 +1108,15 @@
|
|||||||
"常规使用": "Регулярное использование",
|
"常规使用": "Регулярное использование",
|
||||||
"网关通电后,长按重置按钮5秒,指示灯交替闪烁时点击下一步": "После включения шлюза нажмите и удерживайте кнопку сброса в течение 5 секунд и нажмите «Далее», когда индикатор попеременно начнет мигать.",
|
"网关通电后,长按重置按钮5秒,指示灯交替闪烁时点击下一步": "После включения шлюза нажмите и удерживайте кнопку сброса в течение 5 секунд и нажмите «Далее», когда индикатор попеременно начнет мигать.",
|
||||||
"扫描设备": "Устройство сканирования",
|
"扫描设备": "Устройство сканирования",
|
||||||
"删除失败,网关可能已经离线,是否强制删除该数据?": "Ошибка удаления. Возможно, шлюз ушел в автономный режим. Хотите ли вы принудительно удалить данные?"
|
"删除失败,网关可能已经离线,是否强制删除该数据?": "Ошибка удаления. Возможно, шлюз ушел в автономный режим. Хотите ли вы принудительно удалить данные?",
|
||||||
|
"超级管理员英文": "Super Admin",
|
||||||
|
"授权管理员英文": "Make admin",
|
||||||
|
"普通管理员英文": "Ordinary user",
|
||||||
|
"网关设备英文": "Gateway",
|
||||||
|
"手机需联网英文": "NeedNet",
|
||||||
|
"年简称": "Y",
|
||||||
|
"月简称": "M",
|
||||||
|
"日简称": "D",
|
||||||
|
"时简称": "H",
|
||||||
|
"分简称": "M"
|
||||||
}
|
}
|
||||||
@ -313,7 +313,6 @@
|
|||||||
"删除账号后,你的所有信息及相关记录都会从平台彻底删除,且不可恢复,是否删除?": "Všetky informácie o vašom účte budú natrvalo odstránené z platformy a nemôžu byť obnovené. chcete odstrániť?",
|
"删除账号后,你的所有信息及相关记录都会从平台彻底删除,且不可恢复,是否删除?": "Všetky informácie o vašom účte budú natrvalo odstránené z platformy a nemôžu byť obnovené. chcete odstrániť?",
|
||||||
"监控": "Monitor",
|
"监控": "Monitor",
|
||||||
"视频日志": "Video log",
|
"视频日志": "Video log",
|
||||||
"网关设备": "Brána",
|
|
||||||
"开门器": "Otvárač dverí",
|
"开门器": "Otvárač dverí",
|
||||||
"面容开锁": "Tvár odomkne",
|
"面容开锁": "Tvár odomkne",
|
||||||
"开门方向设置": "Nastaviť smer otvorenia",
|
"开门方向设置": "Nastaviť smer otvorenia",
|
||||||
@ -778,7 +777,6 @@
|
|||||||
"导出": "Export",
|
"导出": "Export",
|
||||||
"批量导出": "Export šarže",
|
"批量导出": "Export šarže",
|
||||||
"读取记录": "Refresh records",
|
"读取记录": "Refresh records",
|
||||||
"手机需联网": "Neednet",
|
|
||||||
"设备": "Zariadenie",
|
"设备": "Zariadenie",
|
||||||
"消息": "Správy",
|
"消息": "Správy",
|
||||||
"智能分析": "Inteligentná analýza",
|
"智能分析": "Inteligentná analýza",
|
||||||
@ -1110,5 +1108,15 @@
|
|||||||
"常规使用": "Pravidelné použitie",
|
"常规使用": "Pravidelné použitie",
|
||||||
"网关通电后,长按重置按钮5秒,指示灯交替闪烁时点击下一步": "Po zapnutí brány stlačte a podržte tlačidlo reset po dobu 5 sekúnd a kliknite na ďalšie, keď indikátorové svetlo záblesky striedavo",
|
"网关通电后,长按重置按钮5秒,指示灯交替闪烁时点击下一步": "Po zapnutí brány stlačte a podržte tlačidlo reset po dobu 5 sekúnd a kliknite na ďalšie, keď indikátorové svetlo záblesky striedavo",
|
||||||
"扫描设备": "Skenovanie zariadenia",
|
"扫描设备": "Skenovanie zariadenia",
|
||||||
"删除失败,网关可能已经离线,是否强制删除该数据?": "Vymazanie sa nepodarilo. Brána môže ísť offline. Chcete vynútiť odstránenie údajov?"
|
"删除失败,网关可能已经离线,是否强制删除该数据?": "Vymazanie sa nepodarilo. Brána môže ísť offline. Chcete vynútiť odstránenie údajov?",
|
||||||
|
"超级管理员英文": "Super Admin",
|
||||||
|
"授权管理员英文": "Make admin",
|
||||||
|
"普通管理员英文": "Ordinary user",
|
||||||
|
"网关设备英文": "Gateway",
|
||||||
|
"手机需联网英文": "NeedNet",
|
||||||
|
"年简称": "Y",
|
||||||
|
"月简称": "M",
|
||||||
|
"日简称": "D",
|
||||||
|
"时简称": "H",
|
||||||
|
"分简称": "M"
|
||||||
}
|
}
|
||||||
@ -181,7 +181,7 @@
|
|||||||
"隐藏无效开锁权限": "Сакриј неважећи приступ",
|
"隐藏无效开锁权限": "Сакриј неважећи приступ",
|
||||||
"APP开锁时需手机连网的锁": "Браве које захтевају телефон на мрежи",
|
"APP开锁时需手机连网的锁": "Браве које захтевају телефон на мрежи",
|
||||||
"增值服务": "Услуге",
|
"增值服务": "Услуге",
|
||||||
"关于": "Povodom",
|
"关于": "O nama",
|
||||||
"退出": "Одјавити се",
|
"退出": "Одјавити се",
|
||||||
"删除账号": "Избриши налог",
|
"删除账号": "Избриши налог",
|
||||||
"个人信息": "Информације о налогу",
|
"个人信息": "Информације о налогу",
|
||||||
@ -314,7 +314,6 @@
|
|||||||
"删除账号后,你的所有信息及相关记录都会从平台彻底删除,且不可恢复,是否删除?": "Сви подаци о вашем налогу ће бити трајно уклоњени са платформе и не могу се Рецоверед.До желите да избришете?",
|
"删除账号后,你的所有信息及相关记录都会从平台彻底删除,且不可恢复,是否删除?": "Сви подаци о вашем налогу ће бити трајно уклоњени са платформе и не могу се Рецоверед.До желите да избришете?",
|
||||||
"监控": "Монитор",
|
"监控": "Монитор",
|
||||||
"视频日志": "Видео Дневник",
|
"视频日志": "Видео Дневник",
|
||||||
"网关设备": "Пролаз",
|
|
||||||
"开门器": "Отварач врата",
|
"开门器": "Отварач врата",
|
||||||
"面容开锁": "Откључавање лица",
|
"面容开锁": "Откључавање лица",
|
||||||
"开门方向设置": "Отварање Правац Сет",
|
"开门方向设置": "Отварање Правац Сет",
|
||||||
@ -786,7 +785,6 @@
|
|||||||
"导出": "Извоз",
|
"导出": "Извоз",
|
||||||
"批量导出": "Серијски извоз",
|
"批量导出": "Серијски извоз",
|
||||||
"读取记录": "Освежите записе",
|
"读取记录": "Освежите записе",
|
||||||
"手机需联网": "Претраживање",
|
|
||||||
"设备": "Уређај",
|
"设备": "Уређај",
|
||||||
"消息": "Поруке",
|
"消息": "Поруке",
|
||||||
"智能分析": "Интелигентна аналитика",
|
"智能分析": "Интелигентна аналитика",
|
||||||
@ -1110,5 +1108,15 @@
|
|||||||
"常规使用": "Редовна употреба",
|
"常规使用": "Редовна употреба",
|
||||||
"网关通电后,长按重置按钮5秒,指示灯交替闪烁时点击下一步": "Након што је гатеваи укључен, притисните и држите дугме за ресетовање за 5 секунди, и кликните Следећи када индикатор трепери наизменично",
|
"网关通电后,长按重置按钮5秒,指示灯交替闪烁时点击下一步": "Након што је гатеваи укључен, притисните и држите дугме за ресетовање за 5 секунди, и кликните Следећи када индикатор трепери наизменично",
|
||||||
"扫描设备": "Уређај за скенирање",
|
"扫描设备": "Уређај за скенирање",
|
||||||
"删除失败,网关可能已经离线,是否强制删除该数据?": "Брисање није успело. Гатеваи је можда отишао ван мреже. Да ли желите да присилите брисање података?"
|
"删除失败,网关可能已经离线,是否强制删除该数据?": "Брисање није успело. Гатеваи је можда отишао ван мреже. Да ли желите да присилите брисање података?",
|
||||||
|
"超级管理员英文": "Super Admin",
|
||||||
|
"授权管理员英文": "Make admin",
|
||||||
|
"普通管理员英文": "Ordinary user",
|
||||||
|
"网关设备英文": "Gateway",
|
||||||
|
"手机需联网英文": "NeedNet",
|
||||||
|
"年简称": "Y",
|
||||||
|
"月简称": "M",
|
||||||
|
"日简称": "D",
|
||||||
|
"时简称": "H",
|
||||||
|
"分简称": "M"
|
||||||
}
|
}
|
||||||
@ -313,7 +313,6 @@
|
|||||||
"删除账号后,你的所有信息及相关记录都会从平台彻底删除,且不可恢复,是否删除?": "All information från dina konto kommer att tas bort från plattformen PERMANENTLYT och kan inte återställas. Vill du ta bort?",
|
"删除账号后,你的所有信息及相关记录都会从平台彻底删除,且不可恢复,是否删除?": "All information från dina konto kommer att tas bort från plattformen PERMANENTLYT och kan inte återställas. Vill du ta bort?",
|
||||||
"监控": "Övervakare",
|
"监控": "Övervakare",
|
||||||
"视频日志": "Videologg",
|
"视频日志": "Videologg",
|
||||||
"网关设备": "Gateway",
|
|
||||||
"开门器": "Dörröppnare",
|
"开门器": "Dörröppnare",
|
||||||
"面容开锁": "Ansiktet upplåsas",
|
"面容开锁": "Ansiktet upplåsas",
|
||||||
"开门方向设置": "Öppningsriktning",
|
"开门方向设置": "Öppningsriktning",
|
||||||
@ -778,7 +777,6 @@
|
|||||||
"导出": "Exportering",
|
"导出": "Exportering",
|
||||||
"批量导出": "Export från sats",
|
"批量导出": "Export från sats",
|
||||||
"读取记录": "Uppdatera poster",
|
"读取记录": "Uppdatera poster",
|
||||||
"手机需联网": "NeedNet",
|
|
||||||
"设备": "Enheten",
|
"设备": "Enheten",
|
||||||
"消息": "Meddelanden",
|
"消息": "Meddelanden",
|
||||||
"智能分析": "Intelligent analys",
|
"智能分析": "Intelligent analys",
|
||||||
@ -1110,5 +1108,15 @@
|
|||||||
"常规使用": "Regelbunden användning",
|
"常规使用": "Regelbunden användning",
|
||||||
"网关通电后,长按重置按钮5秒,指示灯交替闪烁时点击下一步": "När gateway är på, tryck och håll omställningsknappen i 5 sekunder, och klicka Nästa när indikatorljuset blinkar växelvist",
|
"网关通电后,长按重置按钮5秒,指示灯交替闪烁时点击下一步": "När gateway är på, tryck och håll omställningsknappen i 5 sekunder, och klicka Nästa när indikatorljuset blinkar växelvist",
|
||||||
"扫描设备": "Söka enheter",
|
"扫描设备": "Söka enheter",
|
||||||
"删除失败,网关可能已经离线,是否强制删除该数据?": "Borttagning misslyckades. Porten kan ha gått offline. Vill du tvinga bort data?"
|
"删除失败,网关可能已经离线,是否强制删除该数据?": "Borttagning misslyckades. Porten kan ha gått offline. Vill du tvinga bort data?",
|
||||||
|
"超级管理员英文": "Super Admin",
|
||||||
|
"授权管理员英文": "Make admin",
|
||||||
|
"普通管理员英文": "Ordinary user",
|
||||||
|
"网关设备英文": "Gateway",
|
||||||
|
"手机需联网英文": "NeedNet",
|
||||||
|
"年简称": "Y",
|
||||||
|
"月简称": "M",
|
||||||
|
"日简称": "D",
|
||||||
|
"时简称": "H",
|
||||||
|
"分简称": "M"
|
||||||
}
|
}
|
||||||
@ -313,7 +313,6 @@
|
|||||||
"删除账号后,你的所有信息及相关记录都会从平台彻底删除,且不可恢复,是否删除?": "ข้อมูลบัญชีทั้งหมดของคุณจะถูกลบออกจากแพลตฟอร์มอย่างถาวรและไม่สามารถกู้คืนได้คุณต้องการลบหรือไม่?",
|
"删除账号后,你的所有信息及相关记录都会从平台彻底删除,且不可恢复,是否删除?": "ข้อมูลบัญชีทั้งหมดของคุณจะถูกลบออกจากแพลตฟอร์มอย่างถาวรและไม่สามารถกู้คืนได้คุณต้องการลบหรือไม่?",
|
||||||
"监控": "จอภาพสำหรับตรวจสอบ",
|
"监控": "จอภาพสำหรับตรวจสอบ",
|
||||||
"视频日志": "บันทึกวิดีโอบันทึก",
|
"视频日志": "บันทึกวิดีโอบันทึก",
|
||||||
"网关设备": "เกตเวย์เกตเวย์",
|
|
||||||
"开门器": "ที่เปิดประตู",
|
"开门器": "ที่เปิดประตู",
|
||||||
"面容开锁": "ปลดล็อคใบหน้า",
|
"面容开锁": "ปลดล็อคใบหน้า",
|
||||||
"开门方向设置": "ชุดเปิดทิศทาง",
|
"开门方向设置": "ชุดเปิดทิศทาง",
|
||||||
@ -778,7 +777,6 @@
|
|||||||
"导出": "ส่งออกจากต่างประเทศ",
|
"导出": "ส่งออกจากต่างประเทศ",
|
||||||
"批量导出": "ชุดส่งออก",
|
"批量导出": "ชุดส่งออก",
|
||||||
"读取记录": "รีเฟรชระเบียน",
|
"读取记录": "รีเฟรชระเบียน",
|
||||||
"手机需联网": "ตาข่ายปักลาย",
|
|
||||||
"设备": "อุปกรณ์สำหรับเชื่อมต่อ",
|
"设备": "อุปกรณ์สำหรับเชื่อมต่อ",
|
||||||
"消息": "ข้อความต่างๆ",
|
"消息": "ข้อความต่างๆ",
|
||||||
"智能分析": "การวิเคราะห์อัจฉริยะ",
|
"智能分析": "การวิเคราะห์อัจฉริยะ",
|
||||||
@ -1110,5 +1108,15 @@
|
|||||||
"常规使用": "ใช้เป็นประจำ",
|
"常规使用": "ใช้เป็นประจำ",
|
||||||
"网关通电后,长按重置按钮5秒,指示灯交替闪烁时点击下一步": "หลังจากเปิดเกตเวย์แล้วให้กดปุ่มรีเซ็ตค้างไว้5วินาทีและคลิกถัดไปเมื่อไฟแสดงสถานะกะพริบสลับกัน",
|
"网关通电后,长按重置按钮5秒,指示灯交替闪烁时点击下一步": "หลังจากเปิดเกตเวย์แล้วให้กดปุ่มรีเซ็ตค้างไว้5วินาทีและคลิกถัดไปเมื่อไฟแสดงสถานะกะพริบสลับกัน",
|
||||||
"扫描设备": "อุปกรณ์สแกน",
|
"扫描设备": "อุปกรณ์สแกน",
|
||||||
"删除失败,网关可能已经离线,是否强制删除该数据?": "การลบล้มเหลวเกตเวย์อาจออฟไลน์ไปแล้วคุณต้องการบังคับให้ลบข้อมูลหรือไม่?"
|
"删除失败,网关可能已经离线,是否强制删除该数据?": "การลบล้มเหลวเกตเวย์อาจออฟไลน์ไปแล้วคุณต้องการบังคับให้ลบข้อมูลหรือไม่?",
|
||||||
|
"超级管理员英文": "Super Admin",
|
||||||
|
"授权管理员英文": "Make admin",
|
||||||
|
"普通管理员英文": "Ordinary user",
|
||||||
|
"网关设备英文": "Gateway",
|
||||||
|
"手机需联网英文": "NeedNet",
|
||||||
|
"年简称": "Y",
|
||||||
|
"月简称": "M",
|
||||||
|
"日简称": "D",
|
||||||
|
"时简称": "H",
|
||||||
|
"分简称": "M"
|
||||||
}
|
}
|
||||||
@ -313,7 +313,6 @@
|
|||||||
"删除账号后,你的所有信息及相关记录都会从平台彻底删除,且不可恢复,是否删除?": "Tüm hesap bilgileriniz platformdan kalıcı olarak kaldırılacak ve kurtarılamayacaktır. silmek ister misiniz?",
|
"删除账号后,你的所有信息及相关记录都会从平台彻底删除,且不可恢复,是否删除?": "Tüm hesap bilgileriniz platformdan kalıcı olarak kaldırılacak ve kurtarılamayacaktır. silmek ister misiniz?",
|
||||||
"监控": "Monitör",
|
"监控": "Monitör",
|
||||||
"视频日志": "Video günlüğü",
|
"视频日志": "Video günlüğü",
|
||||||
"网关设备": "Ağ geçidi",
|
|
||||||
"开门器": "Kapı açacağı",
|
"开门器": "Kapı açacağı",
|
||||||
"面容开锁": "Yüz kilidini açar",
|
"面容开锁": "Yüz kilidini açar",
|
||||||
"开门方向设置": "Açılış yönü seti",
|
"开门方向设置": "Açılış yönü seti",
|
||||||
@ -778,7 +777,6 @@
|
|||||||
"导出": "Ihracat",
|
"导出": "Ihracat",
|
||||||
"批量导出": "Toplu ihracat",
|
"批量导出": "Toplu ihracat",
|
||||||
"读取记录": "Kayıtları yenileyin",
|
"读取记录": "Kayıtları yenileyin",
|
||||||
"手机需联网": "Neednet",
|
|
||||||
"设备": "Cihaz",
|
"设备": "Cihaz",
|
||||||
"消息": "Mesajlar",
|
"消息": "Mesajlar",
|
||||||
"智能分析": "Akıllı analiz",
|
"智能分析": "Akıllı analiz",
|
||||||
@ -1110,5 +1108,15 @@
|
|||||||
"常规使用": "Düzenli kullanım",
|
"常规使用": "Düzenli kullanım",
|
||||||
"网关通电后,长按重置按钮5秒,指示灯交替闪烁时点击下一步": "Ağ geçidi açıldıktan sonra, sıfırlama düğmesine 5 saniye basılı tutun ve gösterge ışığı dönüşümlü olarak yanıp söndüğünde İleri'ye tıklayın.",
|
"网关通电后,长按重置按钮5秒,指示灯交替闪烁时点击下一步": "Ağ geçidi açıldıktan sonra, sıfırlama düğmesine 5 saniye basılı tutun ve gösterge ışığı dönüşümlü olarak yanıp söndüğünde İleri'ye tıklayın.",
|
||||||
"扫描设备": "Tarama cihazı",
|
"扫描设备": "Tarama cihazı",
|
||||||
"删除失败,网关可能已经离线,是否强制删除该数据?": "Silme başarısız oldu. Ağ geçidi çevrimdışı geçmiş olabilir. Verileri silmeye zorlamak ister misiniz?"
|
"删除失败,网关可能已经离线,是否强制删除该数据?": "Silme başarısız oldu. Ağ geçidi çevrimdışı geçmiş olabilir. Verileri silmeye zorlamak ister misiniz?",
|
||||||
|
"超级管理员英文": "Super Admin",
|
||||||
|
"授权管理员英文": "Make admin",
|
||||||
|
"普通管理员英文": "Ordinary user",
|
||||||
|
"网关设备英文": "Gateway",
|
||||||
|
"手机需联网英文": "NeedNet",
|
||||||
|
"年简称": "Y",
|
||||||
|
"月简称": "M",
|
||||||
|
"日简称": "D",
|
||||||
|
"时简称": "H",
|
||||||
|
"分简称": "M"
|
||||||
}
|
}
|
||||||
@ -313,7 +313,6 @@
|
|||||||
"删除账号后,你的所有信息及相关记录都会从平台彻底删除,且不可恢复,是否删除?": "您的所有帳戶信息都將從平台中永久刪除,並且無法恢復。 是否要刪除?",
|
"删除账号后,你的所有信息及相关记录都会从平台彻底删除,且不可恢复,是否删除?": "您的所有帳戶信息都將從平台中永久刪除,並且無法恢復。 是否要刪除?",
|
||||||
"监控": "顯示器",
|
"监控": "顯示器",
|
||||||
"视频日志": "視頻日誌",
|
"视频日志": "視頻日誌",
|
||||||
"网关设备": "網關",
|
|
||||||
"开门器": "開門器",
|
"开门器": "開門器",
|
||||||
"面容开锁": "面部解鎖",
|
"面容开锁": "面部解鎖",
|
||||||
"开门方向设置": "打開方向設置",
|
"开门方向设置": "打開方向設置",
|
||||||
@ -778,7 +777,6 @@
|
|||||||
"导出": "出口",
|
"导出": "出口",
|
||||||
"批量导出": "批量導出",
|
"批量导出": "批量導出",
|
||||||
"读取记录": "刷新記錄",
|
"读取记录": "刷新記錄",
|
||||||
"手机需联网": "NeedNet",
|
|
||||||
"设备": "設備",
|
"设备": "設備",
|
||||||
"消息": "消息",
|
"消息": "消息",
|
||||||
"智能分析": "智能分析",
|
"智能分析": "智能分析",
|
||||||
@ -1110,5 +1108,16 @@
|
|||||||
"常规使用": "經常使用",
|
"常规使用": "經常使用",
|
||||||
"网关通电后,长按重置按钮5秒,指示灯交替闪烁时点击下一步": "網關通電後,按住reset按鈕5秒鐘,當指示燈交替閃爍時單擊Next",
|
"网关通电后,长按重置按钮5秒,指示灯交替闪烁时点击下一步": "網關通電後,按住reset按鈕5秒鐘,當指示燈交替閃爍時單擊Next",
|
||||||
"扫描设备": "掃描設備",
|
"扫描设备": "掃描設備",
|
||||||
"删除失败,网关可能已经离线,是否强制删除该数据?": "刪除失敗。 網關可能已脫機。 是否要強制刪除數據?"
|
"删除失败,网关可能已经离线,是否强制删除该数据?": "刪除失敗。 網關可能已脫機。 是否要強制刪除數據?",
|
||||||
|
"超级管理员英文": "超級管理員",
|
||||||
|
"授权管理员英文": "授權管理員",
|
||||||
|
"普通管理员英文": "普通用戶",
|
||||||
|
"网关设备英文": "網關設備",
|
||||||
|
"手机需联网英文": "手機需要聯網",
|
||||||
|
"年简称": "Y",
|
||||||
|
"月简称": "M",
|
||||||
|
"日简称": "D",
|
||||||
|
"时简称": "H",
|
||||||
|
"分简称": "M"
|
||||||
|
|
||||||
}
|
}
|
||||||
@ -314,7 +314,6 @@
|
|||||||
"删除账号后,你的所有信息及相关记录都会从平台彻底删除,且不可恢复,是否删除?": "Вся інформація вашого Облікового запису буде видалена з Платформи НАЗАВЖДИ і не може бути Recovered.Do ви хочете Видалити?",
|
"删除账号后,你的所有信息及相关记录都会从平台彻底删除,且不可恢复,是否删除?": "Вся інформація вашого Облікового запису буде видалена з Платформи НАЗАВЖДИ і не може бути Recovered.Do ви хочете Видалити?",
|
||||||
"监控": "Монітор",
|
"监控": "Монітор",
|
||||||
"视频日志": "Відео журнал",
|
"视频日志": "Відео журнал",
|
||||||
"网关设备": "Шлюз",
|
|
||||||
"开门器": "Відкривач дверей",
|
"开门器": "Відкривач дверей",
|
||||||
"面容开锁": "Розблокування по обличчю",
|
"面容开锁": "Розблокування по обличчю",
|
||||||
"开门方向设置": "Встановлено напрямок відкривання",
|
"开门方向设置": "Встановлено напрямок відкривання",
|
||||||
@ -786,7 +785,6 @@
|
|||||||
"导出": "Експорт",
|
"导出": "Експорт",
|
||||||
"批量导出": "Пакетний експорт",
|
"批量导出": "Пакетний експорт",
|
||||||
"读取记录": "Оновити записи",
|
"读取记录": "Оновити записи",
|
||||||
"手机需联网": "Мережа NeedNet",
|
|
||||||
"设备": "Пристрій",
|
"设备": "Пристрій",
|
||||||
"消息": "Повідомлення",
|
"消息": "Повідомлення",
|
||||||
"智能分析": "Інтелектуальна аналітика",
|
"智能分析": "Інтелектуальна аналітика",
|
||||||
@ -1110,5 +1108,15 @@
|
|||||||
"常规使用": "Регулярне використання",
|
"常规使用": "Регулярне використання",
|
||||||
"网关通电后,长按重置按钮5秒,指示灯交替闪烁时点击下一步": "Після ввімкнення шлюзу натисніть і утримуйте кнопку скидання протягом 5 секунд, а потім натисніть «Далі», коли індикатор почне блимати по черзі",
|
"网关通电后,长按重置按钮5秒,指示灯交替闪烁时点击下一步": "Після ввімкнення шлюзу натисніть і утримуйте кнопку скидання протягом 5 секунд, а потім натисніть «Далі», коли індикатор почне блимати по черзі",
|
||||||
"扫描设备": "Сканування пристрою",
|
"扫描设备": "Сканування пристрою",
|
||||||
"删除失败,网关可能已经离线,是否强制删除该数据?": "Видалення не вдалося. Можливо, шлюз перейшов в автономний режим. Ви хочете примусово видалити дані?"
|
"删除失败,网关可能已经离线,是否强制删除该数据?": "Видалення не вдалося. Можливо, шлюз перейшов в автономний режим. Ви хочете примусово видалити дані?",
|
||||||
|
"超级管理员英文": "Super Admin",
|
||||||
|
"授权管理员英文": "Make admin",
|
||||||
|
"普通管理员英文": "Ordinary user",
|
||||||
|
"网关设备英文": "Gateway",
|
||||||
|
"手机需联网英文": "NeedNet",
|
||||||
|
"年简称": "Y",
|
||||||
|
"月简称": "M",
|
||||||
|
"日简称": "D",
|
||||||
|
"时简称": "H",
|
||||||
|
"分简称": "M"
|
||||||
}
|
}
|
||||||
@ -313,7 +313,6 @@
|
|||||||
"删除账号后,你的所有信息及相关记录都会从平台彻底删除,且不可恢复,是否删除?": "Tất cả thông tin tài khoản của bạn sẽ bị xóa vĩnh viễn khỏi nền tảng và không thể phục hồi. Bạn có muốn xóa?",
|
"删除账号后,你的所有信息及相关记录都会从平台彻底删除,且不可恢复,是否删除?": "Tất cả thông tin tài khoản của bạn sẽ bị xóa vĩnh viễn khỏi nền tảng và không thể phục hồi. Bạn có muốn xóa?",
|
||||||
"监控": "Màn hình",
|
"监控": "Màn hình",
|
||||||
"视频日志": "Nhật ký video",
|
"视频日志": "Nhật ký video",
|
||||||
"网关设备": "Cổng",
|
|
||||||
"开门器": "Dụng cụ mở cửa",
|
"开门器": "Dụng cụ mở cửa",
|
||||||
"面容开锁": "Mở khóa mặt",
|
"面容开锁": "Mở khóa mặt",
|
||||||
"开门方向设置": "Bộ hướng mở",
|
"开门方向设置": "Bộ hướng mở",
|
||||||
@ -778,7 +777,6 @@
|
|||||||
"导出": "Xuất khẩu",
|
"导出": "Xuất khẩu",
|
||||||
"批量导出": "Hàng loạt xuất khẩu",
|
"批量导出": "Hàng loạt xuất khẩu",
|
||||||
"读取记录": "Làm mới hồ sơ",
|
"读取记录": "Làm mới hồ sơ",
|
||||||
"手机需联网": "Neednet",
|
|
||||||
"设备": "Thiết bị",
|
"设备": "Thiết bị",
|
||||||
"消息": "Tin nhắn",
|
"消息": "Tin nhắn",
|
||||||
"智能分析": "Phân Tích thông minh",
|
"智能分析": "Phân Tích thông minh",
|
||||||
@ -1110,5 +1108,15 @@
|
|||||||
"常规使用": "Sử dụng thường xuyên",
|
"常规使用": "Sử dụng thường xuyên",
|
||||||
"网关通电后,长按重置按钮5秒,指示灯交替闪烁时点击下一步": "Sau khi cổng được bật, Nhấn và giữ nút đặt lại trong 5 giây và Nhấp vào tiếp theo khi đèn báo nhấp nháy luân phiên",
|
"网关通电后,长按重置按钮5秒,指示灯交替闪烁时点击下一步": "Sau khi cổng được bật, Nhấn và giữ nút đặt lại trong 5 giây và Nhấp vào tiếp theo khi đèn báo nhấp nháy luân phiên",
|
||||||
"扫描设备": "Thiết bị quét",
|
"扫描设备": "Thiết bị quét",
|
||||||
"删除失败,网关可能已经离线,是否强制删除该数据?": "Xóa thất bại. Cổng có thể đã tắt. Bạn có muốn buộc xóa dữ liệu không?"
|
"删除失败,网关可能已经离线,是否强制删除该数据?": "Xóa thất bại. Cổng có thể đã tắt. Bạn có muốn buộc xóa dữ liệu không?",
|
||||||
|
"超级管理员英文": "Super Admin",
|
||||||
|
"授权管理员英文": "Make admin",
|
||||||
|
"普通管理员英文": "Ordinary user",
|
||||||
|
"网关设备英文": "Gateway",
|
||||||
|
"手机需联网英文": "NeedNet",
|
||||||
|
"年简称": "Y",
|
||||||
|
"月简称": "M",
|
||||||
|
"日简称": "D",
|
||||||
|
"时简称": "H",
|
||||||
|
"分简称": "M"
|
||||||
}
|
}
|
||||||
@ -1112,5 +1112,15 @@
|
|||||||
"中功率": "中功率",
|
"中功率": "中功率",
|
||||||
"常规使用": "常规使用",
|
"常规使用": "常规使用",
|
||||||
"扫描设备": "扫描设备",
|
"扫描设备": "扫描设备",
|
||||||
"删除失败,网关可能已经离线,是否强制删除该数据?": "删除失败,网关可能已经离线,是否强制删除该数据?"
|
"删除失败,网关可能已经离线,是否强制删除该数据?": "删除失败,网关可能已经离线,是否强制删除该数据?",
|
||||||
|
"超级管理员英文": "超级管理员",
|
||||||
|
"授权管理员英文": "授权管理员",
|
||||||
|
"普通管理员英文": "普通管理员",
|
||||||
|
"网关设备英文": "网关设备",
|
||||||
|
"手机需联网英文": "手机需联网",
|
||||||
|
"年简称": "Y",
|
||||||
|
"月简称": "M",
|
||||||
|
"日简称": "D",
|
||||||
|
"时简称": "H",
|
||||||
|
"分简称": "M"
|
||||||
}
|
}
|
||||||
|
|||||||
44
lib/app.dart
44
lib/app.dart
@ -10,7 +10,6 @@ import 'package:star_lock/main/lockMian/lockMain/lockMain_logic.dart';
|
|||||||
import 'package:star_lock/tools/appFirstEnterHandle.dart';
|
import 'package:star_lock/tools/appFirstEnterHandle.dart';
|
||||||
import 'package:star_lock/tools/app_manager.dart';
|
import 'package:star_lock/tools/app_manager.dart';
|
||||||
import 'package:star_lock/tools/bindings/app_binding.dart';
|
import 'package:star_lock/tools/bindings/app_binding.dart';
|
||||||
import 'package:star_lock/tools/change_language_format.dart';
|
|
||||||
import 'package:star_lock/tools/storage.dart';
|
import 'package:star_lock/tools/storage.dart';
|
||||||
|
|
||||||
import 'package:star_lock/translations/app_dept.dart';
|
import 'package:star_lock/translations/app_dept.dart';
|
||||||
@ -21,6 +20,7 @@ import 'baseWidget.dart';
|
|||||||
import 'tools/appRouteObserver.dart';
|
import 'tools/appRouteObserver.dart';
|
||||||
|
|
||||||
import 'tools/store_service.dart';
|
import 'tools/store_service.dart';
|
||||||
|
import 'translations/current_locale_tool.dart';
|
||||||
|
|
||||||
class MyApp extends StatefulWidget {
|
class MyApp extends StatefulWidget {
|
||||||
MyApp({required this.isLogin, GlobalKey? key}) : super(key: key);
|
MyApp({required this.isLogin, GlobalKey? key}) : super(key: key);
|
||||||
@ -62,36 +62,26 @@ class _MyAppState extends State<MyApp> with WidgetsBindingObserver, BaseWidget {
|
|||||||
// localeResolutionCallback用于在启动时动态确定应该使用哪种语言和地区。
|
// localeResolutionCallback用于在启动时动态确定应该使用哪种语言和地区。
|
||||||
localeResolutionCallback:
|
localeResolutionCallback:
|
||||||
(Locale? locale, Iterable<Locale> supportedLocales) {
|
(Locale? locale, Iterable<Locale> supportedLocales) {
|
||||||
if (widget.isLogin) {
|
AppLog.log(
|
||||||
// 登录之后调用存储的语言
|
'System device locale: ${Get.deviceLocale} locale:$locale');
|
||||||
if (StoreService.to.getLanguageCode()!.isNotEmpty) {
|
// if (widget.isLogin) {
|
||||||
locale = appDept.deptSupportedLocales
|
// 登录之后调用存储的语言
|
||||||
.where((Locale element) =>
|
locale = CurrentLocaleTool.getCurrentLocale();
|
||||||
element.toString() == StoreService.to.getLanguageCode())
|
// } else {
|
||||||
.first;
|
// // 没登录之前调用系统的语言
|
||||||
} else {
|
// locale = Get.deviceLocale;
|
||||||
// 如果没储存则调用系统的语言
|
// }
|
||||||
locale = Get.deviceLocale;
|
locale = CurrentLocaleTool.convertLocale(locale);
|
||||||
}
|
AppLog.log('localeResolutionCallback locale: $locale');
|
||||||
} else {
|
AppManager()
|
||||||
// 没登录之前调用系统的语言
|
.setLanCode(code: '${locale.languageCode}_${locale.countryCode}');
|
||||||
locale = Get.deviceLocale;
|
return Locale(locale.languageCode, locale.countryCode);
|
||||||
}
|
|
||||||
locale = ChangeLanguageFormat.convertLocale(locale!);
|
|
||||||
return supportedLocales.contains(locale)
|
|
||||||
? locale
|
|
||||||
: supportedLocales.first;
|
|
||||||
},
|
},
|
||||||
// 用来指定应用当前使用的语言和地区。它定义了应用在启动时加载的默认语言环境。
|
// 用来指定应用当前使用的语言和地区。它定义了应用在启动时加载的默认语言环境。
|
||||||
locale: StoreService.to.getLanguageCode()!.isNotEmpty
|
locale: CurrentLocaleTool.getCurrentLocale(),
|
||||||
? appDept.deptSupportedLocales
|
|
||||||
.where((Locale element) =>
|
|
||||||
element.toString() == StoreService.to.getLanguageCode())
|
|
||||||
.first
|
|
||||||
: Get.deviceLocale,
|
|
||||||
// locale: Get.deviceLocale,
|
// locale: Get.deviceLocale,
|
||||||
// fallbackLocale用于指定在无法找到匹配的语言时,应用应该使用的默认语言和地区。
|
// fallbackLocale用于指定在无法找到匹配的语言时,应用应该使用的默认语言和地区。
|
||||||
fallbackLocale: Get.deviceLocale,
|
fallbackLocale: const Locale('en', 'US'),
|
||||||
theme: ThemeData(
|
theme: ThemeData(
|
||||||
scaffoldBackgroundColor: const Color(0xFFF6F6F6),
|
scaffoldBackgroundColor: const Color(0xFFF6F6F6),
|
||||||
backgroundColor: const Color(0xFFF6F6F6),
|
backgroundColor: const Color(0xFFF6F6F6),
|
||||||
|
|||||||
@ -7,8 +7,8 @@ import 'package:star_lock/login/login/starLock_login_state.dart';
|
|||||||
import 'package:star_lock/talk/startChart/handle/impl/udp_talk_ping_handler.dart';
|
import 'package:star_lock/talk/startChart/handle/impl/udp_talk_ping_handler.dart';
|
||||||
import 'package:star_lock/talk/startChart/start_chart_manage.dart';
|
import 'package:star_lock/talk/startChart/start_chart_manage.dart';
|
||||||
import 'package:star_lock/tools/appFirstEnterHandle.dart';
|
import 'package:star_lock/tools/appFirstEnterHandle.dart';
|
||||||
import 'package:star_lock/tools/wechat/customer_tool.dart';
|
|
||||||
import 'package:star_lock/tools/storage.dart';
|
import 'package:star_lock/tools/storage.dart';
|
||||||
|
import 'package:star_lock/tools/wechat/customer_tool.dart';
|
||||||
|
|
||||||
import '../../appRouters.dart';
|
import '../../appRouters.dart';
|
||||||
import '../../app_settings/app_colors.dart';
|
import '../../app_settings/app_colors.dart';
|
||||||
@ -50,14 +50,16 @@ class _StarLockLoginPageState extends State<StarLockLoginPage> {
|
|||||||
haveBack: false,
|
haveBack: false,
|
||||||
backgroundColor: AppColors.mainColor,
|
backgroundColor: AppColors.mainColor,
|
||||||
actionsList: <Widget>[
|
actionsList: <Widget>[
|
||||||
IconButton(
|
if (state.isChina == true)
|
||||||
onPressed: () {
|
IconButton(
|
||||||
WechatManageTool.getAppInfo(CustomerTool.openCustomerService);
|
onPressed: () {
|
||||||
},
|
WechatManageTool.getAppInfo(
|
||||||
icon: const Icon(
|
CustomerTool.openCustomerService);
|
||||||
Icons.support_agent,
|
},
|
||||||
color: Colors.white,
|
icon: const Icon(
|
||||||
)),
|
Icons.support_agent,
|
||||||
|
color: Colors.white,
|
||||||
|
)),
|
||||||
TextButton(
|
TextButton(
|
||||||
child: Text(
|
child: Text(
|
||||||
'注册'.tr,
|
'注册'.tr,
|
||||||
|
|||||||
@ -1,6 +1,8 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:get/get.dart';
|
import 'package:get/get.dart';
|
||||||
|
|
||||||
|
import '../../translations/current_locale_tool.dart';
|
||||||
|
|
||||||
class StarLockLoginState {
|
class StarLockLoginState {
|
||||||
StarLockLoginState() {
|
StarLockLoginState() {
|
||||||
// emailOrPhone.value = StoreService.to.getLastUserAccount() as String;
|
// emailOrPhone.value = StoreService.to.getLastUserAccount() as String;
|
||||||
@ -15,6 +17,16 @@ class StarLockLoginState {
|
|||||||
/// 获取翻译后的国家名称
|
/// 获取翻译后的国家名称
|
||||||
String get countryName => countryKey.value.tr;
|
String get countryName => countryKey.value.tr;
|
||||||
|
|
||||||
|
///
|
||||||
|
bool get isChina {
|
||||||
|
if (CurrentLocaleTool.convertLocale(Get.deviceLocale!) ==
|
||||||
|
const Locale('zh', 'CN')) {
|
||||||
|
return true;
|
||||||
|
} else {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
RxString emailOrPhone = ''.obs;
|
RxString emailOrPhone = ''.obs;
|
||||||
RxString pwd = ''.obs;
|
RxString pwd = ''.obs;
|
||||||
RxBool canNext = false.obs;
|
RxBool canNext = false.obs;
|
||||||
|
|||||||
@ -5,8 +5,8 @@ import 'package:get/get.dart';
|
|||||||
import 'package:star_lock/flavors.dart';
|
import 'package:star_lock/flavors.dart';
|
||||||
import 'package:star_lock/login/login/starLock_login_state.dart';
|
import 'package:star_lock/login/login/starLock_login_state.dart';
|
||||||
import 'package:star_lock/tools/appFirstEnterHandle.dart';
|
import 'package:star_lock/tools/appFirstEnterHandle.dart';
|
||||||
import 'package:star_lock/tools/wechat/customer_tool.dart';
|
|
||||||
import 'package:star_lock/tools/storage.dart';
|
import 'package:star_lock/tools/storage.dart';
|
||||||
|
import 'package:star_lock/tools/wechat/customer_tool.dart';
|
||||||
|
|
||||||
import '../../appRouters.dart';
|
import '../../appRouters.dart';
|
||||||
import '../../app_settings/app_colors.dart';
|
import '../../app_settings/app_colors.dart';
|
||||||
@ -63,15 +63,16 @@ class _StarLockLoginPageState extends State<StarLockLoginXHJPage> {
|
|||||||
),
|
),
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
IconButton(
|
if (state.isChina == true)
|
||||||
onPressed: () {
|
IconButton(
|
||||||
WechatManageTool.getAppInfo(
|
onPressed: () {
|
||||||
CustomerTool.openCustomerService);
|
WechatManageTool.getAppInfo(
|
||||||
},
|
CustomerTool.openCustomerService);
|
||||||
icon: Icon(
|
},
|
||||||
Icons.support_agent,
|
icon: Icon(
|
||||||
color: AppColors.mainColor,
|
Icons.support_agent,
|
||||||
)),
|
color: AppColors.mainColor,
|
||||||
|
)),
|
||||||
],
|
],
|
||||||
),
|
),
|
||||||
SizedBox(height: 30.h),
|
SizedBox(height: 30.h),
|
||||||
|
|||||||
@ -10,6 +10,7 @@ import 'package:star_lock/tools/baseGetXController.dart';
|
|||||||
import '../../app_settings/app_colors.dart';
|
import '../../app_settings/app_colors.dart';
|
||||||
import '../../tools/keySearchWidget.dart';
|
import '../../tools/keySearchWidget.dart';
|
||||||
import '../../tools/titleAppBar.dart';
|
import '../../tools/titleAppBar.dart';
|
||||||
|
import '../../translations/current_locale_tool.dart';
|
||||||
import 'common/index.dart';
|
import 'common/index.dart';
|
||||||
|
|
||||||
class SelectCountryRegionPage extends StatefulWidget {
|
class SelectCountryRegionPage extends StatefulWidget {
|
||||||
@ -24,11 +25,14 @@ class _SelectCountryRegionPageState extends State<SelectCountryRegionPage> {
|
|||||||
List<CountryRegionModel> countriesList = <CountryRegionModel>[];
|
List<CountryRegionModel> countriesList = <CountryRegionModel>[];
|
||||||
List<CountryRegionModel> topCountriesList = <CountryRegionModel>[];
|
List<CountryRegionModel> topCountriesList = <CountryRegionModel>[];
|
||||||
TextEditingController searchController = TextEditingController();
|
TextEditingController searchController = TextEditingController();
|
||||||
|
String currentLanguage = '';
|
||||||
|
|
||||||
@override
|
@override
|
||||||
void initState() {
|
void initState() {
|
||||||
super.initState();
|
super.initState();
|
||||||
|
|
||||||
|
currentLanguage = CurrentLocaleTool.getCurrentLocaleString();
|
||||||
|
|
||||||
SuspensionUtil.setShowSuspensionStatus(
|
SuspensionUtil.setShowSuspensionStatus(
|
||||||
countriesList.cast<ISuspensionBean>());
|
countriesList.cast<ISuspensionBean>());
|
||||||
Future.delayed(const Duration(milliseconds: 20), getCountriesListRequest);
|
Future.delayed(const Duration(milliseconds: 20), getCountriesListRequest);
|
||||||
@ -154,7 +158,9 @@ class _SelectCountryRegionPageState extends State<SelectCountryRegionPage> {
|
|||||||
final String tag = model.getSuspensionTag();
|
final String tag = model.getSuspensionTag();
|
||||||
return Utils.getSusItem(context, tag);
|
return Utils.getSusItem(context, tag);
|
||||||
},
|
},
|
||||||
indexBarData: const <String>['★', ...kIndexBarData],
|
indexBarData: currentLanguage == 'zh_CN'
|
||||||
|
? const <String>['★', ...kIndexBarData]
|
||||||
|
: [],
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
],
|
],
|
||||||
|
|||||||
@ -76,7 +76,8 @@ Future<void> _setCommonServices() async {
|
|||||||
|
|
||||||
//关于隐私协议的初始化
|
//关于隐私协议的初始化
|
||||||
Future<void> privacySDKInitialization() async {
|
Future<void> privacySDKInitialization() async {
|
||||||
UmengCommonSdk.initCommon('671244cf80464b33f6df9648', '671244ae80464b33f6df9646', 'Product');
|
UmengCommonSdk.initCommon(
|
||||||
|
'671244cf80464b33f6df9648', '671244ae80464b33f6df9646', 'Product');
|
||||||
UmengCommonSdk.setPageCollectionModeManual();
|
UmengCommonSdk.setPageCollectionModeManual();
|
||||||
|
|
||||||
await Get.putAsync(() => PlatformInfoService().init());
|
await Get.putAsync(() => PlatformInfoService().init());
|
||||||
@ -85,27 +86,3 @@ Future<void> privacySDKInitialization() async {
|
|||||||
final XSJPushProvider jpushProvider = XSJPushProvider();
|
final XSJPushProvider jpushProvider = XSJPushProvider();
|
||||||
await jpushProvider.initJPushService();
|
await jpushProvider.initJPushService();
|
||||||
}
|
}
|
||||||
|
|
||||||
void checkChinese() {
|
|
||||||
// 获取当前脚本的目录
|
|
||||||
final String scriptDir = path.dirname(Platform.script.path);
|
|
||||||
|
|
||||||
// 遍历这个目录下的所有 .dart 文件
|
|
||||||
findChineseCharacters(Directory(scriptDir));
|
|
||||||
}
|
|
||||||
|
|
||||||
void findChineseCharacters(Directory directory) {
|
|
||||||
final List<FileSystemEntity> files = directory.listSync(recursive: true);
|
|
||||||
for (FileSystemEntity file in files) {
|
|
||||||
if (file is File && file.path.endsWith('.dart')) {
|
|
||||||
final String content = file.readAsStringSync(encoding: utf8);
|
|
||||||
if (hasChineseCharacters(content)) {
|
|
||||||
print('Found Chinese characters in ${file.path}');
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
bool hasChineseCharacters(String input) {
|
|
||||||
return RegExp(r'[\u4e00-\u9fa5]').hasMatch(input);
|
|
||||||
}
|
|
||||||
|
|||||||
@ -1,8 +1,6 @@
|
|||||||
import 'package:expandable/expandable.dart';
|
|
||||||
import 'package:flutter/cupertino.dart';
|
import 'package:flutter/cupertino.dart';
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter/services.dart';
|
import 'package:flutter/services.dart';
|
||||||
import 'package:flutter/widgets.dart';
|
|
||||||
import 'package:flutter_native_contact_picker/flutter_native_contact_picker.dart';
|
import 'package:flutter_native_contact_picker/flutter_native_contact_picker.dart';
|
||||||
import 'package:flutter_screenutil/flutter_screenutil.dart';
|
import 'package:flutter_screenutil/flutter_screenutil.dart';
|
||||||
import 'package:get/get.dart';
|
import 'package:get/get.dart';
|
||||||
@ -109,12 +107,13 @@ class _AuthorizedAdminPageState extends State<AuthorizedAdminPage>
|
|||||||
Widget keyInfoWidget() {
|
Widget keyInfoWidget() {
|
||||||
return Column(
|
return Column(
|
||||||
children: <Widget>[
|
children: <Widget>[
|
||||||
CommonItem(
|
// CommonItem(
|
||||||
leftTitel: '接收者'.tr,
|
// leftTitel: '接收者'.tr,
|
||||||
rightTitle: '',
|
// rightTitle: '',
|
||||||
isHaveLine: true,
|
// isHaveLine: true,
|
||||||
isHaveRightWidget: true,
|
// isHaveRightWidget: true,
|
||||||
rightWidget: getTFWidget(true, '请输入手机号或者邮箱'.tr, 1)),
|
// rightWidget: getTFWidget(true, '请输入手机号或者邮箱'.tr, 1)),
|
||||||
|
perpetualKeyWidget('接收者'.tr, '请输入手机号或者邮箱'.tr),
|
||||||
CommonItem(
|
CommonItem(
|
||||||
leftTitel: '国家/地区'.tr,
|
leftTitel: '国家/地区'.tr,
|
||||||
rightTitle: '',
|
rightTitle: '',
|
||||||
@ -192,6 +191,88 @@ class _AuthorizedAdminPageState extends State<AuthorizedAdminPage>
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Widget perpetualKeyWidget(String titleStr, String rightTitle) {
|
||||||
|
return Column(
|
||||||
|
children: <Widget>[
|
||||||
|
Container(
|
||||||
|
height: 65.h,
|
||||||
|
padding: EdgeInsets.only(left: 20.w, right: 20.w),
|
||||||
|
color: Colors.white,
|
||||||
|
child: Row(
|
||||||
|
children: <Widget>[
|
||||||
|
Text(titleStr, style: TextStyle(fontSize: 22.sp)),
|
||||||
|
SizedBox(width: 6.w),
|
||||||
|
Expanded(
|
||||||
|
child: TextField(
|
||||||
|
controller: logic.getCurrentController(1),
|
||||||
|
//输入框一行
|
||||||
|
maxLines: 1,
|
||||||
|
inputFormatters: <TextInputFormatter>[
|
||||||
|
FilteringTextInputFormatter.deny('\n'),
|
||||||
|
LengthLimitingTextInputFormatter(30),
|
||||||
|
],
|
||||||
|
// controller: _controller,
|
||||||
|
autofocus: false,
|
||||||
|
textAlign: TextAlign.end,
|
||||||
|
decoration: InputDecoration(
|
||||||
|
//输入里面输入文字内边距设置
|
||||||
|
hintText: rightTitle,
|
||||||
|
hintStyle: TextStyle(fontSize: 22.sp),
|
||||||
|
focusedBorder: const OutlineInputBorder(
|
||||||
|
borderSide:
|
||||||
|
BorderSide(width: 0, color: Colors.transparent)),
|
||||||
|
disabledBorder: const OutlineInputBorder(
|
||||||
|
borderSide:
|
||||||
|
BorderSide(width: 0, color: Colors.transparent)),
|
||||||
|
enabledBorder: const OutlineInputBorder(
|
||||||
|
borderSide:
|
||||||
|
BorderSide(width: 0, color: Colors.transparent)),
|
||||||
|
border: const OutlineInputBorder(
|
||||||
|
borderSide:
|
||||||
|
BorderSide(width: 0, color: Colors.transparent)),
|
||||||
|
contentPadding: const EdgeInsets.symmetric(vertical: 0),
|
||||||
|
),
|
||||||
|
style: TextStyle(
|
||||||
|
fontSize: 22.sp, textBaseline: TextBaseline.alphabetic),
|
||||||
|
),
|
||||||
|
),
|
||||||
|
SizedBox(
|
||||||
|
width: 10.w,
|
||||||
|
),
|
||||||
|
Container(
|
||||||
|
width: 32.w,
|
||||||
|
height: 32.w,
|
||||||
|
decoration: const BoxDecoration(
|
||||||
|
color: Colors.white,
|
||||||
|
image: DecorationImage(
|
||||||
|
image: AssetImage('images/icon_addressBook.png'),
|
||||||
|
fit: BoxFit.fill),
|
||||||
|
),
|
||||||
|
alignment: Alignment.center,
|
||||||
|
child: InkWell(
|
||||||
|
onTap: () async {
|
||||||
|
final Contact? currentContact =
|
||||||
|
await logic.state.contactPicker.selectContact();
|
||||||
|
logic.state.contact = currentContact!;
|
||||||
|
if (currentContact.phoneNumbers!.isNotEmpty) {
|
||||||
|
logic.state.emailOrPhoneController.text = currentContact
|
||||||
|
.phoneNumbers![0]
|
||||||
|
.replaceAll(RegExp(r'\s+\b|\b\s'), '');
|
||||||
|
}
|
||||||
|
if (currentContact.fullName!.isNotEmpty) {
|
||||||
|
logic.state.keyNameController.text =
|
||||||
|
currentContact.fullName!;
|
||||||
|
}
|
||||||
|
},
|
||||||
|
),
|
||||||
|
)
|
||||||
|
],
|
||||||
|
),
|
||||||
|
)
|
||||||
|
],
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
// 实名认证
|
// 实名认证
|
||||||
Widget keyOnlyManageWidget() {
|
Widget keyOnlyManageWidget() {
|
||||||
return Column(
|
return Column(
|
||||||
|
|||||||
@ -244,8 +244,6 @@ class _CardListPageState extends State<CardListPage> with RouteAware {
|
|||||||
children: <Widget>[
|
children: <Widget>[
|
||||||
Flexible(
|
Flexible(
|
||||||
child: Text(showTime,
|
child: Text(showTime,
|
||||||
maxLines: 1,
|
|
||||||
overflow: TextOverflow.ellipsis,
|
|
||||||
style: TextStyle(
|
style: TextStyle(
|
||||||
fontSize: 18.sp,
|
fontSize: 18.sp,
|
||||||
color: AppColors.placeholderTextColor)),
|
color: AppColors.placeholderTextColor)),
|
||||||
|
|||||||
@ -1,4 +1,3 @@
|
|||||||
|
|
||||||
import 'package:flutter/cupertino.dart';
|
import 'package:flutter/cupertino.dart';
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter/services.dart';
|
import 'package:flutter/services.dart';
|
||||||
@ -22,7 +21,6 @@ import 'package:star_lock/tools/showTipView.dart';
|
|||||||
import 'package:star_lock/tools/submitBtn.dart';
|
import 'package:star_lock/tools/submitBtn.dart';
|
||||||
|
|
||||||
class SendElectronicKeyView extends StatefulWidget {
|
class SendElectronicKeyView extends StatefulWidget {
|
||||||
|
|
||||||
SendElectronicKeyView({required this.type, Key? key}) : super(key: key);
|
SendElectronicKeyView({required this.type, Key? key}) : super(key: key);
|
||||||
String type;
|
String type;
|
||||||
|
|
||||||
@ -105,16 +103,17 @@ class _SendElectronicKeyViewState extends State<SendElectronicKeyView>
|
|||||||
return Column(
|
return Column(
|
||||||
children: <Widget>[
|
children: <Widget>[
|
||||||
// Container(height: 10.h),
|
// Container(height: 10.h),
|
||||||
CommonItem(
|
// CommonItem(
|
||||||
leftTitel: '接收者'.tr,
|
// leftTitel: '接收者'.tr,
|
||||||
rightTitle: '',
|
// rightTitle: '',
|
||||||
isHaveLine: true,
|
// isHaveLine: true,
|
||||||
isHaveRightWidget: true,
|
// isHaveRightWidget: true,
|
||||||
rightWidget: getTFWidget(
|
// rightWidget: getTFWidget(
|
||||||
true,
|
// true,
|
||||||
'请输入手机号或者邮箱'.tr,
|
// '请输入手机号或者邮箱'.tr,
|
||||||
1,
|
// 1,
|
||||||
logic)),
|
// logic)),
|
||||||
|
perpetualKeyWidget(logic, '接收者'.tr, '请输入手机号或者邮箱'.tr),
|
||||||
CommonItem(
|
CommonItem(
|
||||||
leftTitel: '国家/地区'.tr,
|
leftTitel: '国家/地区'.tr,
|
||||||
rightTitle: '',
|
rightTitle: '',
|
||||||
@ -142,14 +141,95 @@ class _SendElectronicKeyViewState extends State<SendElectronicKeyView>
|
|||||||
leftTitel: '姓名'.tr,
|
leftTitel: '姓名'.tr,
|
||||||
rightTitle: '',
|
rightTitle: '',
|
||||||
isHaveRightWidget: true,
|
isHaveRightWidget: true,
|
||||||
rightWidget: getTFWidget(
|
rightWidget: getTFWidget(false, '请输入'.tr, 2, logic, maxSize: 50)),
|
||||||
false, '请输入'.tr, 2, logic,
|
|
||||||
maxSize: 50)),
|
|
||||||
Container(height: 10.h),
|
Container(height: 10.h),
|
||||||
],
|
],
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Widget perpetualKeyWidget(
|
||||||
|
SendElectronicKeyViewLogic logic, String titleStr, String rightTitle) {
|
||||||
|
return Column(
|
||||||
|
children: <Widget>[
|
||||||
|
Container(
|
||||||
|
height: 65.h,
|
||||||
|
padding: EdgeInsets.only(left: 20.w, right: 20.w),
|
||||||
|
color: Colors.white,
|
||||||
|
child: Row(
|
||||||
|
children: <Widget>[
|
||||||
|
Text(titleStr, style: TextStyle(fontSize: 22.sp)),
|
||||||
|
SizedBox(width: 6.w),
|
||||||
|
Expanded(
|
||||||
|
child: TextField(
|
||||||
|
controller: logic.getCurrentController(1),
|
||||||
|
//输入框一行
|
||||||
|
maxLines: 1,
|
||||||
|
inputFormatters: <TextInputFormatter>[
|
||||||
|
FilteringTextInputFormatter.deny('\n'),
|
||||||
|
LengthLimitingTextInputFormatter(30),
|
||||||
|
],
|
||||||
|
// controller: _controller,
|
||||||
|
autofocus: false,
|
||||||
|
textAlign: TextAlign.end,
|
||||||
|
decoration: InputDecoration(
|
||||||
|
//输入里面输入文字内边距设置
|
||||||
|
hintText: rightTitle,
|
||||||
|
hintStyle: TextStyle(fontSize: 22.sp),
|
||||||
|
focusedBorder: const OutlineInputBorder(
|
||||||
|
borderSide:
|
||||||
|
BorderSide(width: 0, color: Colors.transparent)),
|
||||||
|
disabledBorder: const OutlineInputBorder(
|
||||||
|
borderSide:
|
||||||
|
BorderSide(width: 0, color: Colors.transparent)),
|
||||||
|
enabledBorder: const OutlineInputBorder(
|
||||||
|
borderSide:
|
||||||
|
BorderSide(width: 0, color: Colors.transparent)),
|
||||||
|
border: const OutlineInputBorder(
|
||||||
|
borderSide:
|
||||||
|
BorderSide(width: 0, color: Colors.transparent)),
|
||||||
|
contentPadding: const EdgeInsets.symmetric(vertical: 0),
|
||||||
|
),
|
||||||
|
style: TextStyle(
|
||||||
|
fontSize: 22.sp, textBaseline: TextBaseline.alphabetic),
|
||||||
|
),
|
||||||
|
),
|
||||||
|
SizedBox(
|
||||||
|
width: 10.w,
|
||||||
|
),
|
||||||
|
Container(
|
||||||
|
width: 32.w,
|
||||||
|
height: 32.w,
|
||||||
|
decoration: const BoxDecoration(
|
||||||
|
color: Colors.white,
|
||||||
|
image: DecorationImage(
|
||||||
|
image: AssetImage('images/icon_addressBook.png'),
|
||||||
|
fit: BoxFit.fill),
|
||||||
|
),
|
||||||
|
alignment: Alignment.center,
|
||||||
|
child: InkWell(
|
||||||
|
onTap: () async {
|
||||||
|
final Contact? currentContact =
|
||||||
|
await logic.state.contactPicker.selectContact();
|
||||||
|
logic.state.contact = currentContact!;
|
||||||
|
if (currentContact.phoneNumbers!.isNotEmpty) {
|
||||||
|
logic.state.emailOrPhoneController.text = currentContact
|
||||||
|
.phoneNumbers![0]
|
||||||
|
.replaceAll(RegExp(r'\s+\b|\b\s'), '');
|
||||||
|
}
|
||||||
|
if (currentContact.fullName!.isNotEmpty) {
|
||||||
|
logic.state.keyNameController.text =
|
||||||
|
currentContact.fullName!;
|
||||||
|
}
|
||||||
|
},
|
||||||
|
),
|
||||||
|
)
|
||||||
|
],
|
||||||
|
),
|
||||||
|
)
|
||||||
|
],
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
// 生效失效时间
|
// 生效失效时间
|
||||||
Widget keyTimeWidget(SendElectronicKeyViewLogic logic) {
|
Widget keyTimeWidget(SendElectronicKeyViewLogic logic) {
|
||||||
return Column(
|
return Column(
|
||||||
@ -163,7 +243,8 @@ class _SendElectronicKeyViewState extends State<SendElectronicKeyView>
|
|||||||
final PDuration selectDate = PDuration.parse(
|
final PDuration selectDate = PDuration.parse(
|
||||||
DateTime.parse(logic.state.timeLimitBeginTime));
|
DateTime.parse(logic.state.timeLimitBeginTime));
|
||||||
Pickers.showDatePicker(context,
|
Pickers.showDatePicker(context,
|
||||||
selectDate: selectDate, mode: DateMode.YMDHM, onConfirm: (PDuration p) {
|
selectDate: selectDate,
|
||||||
|
mode: DateMode.YMDHM, onConfirm: (PDuration p) {
|
||||||
logic.state.timeLimitBeginTime =
|
logic.state.timeLimitBeginTime =
|
||||||
DateTool().getYMDHNDateString(p, 1);
|
DateTool().getYMDHNDateString(p, 1);
|
||||||
logic.update();
|
logic.update();
|
||||||
@ -177,7 +258,8 @@ class _SendElectronicKeyViewState extends State<SendElectronicKeyView>
|
|||||||
final PDuration selectDate = PDuration.parse(
|
final PDuration selectDate = PDuration.parse(
|
||||||
DateTime.tryParse(logic.state.timeLimitEndTime));
|
DateTime.tryParse(logic.state.timeLimitEndTime));
|
||||||
Pickers.showDatePicker(context,
|
Pickers.showDatePicker(context,
|
||||||
selectDate: selectDate, mode: DateMode.YMDHM, onConfirm: (PDuration p) {
|
selectDate: selectDate,
|
||||||
|
mode: DateMode.YMDHM, onConfirm: (PDuration p) {
|
||||||
logic.state.timeLimitEndTime =
|
logic.state.timeLimitEndTime =
|
||||||
DateTool().getYMDHNDateString(p, 1);
|
DateTool().getYMDHNDateString(p, 1);
|
||||||
logic.update();
|
logic.update();
|
||||||
@ -237,14 +319,14 @@ class _SendElectronicKeyViewState extends State<SendElectronicKeyView>
|
|||||||
isHaveDirection: true,
|
isHaveDirection: true,
|
||||||
isHaveLine: true,
|
isHaveLine: true,
|
||||||
action: () async {
|
action: () async {
|
||||||
final result =
|
final result = await Get.toNamed(Routers.seletKeyCyclicDatePage,
|
||||||
await Get.toNamed(Routers.seletKeyCyclicDatePage, arguments: <String, Object>{
|
arguments: <String, Object>{
|
||||||
'validityValue': logic.state.weekdaysList,
|
'validityValue': logic.state.weekdaysList,
|
||||||
'starDate': logic.state.cycleBeginTime,
|
'starDate': logic.state.cycleBeginTime,
|
||||||
'endDate': logic.state.cycleEndTime,
|
'endDate': logic.state.cycleEndTime,
|
||||||
'starTime': logic.state.effectiveDateTime,
|
'starTime': logic.state.effectiveDateTime,
|
||||||
'endTime': logic.state.failureDateTime
|
'endTime': logic.state.failureDateTime
|
||||||
});
|
});
|
||||||
if (result != null && result.isNotEmpty) {
|
if (result != null && result.isNotEmpty) {
|
||||||
logic.state.weekdaysList = result['validityValue'];
|
logic.state.weekdaysList = result['validityValue'];
|
||||||
logic.state.cycleBeginTime = result['starDate'];
|
logic.state.cycleBeginTime = result['starDate'];
|
||||||
@ -418,7 +500,8 @@ class _SendElectronicKeyViewState extends State<SendElectronicKeyView>
|
|||||||
),
|
),
|
||||||
if (logic.emailOrPhone != null)
|
if (logic.emailOrPhone != null)
|
||||||
OutLineBtn(
|
OutLineBtn(
|
||||||
btnName: logic.state.userNameType.value == 1 ? '短信通知'.tr : '邮件通知'.tr,
|
btnName:
|
||||||
|
logic.state.userNameType.value == 1 ? '短信通知'.tr : '邮件通知'.tr,
|
||||||
onClick: () {
|
onClick: () {
|
||||||
Get.toNamed(Routers.sendEmailNotificationPage,
|
Get.toNamed(Routers.sendEmailNotificationPage,
|
||||||
arguments: <String, Object?>{
|
arguments: <String, Object?>{
|
||||||
|
|||||||
@ -251,8 +251,6 @@ class _FingerprintListPageState extends State<FingerprintListPage>
|
|||||||
children: <Widget>[
|
children: <Widget>[
|
||||||
Flexible(
|
Flexible(
|
||||||
child: Text(showTime,
|
child: Text(showTime,
|
||||||
maxLines: 1,
|
|
||||||
overflow: TextOverflow.ellipsis,
|
|
||||||
style: TextStyle(
|
style: TextStyle(
|
||||||
fontSize: 18.sp,
|
fontSize: 18.sp,
|
||||||
color: AppColors.placeholderTextColor)),
|
color: AppColors.placeholderTextColor)),
|
||||||
|
|||||||
@ -109,9 +109,23 @@ class _LockDetailPageState extends State<LockDetailPage>
|
|||||||
SingleChildScrollView(
|
SingleChildScrollView(
|
||||||
child: Column(
|
child: Column(
|
||||||
children: <Widget>[
|
children: <Widget>[
|
||||||
SizedBox(
|
Visibility(
|
||||||
height: isShowTip ? 70.h : 10.h,
|
visible: isShowTip,
|
||||||
|
child: Container(
|
||||||
|
// height: 30.h,
|
||||||
|
width: 1.sw,
|
||||||
|
color: const Color(0xFFFBEFD4),
|
||||||
|
padding: EdgeInsets.only(top: 8.h, bottom: 8.h),
|
||||||
|
child: Text(
|
||||||
|
"${"钥匙将在".tr}${DateTool().compareTimeGetDaysFromNow(state.keyInfos.value.endDate!)}${"天后失效".tr}",
|
||||||
|
maxLines: 2,
|
||||||
|
overflow: TextOverflow.ellipsis,
|
||||||
|
textAlign: TextAlign.center,
|
||||||
|
style: TextStyle(
|
||||||
|
color: const Color(0xffCBA74B), fontSize: 24.sp)),
|
||||||
|
),
|
||||||
),
|
),
|
||||||
|
SizedBox(height: 10.h),
|
||||||
Padding(
|
Padding(
|
||||||
padding: EdgeInsets.symmetric(horizontal: 24.w),
|
padding: EdgeInsets.symmetric(horizontal: 24.w),
|
||||||
child: Text(
|
child: Text(
|
||||||
@ -152,23 +166,6 @@ class _LockDetailPageState extends State<LockDetailPage>
|
|||||||
],
|
],
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
Visibility(
|
|
||||||
visible: isShowTip,
|
|
||||||
child: Container(
|
|
||||||
// height: 30.h,
|
|
||||||
color: const Color(0xFFFBEFD4),
|
|
||||||
padding: EdgeInsets.only(top: 8.h, bottom: 8.h),
|
|
||||||
child: Row(
|
|
||||||
mainAxisAlignment: MainAxisAlignment.center,
|
|
||||||
children: <Widget>[
|
|
||||||
Text(
|
|
||||||
"${"钥匙将在".tr}${DateTool().compareTimeGetDaysFromNow(state.keyInfos.value.endDate!)}${"天后失效".tr}",
|
|
||||||
style: TextStyle(
|
|
||||||
color: const Color(0xffCBA74B), fontSize: 24.sp))
|
|
||||||
],
|
|
||||||
),
|
|
||||||
),
|
|
||||||
),
|
|
||||||
Visibility(
|
Visibility(
|
||||||
visible: state.iSClosedUnlockSuccessfulPopup.value,
|
visible: state.iSClosedUnlockSuccessfulPopup.value,
|
||||||
// visible: true,
|
// visible: true,
|
||||||
@ -508,17 +505,17 @@ class _LockDetailPageState extends State<LockDetailPage>
|
|||||||
,
|
,
|
||||||
child: Container(
|
child: Container(
|
||||||
// height: 30.h,
|
// height: 30.h,
|
||||||
|
width: 1.sw,
|
||||||
color: const Color(0xFFFBEFD4),
|
color: const Color(0xFFFBEFD4),
|
||||||
padding: EdgeInsets.only(top: 8.h, bottom: 8.h),
|
padding:
|
||||||
child: Row(
|
EdgeInsets.only(top: 8.h, bottom: 8.h, right: 10.w, left: 10.h),
|
||||||
mainAxisAlignment: MainAxisAlignment.center,
|
child: Text(
|
||||||
children: <Widget>[
|
"${"钥匙将在".tr}${DateTool().compareTimeGetDaysFromNow(state.keyInfos.value.endDate!)}${"天后失效".tr}",
|
||||||
Text(
|
maxLines: 2,
|
||||||
"${"钥匙将在".tr}${DateTool().compareTimeGetDaysFromNow(state.keyInfos.value.endDate!)}${"天后失效".tr}",
|
overflow: TextOverflow.ellipsis,
|
||||||
style: TextStyle(
|
textAlign: TextAlign.center,
|
||||||
color: const Color(0xffCBA74B), fontSize: 24.sp))
|
style:
|
||||||
],
|
TextStyle(color: const Color(0xffCBA74B), fontSize: 24.sp)),
|
||||||
),
|
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
Stack(children: <Widget>[
|
Stack(children: <Widget>[
|
||||||
@ -808,10 +805,10 @@ class _LockDetailPageState extends State<LockDetailPage>
|
|||||||
SizedBox(width: 6.w),
|
SizedBox(width: 6.w),
|
||||||
Text(
|
Text(
|
||||||
state.keyInfos.value.isLockOwner == 1
|
state.keyInfos.value.isLockOwner == 1
|
||||||
? '超级管理员'.tr
|
? '超级管理员英文'.tr
|
||||||
: (state.keyInfos.value.keyRight == 1
|
: (state.keyInfos.value.keyRight == 1
|
||||||
? '授权管理员'.tr
|
? '授权管理员英文'.tr
|
||||||
: '普通用户'.tr),
|
: '普通用户英文'.tr),
|
||||||
style: TextStyle(
|
style: TextStyle(
|
||||||
fontSize: 20.sp, color: AppColors.darkGrayTextColor),
|
fontSize: 20.sp, color: AppColors.darkGrayTextColor),
|
||||||
),
|
),
|
||||||
@ -832,7 +829,7 @@ class _LockDetailPageState extends State<LockDetailPage>
|
|||||||
),
|
),
|
||||||
SizedBox(width: 6.w),
|
SizedBox(width: 6.w),
|
||||||
Text(
|
Text(
|
||||||
'网关设备'.tr,
|
'网关设备英文'.tr,
|
||||||
style: TextStyle(
|
style: TextStyle(
|
||||||
fontSize: 20.sp,
|
fontSize: 20.sp,
|
||||||
color: state.keyInfos.value.hasGateway == 1
|
color: state.keyInfos.value.hasGateway == 1
|
||||||
@ -855,7 +852,7 @@ class _LockDetailPageState extends State<LockDetailPage>
|
|||||||
),
|
),
|
||||||
SizedBox(width: 6.w),
|
SizedBox(width: 6.w),
|
||||||
Text(
|
Text(
|
||||||
'手机需联网'.tr,
|
'手机需联网英文'.tr,
|
||||||
style: TextStyle(
|
style: TextStyle(
|
||||||
fontSize: 20.sp,
|
fontSize: 20.sp,
|
||||||
color: state.isOpenLockNeedOnline.value == 1
|
color: state.isOpenLockNeedOnline.value == 1
|
||||||
|
|||||||
@ -566,11 +566,9 @@ class _LockSetPageState extends State<LockSetPage>
|
|||||||
() => Visibility(
|
() => Visibility(
|
||||||
visible: state.lockBasicInfo.value.isLockOwner == 1 &&
|
visible: state.lockBasicInfo.value.isLockOwner == 1 &&
|
||||||
state.lockFeature.value.appUnlockOnline == 1,
|
state.lockFeature.value.appUnlockOnline == 1,
|
||||||
child: CommonItem(
|
child: otherItem(
|
||||||
leftTitel: '开锁时是否需联网'.tr,
|
leftTitle: '开锁时是否需联网'.tr,
|
||||||
rightTitle: '',
|
|
||||||
isHaveLine: false,
|
isHaveLine: false,
|
||||||
isHaveRightWidget: true,
|
|
||||||
rightWidget: _openLockNeedOnlineSwitch()),
|
rightWidget: _openLockNeedOnlineSwitch()),
|
||||||
),
|
),
|
||||||
),
|
),
|
||||||
@ -690,6 +688,33 @@ class _LockSetPageState extends State<LockSetPage>
|
|||||||
style: TextStyle(fontSize: 22.sp, color: AppColors.darkGrayTextColor));
|
style: TextStyle(fontSize: 22.sp, color: AppColors.darkGrayTextColor));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Widget otherItem({String? leftTitle, bool? isHaveLine, Widget? rightWidget}) {
|
||||||
|
return Container(
|
||||||
|
width: 1.sw,
|
||||||
|
padding:
|
||||||
|
EdgeInsets.only(left: 20.w, top: 7.5.h, bottom: 7.5.h, right: 10.w),
|
||||||
|
decoration: BoxDecoration(
|
||||||
|
color: Colors.white,
|
||||||
|
border: isHaveLine!
|
||||||
|
? Border(
|
||||||
|
bottom: BorderSide(
|
||||||
|
color: AppColors.greyLineColor, // 设置边框颜色
|
||||||
|
width: 2.0.h, // 设置边框宽度
|
||||||
|
),
|
||||||
|
)
|
||||||
|
: null,
|
||||||
|
),
|
||||||
|
child: Row(
|
||||||
|
children: <Widget>[
|
||||||
|
Expanded(child: Text(leftTitle!, style: TextStyle(fontSize: 22.sp))),
|
||||||
|
SizedBox(width: 10.w),
|
||||||
|
rightWidget ?? Container(),
|
||||||
|
SizedBox(width: 5.w),
|
||||||
|
],
|
||||||
|
),
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
// 开启考勤
|
// 开启考勤
|
||||||
// CupertinoSwitch _openCheckInSwitch() {
|
// CupertinoSwitch _openCheckInSwitch() {
|
||||||
// return CupertinoSwitch(
|
// return CupertinoSwitch(
|
||||||
|
|||||||
@ -187,7 +187,7 @@ class _DemoModeLockDetailPageState extends State<DemoModeLockDetailPage> {
|
|||||||
width: 6.w,
|
width: 6.w,
|
||||||
),
|
),
|
||||||
Text(
|
Text(
|
||||||
'网关设备'.tr,
|
'网关设备英文'.tr,
|
||||||
style:
|
style:
|
||||||
TextStyle(fontSize: 20.sp, color: AppColors.btnDisableColor),
|
TextStyle(fontSize: 20.sp, color: AppColors.btnDisableColor),
|
||||||
),
|
),
|
||||||
@ -227,8 +227,8 @@ class _DemoModeLockDetailPageState extends State<DemoModeLockDetailPage> {
|
|||||||
|
|
||||||
// 考勤
|
// 考勤
|
||||||
// if (state.keyInfos.value.isAttendance == 1) {
|
// if (state.keyInfos.value.isAttendance == 1) {
|
||||||
showWidgetArr.add(bottomItem('images/main/icon_main_clockingIn.png',
|
showWidgetArr
|
||||||
'考勤'.tr, () {
|
.add(bottomItem('images/main/icon_main_clockingIn.png', '考勤'.tr, () {
|
||||||
// gotoLogin();
|
// gotoLogin();
|
||||||
Get.toNamed(Routers.checkingInListPage,
|
Get.toNamed(Routers.checkingInListPage,
|
||||||
arguments: LockListInfoItemEntity());
|
arguments: LockListInfoItemEntity());
|
||||||
@ -237,34 +237,35 @@ class _DemoModeLockDetailPageState extends State<DemoModeLockDetailPage> {
|
|||||||
|
|
||||||
final List<Widget> defaultWidgetArr = <Widget>[
|
final List<Widget> defaultWidgetArr = <Widget>[
|
||||||
// 电子钥匙
|
// 电子钥匙
|
||||||
bottomItem('images/main/icon_main_electronicKey.png',
|
bottomItem('images/main/icon_main_electronicKey.png', '电子钥匙'.tr, () {
|
||||||
'电子钥匙'.tr, () {
|
|
||||||
// gotoLogin();
|
// gotoLogin();
|
||||||
|
|
||||||
Get.toNamed(Routers.electronicKeyListPage,
|
Get.toNamed(Routers.electronicKeyListPage,
|
||||||
arguments: <String, LockListInfoItemEntity>{'keyInfo': LockListInfoItemEntity()});
|
arguments: <String, LockListInfoItemEntity>{
|
||||||
|
'keyInfo': LockListInfoItemEntity()
|
||||||
|
});
|
||||||
}),
|
}),
|
||||||
|
|
||||||
// 密码
|
// 密码
|
||||||
bottomItem('images/main/icon_main_password.png',
|
bottomItem('images/main/icon_main_password.png', '密码'.tr, () {
|
||||||
'密码'.tr, () {
|
|
||||||
// gotoLogin();
|
// gotoLogin();
|
||||||
|
|
||||||
Get.toNamed(Routers.passwordKeyListPage,
|
Get.toNamed(Routers.passwordKeyListPage,
|
||||||
arguments: <String, LockListInfoItemEntity>{'keyInfo': LockListInfoItemEntity()});
|
arguments: <String, LockListInfoItemEntity>{
|
||||||
|
'keyInfo': LockListInfoItemEntity()
|
||||||
|
});
|
||||||
}),
|
}),
|
||||||
|
|
||||||
// ic卡
|
// ic卡
|
||||||
bottomItem('images/main/icon_main_icCard.png',
|
bottomItem('images/main/icon_main_icCard.png', '卡'.tr, () {
|
||||||
'卡'.tr, () {
|
|
||||||
// gotoLogin();
|
// gotoLogin();
|
||||||
|
|
||||||
Get.toNamed(Routers.cardListPage, arguments: <String, int>{'lockId': 0});
|
Get.toNamed(Routers.cardListPage,
|
||||||
|
arguments: <String, int>{'lockId': 0});
|
||||||
}),
|
}),
|
||||||
|
|
||||||
// 指纹
|
// 指纹
|
||||||
bottomItem('images/main/icon_main_fingerprint.png',
|
bottomItem('images/main/icon_main_fingerprint.png', '指纹'.tr, () {
|
||||||
'指纹'.tr, () {
|
|
||||||
// gotoLogin();
|
// gotoLogin();
|
||||||
|
|
||||||
Get.toNamed(Routers.fingerprintListPage,
|
Get.toNamed(Routers.fingerprintListPage,
|
||||||
@ -272,8 +273,7 @@ class _DemoModeLockDetailPageState extends State<DemoModeLockDetailPage> {
|
|||||||
}),
|
}),
|
||||||
|
|
||||||
// 遥控
|
// 遥控
|
||||||
bottomItem('images/main/icon_main_remoteControl.png',
|
bottomItem('images/main/icon_main_remoteControl.png', '遥控'.tr, gotoLogin),
|
||||||
'遥控'.tr, gotoLogin),
|
|
||||||
];
|
];
|
||||||
showWidgetArr.addAll(defaultWidgetArr);
|
showWidgetArr.addAll(defaultWidgetArr);
|
||||||
|
|
||||||
@ -295,18 +295,21 @@ class _DemoModeLockDetailPageState extends State<DemoModeLockDetailPage> {
|
|||||||
|
|
||||||
final List<Widget> endWiddget = <Widget>[
|
final List<Widget> endWiddget = <Widget>[
|
||||||
// 授权管理员
|
// 授权管理员
|
||||||
bottomItem('images/main/icon_main_authorizedAdmin.png',
|
bottomItem('images/main/icon_main_authorizedAdmin.png', '授权管理员'.tr, () {
|
||||||
'授权管理员'.tr, () {
|
|
||||||
// gotoLogin();
|
// gotoLogin();
|
||||||
|
|
||||||
Get.toNamed(Routers.authorizedAdminListPage,
|
Get.toNamed(Routers.authorizedAdminListPage,
|
||||||
arguments: <String, LockListInfoItemEntity>{'keyInfo': LockListInfoItemEntity()});
|
arguments: <String, LockListInfoItemEntity>{
|
||||||
|
'keyInfo': LockListInfoItemEntity()
|
||||||
|
});
|
||||||
}),
|
}),
|
||||||
// 操作记录
|
// 操作记录
|
||||||
bottomItem('images/main/icon_main_operatingRecord.png', '操作记录'.tr, () {
|
bottomItem('images/main/icon_main_operatingRecord.png', '操作记录'.tr, () {
|
||||||
// gotoLogin();
|
// gotoLogin();
|
||||||
Get.toNamed(Routers.lockOperatingRecordPage,
|
Get.toNamed(Routers.lockOperatingRecordPage,
|
||||||
arguments: <String, LockListInfoItemEntity>{'keyInfo': LockListInfoItemEntity()});
|
arguments: <String, LockListInfoItemEntity>{
|
||||||
|
'keyInfo': LockListInfoItemEntity()
|
||||||
|
});
|
||||||
}),
|
}),
|
||||||
// 视频日志
|
// 视频日志
|
||||||
bottomItem('images/main/icon_lockDetail_videoLog.png', '视频日志'.tr, () {
|
bottomItem('images/main/icon_lockDetail_videoLog.png', '视频日志'.tr, () {
|
||||||
@ -319,9 +322,7 @@ class _DemoModeLockDetailPageState extends State<DemoModeLockDetailPage> {
|
|||||||
Get.toNamed(Routers.msgNotificationPage);
|
Get.toNamed(Routers.msgNotificationPage);
|
||||||
}),
|
}),
|
||||||
// 设置
|
// 设置
|
||||||
bottomItem(
|
bottomItem('images/main/icon_main_set.png', '设置'.tr, () {
|
||||||
'images/main/icon_main_set.png', '设置'.tr,
|
|
||||||
() {
|
|
||||||
Get.toNamed(Routers.demoModeLockSetPage);
|
Get.toNamed(Routers.demoModeLockSetPage);
|
||||||
}),
|
}),
|
||||||
];
|
];
|
||||||
|
|||||||
@ -290,21 +290,25 @@ class _LockListXHJPageState extends State<LockListXHJPage> with RouteAware {
|
|||||||
const Spacer(),
|
const Spacer(),
|
||||||
Column(
|
Column(
|
||||||
children: <Widget>[
|
children: <Widget>[
|
||||||
Row(
|
SizedBox(
|
||||||
children: <Widget>[
|
width: (1.sw - 10.w * 3) / 2 - 48.w - 50.w,
|
||||||
Image.asset(
|
child: Row(
|
||||||
logic.showElectricIcon(keyInfo.electricQuantity!),
|
children: <Widget>[
|
||||||
width: 30.w,
|
Spacer(),
|
||||||
height: 24.w,
|
Image.asset(
|
||||||
),
|
logic.showElectricIcon(keyInfo.electricQuantity!),
|
||||||
SizedBox(width: 2.w),
|
width: 30.w,
|
||||||
Text(
|
height: 24.w,
|
||||||
'${keyInfo.electricQuantity!}%',
|
),
|
||||||
style: TextStyle(
|
SizedBox(width: 2.w),
|
||||||
fontSize: 16.sp,
|
Text(
|
||||||
color: AppColors.darkGrayTextColor),
|
'${keyInfo.electricQuantity!}%',
|
||||||
),
|
style: TextStyle(
|
||||||
],
|
fontSize: 16.sp,
|
||||||
|
color: AppColors.darkGrayTextColor),
|
||||||
|
),
|
||||||
|
],
|
||||||
|
),
|
||||||
),
|
),
|
||||||
SizedBox(
|
SizedBox(
|
||||||
width: (1.sw - 10.w * 3) / 2 - 48.w - 50.w,
|
width: (1.sw - 10.w * 3) / 2 - 48.w - 50.w,
|
||||||
@ -316,6 +320,7 @@ class _LockListXHJPageState extends State<LockListXHJPage> with RouteAware {
|
|||||||
: '普通用户'.tr),
|
: '普通用户'.tr),
|
||||||
maxLines: 1,
|
maxLines: 1,
|
||||||
overflow: TextOverflow.ellipsis,
|
overflow: TextOverflow.ellipsis,
|
||||||
|
textAlign: TextAlign.right,
|
||||||
style: TextStyle(
|
style: TextStyle(
|
||||||
fontSize: 16.sp,
|
fontSize: 16.sp,
|
||||||
color: AppColors.darkGrayTextColor),
|
color: AppColors.darkGrayTextColor),
|
||||||
|
|||||||
@ -3,6 +3,7 @@ import 'package:connectivity_plus/connectivity_plus.dart';
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_screenutil/flutter_screenutil.dart';
|
import 'package:flutter_screenutil/flutter_screenutil.dart';
|
||||||
import 'package:get/get.dart';
|
import 'package:get/get.dart';
|
||||||
|
import 'package:star_lock/app_settings/app_settings.dart';
|
||||||
import 'package:star_lock/main/lockMian/lockMain/lockMain_page.dart';
|
import 'package:star_lock/main/lockMian/lockMain/lockMain_page.dart';
|
||||||
import 'package:star_lock/main/lockMian/lockMain/xhj/lockMain_xhj_state.dart';
|
import 'package:star_lock/main/lockMian/lockMain/xhj/lockMain_xhj_state.dart';
|
||||||
import 'package:star_lock/mine/minePersonInfo/minePersonInfoPage/minePersonInfo_entity.dart';
|
import 'package:star_lock/mine/minePersonInfo/minePersonInfoPage/minePersonInfo_entity.dart';
|
||||||
@ -12,6 +13,8 @@ import 'package:star_lock/tools/baseGetXController.dart';
|
|||||||
import 'package:star_lock/tools/push/xs_jPhush.dart';
|
import 'package:star_lock/tools/push/xs_jPhush.dart';
|
||||||
import 'package:star_lock/tools/storage.dart';
|
import 'package:star_lock/tools/storage.dart';
|
||||||
|
|
||||||
|
import '../../../../tools/store_service.dart';
|
||||||
|
|
||||||
class LockMainXHJLogic extends BaseGetXController {
|
class LockMainXHJLogic extends BaseGetXController {
|
||||||
final LockMainXHJState state = LockMainXHJState();
|
final LockMainXHJState state = LockMainXHJState();
|
||||||
|
|
||||||
@ -26,15 +29,20 @@ class LockMainXHJLogic extends BaseGetXController {
|
|||||||
Future<void> getUserInfoRequest() async {
|
Future<void> getUserInfoRequest() async {
|
||||||
final MinePersonInfoEntity entity = await ApiRepository.to.getUserInfo();
|
final MinePersonInfoEntity entity = await ApiRepository.to.getUserInfo();
|
||||||
if (entity.errorCode!.codeIsSuccessful) {
|
if (entity.errorCode!.codeIsSuccessful) {
|
||||||
final String languageCodeAndCountryCode = entity.data!.lang ?? 'zh-CN';
|
final String languageCodeAndCountryCode = entity.data!.lang!;
|
||||||
if (languageCodeAndCountryCode.contains('-')) {
|
if (languageCodeAndCountryCode.isEmpty) {
|
||||||
|
await StoreService.to.saveLanguageCode('');
|
||||||
|
} else if (languageCodeAndCountryCode.contains('-')) {
|
||||||
final List<String> parts = languageCodeAndCountryCode.split('-');
|
final List<String> parts = languageCodeAndCountryCode.split('-');
|
||||||
final Locale locale = Locale(parts[0], parts[1]);
|
final Locale locale = Locale(parts[0], parts[1]);
|
||||||
Get.updateLocale(locale);
|
await Get.updateLocale(locale);
|
||||||
|
await StoreService.to.saveLanguageCode(locale.toString());
|
||||||
} else if (languageCodeAndCountryCode.contains('_')) {
|
} else if (languageCodeAndCountryCode.contains('_')) {
|
||||||
final List<String> parts = languageCodeAndCountryCode.split('_');
|
final List<String> parts = languageCodeAndCountryCode.split('_');
|
||||||
final Locale locale = Locale(parts[0], parts[1]);
|
final Locale locale = Locale(parts[0], parts[1]);
|
||||||
Get.updateLocale(locale);
|
await Get.updateLocale(locale);
|
||||||
|
AppLog.log('用户信息请求成功 更新locale: $locale');
|
||||||
|
await StoreService.to.saveLanguageCode(locale.toString());
|
||||||
}
|
}
|
||||||
|
|
||||||
Storage.setBool(saveIsVip, entity.data!.isVip == 1);
|
Storage.setBool(saveIsVip, entity.data!.isVip == 1);
|
||||||
|
|||||||
@ -5,6 +5,9 @@ import 'package:star_lock/tools/baseGetXController.dart';
|
|||||||
import '../../main/lockDetail/passwordKey/passwordKeyList/passwordKeyListEntity.dart';
|
import '../../main/lockDetail/passwordKey/passwordKeyList/passwordKeyListEntity.dart';
|
||||||
import '../../network/api_repository.dart';
|
import '../../network/api_repository.dart';
|
||||||
import '../../tools/eventBusEventManage.dart';
|
import '../../tools/eventBusEventManage.dart';
|
||||||
|
import '../../tools/store_service.dart';
|
||||||
|
import '../../translations/app_dept.dart';
|
||||||
|
import '../../translations/current_locale_tool.dart';
|
||||||
import 'mineMultiLanguage_state.dart';
|
import 'mineMultiLanguage_state.dart';
|
||||||
|
|
||||||
class MineMultiLanguageLogic extends GetxController {
|
class MineMultiLanguageLogic extends GetxController {
|
||||||
@ -13,20 +16,21 @@ class MineMultiLanguageLogic extends GetxController {
|
|||||||
//更新个人信息
|
//更新个人信息
|
||||||
Future<void> updateUserLangInfo(Locale l) async {
|
Future<void> updateUserLangInfo(Locale l) async {
|
||||||
// AppLog.log('lanTypeTitle: $lanTypeTitle');
|
// AppLog.log('lanTypeTitle: $lanTypeTitle');
|
||||||
|
String lang = l.toString();
|
||||||
final String lang = l.toLanguageTag();
|
if (state.currentLanguageType.value == LanguageType.system) {
|
||||||
|
lang = '';
|
||||||
|
}
|
||||||
final PasswordKeyListEntity entity =
|
final PasswordKeyListEntity entity =
|
||||||
await ApiRepository.to.updateUserLangInfo(lang: lang);
|
await ApiRepository.to.updateUserLangInfo(lang: lang);
|
||||||
if (entity.errorCode!.codeIsSuccessful) {
|
if (entity.errorCode!.codeIsSuccessful) {
|
||||||
await changeLanguage(l);
|
await changeLanguage(l);
|
||||||
eventBus.fire(ChangeLanguageBlockLastLanguageEvent());
|
eventBus.fire(ChangeLanguageBlockLastLanguageEvent());
|
||||||
print('发送语言变化事件');
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
Future<void> changeLanguage(Locale l) async {
|
Future<void> changeLanguage(Locale l) async {
|
||||||
if (l == Get.locale) return;
|
|
||||||
await Get.updateLocale(l);
|
await Get.updateLocale(l);
|
||||||
state.resetLan();
|
await StoreService.to.saveLanguageCode(
|
||||||
|
CurrentLocaleTool.convertLocale(Get.locale!).toString());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1,8 +1,8 @@
|
|||||||
|
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_screenutil/flutter_screenutil.dart';
|
import 'package:flutter_screenutil/flutter_screenutil.dart';
|
||||||
import 'package:get/get.dart';
|
import 'package:get/get.dart';
|
||||||
import 'package:star_lock/mine/mineMultiLanguage/mineMultiLanguage_state.dart';
|
import 'package:star_lock/mine/mineMultiLanguage/mineMultiLanguage_state.dart';
|
||||||
|
import 'package:star_lock/translations/current_locale_tool.dart';
|
||||||
|
|
||||||
import '../../app_settings/app_colors.dart';
|
import '../../app_settings/app_colors.dart';
|
||||||
import '../../tools/commonItem.dart';
|
import '../../tools/commonItem.dart';
|
||||||
@ -26,35 +26,66 @@ class _MineMultiLanguagePageState extends State<MineMultiLanguagePage> {
|
|||||||
return Scaffold(
|
return Scaffold(
|
||||||
backgroundColor: AppColors.mainBackgroundColor,
|
backgroundColor: AppColors.mainBackgroundColor,
|
||||||
appBar: TitleAppBar(
|
appBar: TitleAppBar(
|
||||||
barTitle: '多语言'.tr,
|
barTitle: '多语言'.tr,
|
||||||
haveBack: true,
|
haveBack: true,
|
||||||
backgroundColor: AppColors.mainColor),
|
backgroundColor: AppColors.mainColor,
|
||||||
body: ListView(
|
actionsList: [
|
||||||
// mainAxisAlignment: MainAxisAlignment.start,
|
TextButton(
|
||||||
// mainAxisSize: MainAxisSize.min,
|
onPressed: () async {
|
||||||
children: _children(),
|
await logic.updateUserLangInfo(state.seletLocale);
|
||||||
)
|
final String lanTypeTitle =
|
||||||
);
|
ExtensionLanguageType.fromLocale(state.seletLocale)
|
||||||
|
.lanTitle;
|
||||||
|
Get.back(result: {'currentLanguage': lanTypeTitle});
|
||||||
|
},
|
||||||
|
child: Text(
|
||||||
|
'保存'.tr,
|
||||||
|
style: TextStyle(
|
||||||
|
color: Colors.white,
|
||||||
|
fontSize: 22.sp,
|
||||||
|
),
|
||||||
|
),
|
||||||
|
),
|
||||||
|
],
|
||||||
|
),
|
||||||
|
body: Obx(() => ListView(
|
||||||
|
// mainAxisAlignment: MainAxisAlignment.start,
|
||||||
|
// mainAxisSize: MainAxisSize.min,
|
||||||
|
children: _children(),
|
||||||
|
)));
|
||||||
}
|
}
|
||||||
|
|
||||||
List<Widget> _children() {
|
List<Widget> _children() {
|
||||||
final List<Widget> l = <Widget>[];
|
final List<Widget> l = <Widget>[];
|
||||||
// l.add(
|
l.add(
|
||||||
// CommonItem(
|
CommonItem(
|
||||||
// leftTitel: '跟随系统',
|
leftTitel: '跟随系统',
|
||||||
// rightTitle: "",
|
rightTitle: '',
|
||||||
// isHaveLine: true,
|
isHaveLine: true,
|
||||||
// isHaveDirection: false,
|
isHaveDirection: false,
|
||||||
// isHaveRightWidget: true,
|
isHaveRightWidget: true,
|
||||||
// rightWidget: Container(),
|
rightWidget: state.currentLanguageType.value == LanguageType.system
|
||||||
// action: () {
|
? Image(
|
||||||
// // logic.changeLanguage(e);
|
image: const AssetImage('images/icon_item_checked.png'),
|
||||||
// }),
|
width: 30.w,
|
||||||
// );
|
height: 30.w,
|
||||||
|
fit: BoxFit.contain,
|
||||||
|
)
|
||||||
|
: Container(),
|
||||||
|
action: () {
|
||||||
|
state.seletLocale =
|
||||||
|
CurrentLocaleTool.convertLocale(Get.deviceLocale!);
|
||||||
|
state.currentLanguageType.value = LanguageType.system;
|
||||||
|
}),
|
||||||
|
);
|
||||||
for (int i = 0; i < state.languages.length; i++) {
|
for (int i = 0; i < state.languages.length; i++) {
|
||||||
final Locale e = state.languages[i];
|
final Locale e = state.languages[i];
|
||||||
final LanguageType lanType = ExtensionLanguageType.fromLocale(e);
|
final LanguageType lanType = ExtensionLanguageType.fromLocale(e);
|
||||||
// AppLog.log('e:$e lanType:$lanType state.currentLanguageType.value:${state.currentLanguageType.value} Get.locale!.languageCode:${Get.locale!.languageCode} Get.locale!.countryCode:${Get.locale!.countryCode}');
|
// AppLog.log('e:$e lanType:$lanType state.currentLanguageType.value:${state.currentLanguageType.value} Get.locale!.languageCode:${Get.locale!.languageCode} Get.locale!.countryCode:${Get.locale!.countryCode}');
|
||||||
|
|
||||||
|
if (state.currentLanguageType.value == lanType) {
|
||||||
|
state.seletLocale = e;
|
||||||
|
}
|
||||||
l.add(
|
l.add(
|
||||||
CommonItem(
|
CommonItem(
|
||||||
leftTitel: lanType.lanTitle,
|
leftTitel: lanType.lanTitle,
|
||||||
@ -62,17 +93,19 @@ class _MineMultiLanguagePageState extends State<MineMultiLanguagePage> {
|
|||||||
isHaveLine: true,
|
isHaveLine: true,
|
||||||
isHaveDirection: false,
|
isHaveDirection: false,
|
||||||
isHaveRightWidget: true,
|
isHaveRightWidget: true,
|
||||||
rightWidget: Obx(() => state.currentLanguageType.value == lanType
|
rightWidget: state.currentLanguageType.value == lanType
|
||||||
? Image(
|
? Image(
|
||||||
image: const AssetImage('images/icon_item_checked.png'),
|
image: const AssetImage('images/icon_item_checked.png'),
|
||||||
width: 30.w,
|
width: 30.w,
|
||||||
height: 30.w,
|
height: 30.w,
|
||||||
fit: BoxFit.contain,
|
fit: BoxFit.contain,
|
||||||
)
|
)
|
||||||
: Container()),
|
: Container(),
|
||||||
action: () {
|
action: () {
|
||||||
logic.updateUserLangInfo(e);
|
// logic.updateUserLangInfo(e);
|
||||||
// eventBus.fire(ChangeLanguageBlockLastLanguageEvent(lanType.lanTitle));
|
state.seletLocale = e;
|
||||||
|
state.currentLanguageType.value =
|
||||||
|
ExtensionLanguageType.fromLocale(state.seletLocale);
|
||||||
}),
|
}),
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|||||||
@ -6,19 +6,16 @@ import '../../tools/store_service.dart';
|
|||||||
import '../../translations/app_dept.dart';
|
import '../../translations/app_dept.dart';
|
||||||
|
|
||||||
class MineMultiLanguageState {
|
class MineMultiLanguageState {
|
||||||
MineMultiLanguageState() {
|
// MineMultiLanguageState() {
|
||||||
resetLan();
|
// resetLan();
|
||||||
}
|
// }
|
||||||
|
|
||||||
List<Locale> get languages {
|
List<Locale> get languages {
|
||||||
return appDept.deptSupportedLocales;
|
return appDept.deptSupportedLocales;
|
||||||
}
|
}
|
||||||
|
|
||||||
var currentLanguageType = ExtensionLanguageType.fromLocale(Get.locale!).obs;
|
Rx<LanguageType> currentLanguageType =
|
||||||
|
ExtensionLanguageType.fromLocale(Get.locale!).obs;
|
||||||
|
|
||||||
Future<void> resetLan() async {
|
late Locale seletLocale;
|
||||||
currentLanguageType.value = ExtensionLanguageType.fromLocale(Get.locale!);
|
|
||||||
// AppLog.log('currentLanguageType.value:${currentLanguageType.value} Get.locale!.languageCode:${Get.locale!.languageCode} languages:$languages');
|
|
||||||
await StoreService.to.saveLanguageCode(Get.locale!.toString());
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1,4 +1,4 @@
|
|||||||
|
import 'package:flutter/cupertino.dart';
|
||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_screenutil/flutter_screenutil.dart';
|
import 'package:flutter_screenutil/flutter_screenutil.dart';
|
||||||
import 'package:flutter_slidable/flutter_slidable.dart';
|
import 'package:flutter_slidable/flutter_slidable.dart';
|
||||||
@ -25,7 +25,8 @@ class LockUserManageListPage extends StatefulWidget {
|
|||||||
|
|
||||||
class _LockUserManageListPageState extends State<LockUserManageListPage> {
|
class _LockUserManageListPageState extends State<LockUserManageListPage> {
|
||||||
final LockUserManageListLogic logic = Get.put(LockUserManageListLogic());
|
final LockUserManageListLogic logic = Get.put(LockUserManageListLogic());
|
||||||
final LockUserManageListState state = Get.find<LockUserManageListLogic>().state;
|
final LockUserManageListState state =
|
||||||
|
Get.find<LockUserManageListLogic>().state;
|
||||||
|
|
||||||
Future<void> getHttpData() async {
|
Future<void> getHttpData() async {
|
||||||
logic.lockUserListRequest().then((LockUserListEntity value) {
|
logic.lockUserListRequest().then((LockUserListEntity value) {
|
||||||
@ -167,8 +168,9 @@ class _LockUserManageListPageState extends State<LockUserManageListPage> {
|
|||||||
arguments: <String, int?>{'uid': itemData.uid});
|
arguments: <String, int?>{'uid': itemData.uid});
|
||||||
},
|
},
|
||||||
child: Container(
|
child: Container(
|
||||||
height: 90.h,
|
// height: 90.h,
|
||||||
color: Colors.white,
|
color: Colors.white,
|
||||||
|
padding: EdgeInsets.only(top: 15.h, bottom: 15.h),
|
||||||
// decoration: BoxDecoration(
|
// decoration: BoxDecoration(
|
||||||
// color: Colors.white,
|
// color: Colors.white,
|
||||||
// borderRadius: BorderRadius.circular(10.w),
|
// borderRadius: BorderRadius.circular(10.w),
|
||||||
@ -192,17 +194,20 @@ class _LockUserManageListPageState extends State<LockUserManageListPage> {
|
|||||||
SizedBox(
|
SizedBox(
|
||||||
width: 20.w,
|
width: 20.w,
|
||||||
),
|
),
|
||||||
Expanded(
|
SizedBox(
|
||||||
|
width: 1.sw - 30.w - 60.w - 20.w - 20.w - 20.w - 12.w,
|
||||||
child: Column(
|
child: Column(
|
||||||
mainAxisAlignment: MainAxisAlignment.center,
|
mainAxisAlignment: MainAxisAlignment.center,
|
||||||
children: <Widget>[
|
children: <Widget>[
|
||||||
Row(
|
Row(
|
||||||
mainAxisAlignment: MainAxisAlignment.start,
|
mainAxisAlignment: MainAxisAlignment.start,
|
||||||
children: <Widget>[
|
children: <Widget>[
|
||||||
Text(
|
Expanded(
|
||||||
itemData.nickname ?? '',
|
child: Text(
|
||||||
style: TextStyle(
|
itemData.nickname ?? '',
|
||||||
fontSize: 24.sp, color: AppColors.blackColor),
|
style: TextStyle(
|
||||||
|
fontSize: 24.sp, color: AppColors.blackColor),
|
||||||
|
),
|
||||||
),
|
),
|
||||||
],
|
],
|
||||||
),
|
),
|
||||||
@ -234,7 +239,8 @@ class _LockUserManageListPageState extends State<LockUserManageListPage> {
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
void showIosTipViewDialog(BuildContext context, LockUserItemData lockUserData) {
|
void showIosTipViewDialog(
|
||||||
|
BuildContext context, LockUserItemData lockUserData) {
|
||||||
showDialog(
|
showDialog(
|
||||||
context: context,
|
context: context,
|
||||||
builder: (BuildContext context) {
|
builder: (BuildContext context) {
|
||||||
|
|||||||
@ -18,14 +18,10 @@ import 'package:umeng_common_sdk/umeng_common_sdk.dart';
|
|||||||
|
|
||||||
import '../../../../network/api_repository.dart';
|
import '../../../../network/api_repository.dart';
|
||||||
import '../../../../tools/baseGetXController.dart';
|
import '../../../../tools/baseGetXController.dart';
|
||||||
import '../../../app_settings/app_settings.dart';
|
|
||||||
import '../../../blue/blue_manage.dart';
|
import '../../../blue/blue_manage.dart';
|
||||||
import '../../../talk/udp/udp_help.dart';
|
import '../../../talk/udp/udp_help.dart';
|
||||||
import '../../../tools/change_language_format.dart';
|
|
||||||
import '../../../tools/dateTool.dart';
|
import '../../../tools/dateTool.dart';
|
||||||
import '../../../tools/eventBusEventManage.dart';
|
|
||||||
import '../../../tools/store_service.dart';
|
import '../../../tools/store_service.dart';
|
||||||
import '../../../translations/app_dept.dart';
|
|
||||||
|
|
||||||
class MineSetLogic extends BaseGetXController {
|
class MineSetLogic extends BaseGetXController {
|
||||||
final MineSetState state = MineSetState();
|
final MineSetState state = MineSetState();
|
||||||
@ -180,46 +176,14 @@ class MineSetLogic extends BaseGetXController {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// 下级界面修改成功后传递数据
|
// // 下级界面修改成功后传递数据
|
||||||
StreamSubscription? _getNumberEvent;
|
// StreamSubscription? _getNumberEvent;
|
||||||
void _initLoadDataAction() {
|
// void _initLoadDataAction() {
|
||||||
// 蓝牙协议通知传输跟蓝牙之外的数据传输类不一样 eventBus
|
// // 蓝牙协议通知传输跟蓝牙之外的数据传输类不一样 eventBus
|
||||||
_getNumberEvent = eventBus
|
// _getNumberEvent = eventBus
|
||||||
.on<ChangeLanguageBlockLastLanguageEvent>()
|
// .on<ChangeLanguageBlockLastLanguageEvent>()
|
||||||
.listen((ChangeLanguageBlockLastLanguageEvent event) {
|
// .listen((ChangeLanguageBlockLastLanguageEvent event) {
|
||||||
state.currentLanguage.value = _getCurrentLanguage();
|
// state.currentLanguage.value = CurrentLocaleTool.getCurrentLocaleString();
|
||||||
});
|
// });
|
||||||
}
|
// }
|
||||||
|
|
||||||
String _getCurrentLanguage() {
|
|
||||||
String? language = StoreService.to.getLanguageCode();
|
|
||||||
AppLog.log('language: $language Get.locale!: ${Get.locale!}');
|
|
||||||
if (language!.isEmpty) {
|
|
||||||
language = ChangeLanguageFormat.convertLocale(Get.locale!).toString();
|
|
||||||
}
|
|
||||||
AppLog.log('language: $language');
|
|
||||||
final String currentLanguage = ExtensionLanguageType.fromLocale(appDept
|
|
||||||
.deptSupportedLocales
|
|
||||||
.where((Locale element) => element.toString() == language)
|
|
||||||
.first)
|
|
||||||
.lanTitle;
|
|
||||||
return currentLanguage;
|
|
||||||
}
|
|
||||||
|
|
||||||
@override
|
|
||||||
void onReady() {
|
|
||||||
super.onReady();
|
|
||||||
|
|
||||||
state.currentLanguage.value = _getCurrentLanguage();
|
|
||||||
|
|
||||||
_initLoadDataAction();
|
|
||||||
getUserInfoRequest();
|
|
||||||
}
|
|
||||||
|
|
||||||
@override
|
|
||||||
void onClose() {
|
|
||||||
super.onClose();
|
|
||||||
|
|
||||||
_getNumberEvent!.cancel();
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -6,7 +6,9 @@ import 'package:flutter/widgets.dart';
|
|||||||
import 'package:flutter_local_notifications/flutter_local_notifications.dart';
|
import 'package:flutter_local_notifications/flutter_local_notifications.dart';
|
||||||
import 'package:flutter_screenutil/flutter_screenutil.dart';
|
import 'package:flutter_screenutil/flutter_screenutil.dart';
|
||||||
import 'package:get/get.dart';
|
import 'package:get/get.dart';
|
||||||
|
import 'package:get/get_state_manager/get_state_manager.dart';
|
||||||
import 'package:permission_handler/permission_handler.dart';
|
import 'package:permission_handler/permission_handler.dart';
|
||||||
|
import 'package:star_lock/app_settings/app_settings.dart';
|
||||||
import 'package:star_lock/flavors.dart';
|
import 'package:star_lock/flavors.dart';
|
||||||
import 'package:star_lock/mine/mineSet/mineSet/mineSet_logic.dart';
|
import 'package:star_lock/mine/mineSet/mineSet/mineSet_logic.dart';
|
||||||
import 'package:star_lock/mine/mineSet/mineSet/mineSet_state.dart';
|
import 'package:star_lock/mine/mineSet/mineSet/mineSet_state.dart';
|
||||||
@ -170,7 +172,6 @@ class _MineSetPageState extends State<MineSetPage>
|
|||||||
|
|
||||||
Widget getListDataView() {
|
Widget getListDataView() {
|
||||||
// 检测系统语言是否为中文
|
// 检测系统语言是否为中文
|
||||||
bool isChinese = LanguageTool.instance.isChinese;
|
|
||||||
return Column(
|
return Column(
|
||||||
children: <Widget>[
|
children: <Widget>[
|
||||||
/* 2024-01-12 会议确定去掉“提示音、触摸开锁” by DaisyWu
|
/* 2024-01-12 会议确定去掉“提示音、触摸开锁” by DaisyWu
|
||||||
@ -214,8 +215,9 @@ class _MineSetPageState extends State<MineSetPage>
|
|||||||
height: 50.h,
|
height: 50.h,
|
||||||
child: Obx(_isPushNotificationSwitch))),
|
child: Obx(_isPushNotificationSwitch))),
|
||||||
// if (F.appFlavor == Flavor.sky)
|
// if (F.appFlavor == Flavor.sky)
|
||||||
if (isChinese)
|
Visibility(
|
||||||
CommonItem(
|
visible: state.currentLanguageName == '简体中文'.tr,
|
||||||
|
child: CommonItem(
|
||||||
leftTitel: '微信公众号推送'.tr,
|
leftTitel: '微信公众号推送'.tr,
|
||||||
rightTitle: '',
|
rightTitle: '',
|
||||||
isHaveLine: true,
|
isHaveLine: true,
|
||||||
@ -225,9 +227,8 @@ class _MineSetPageState extends State<MineSetPage>
|
|||||||
height: 50.h,
|
height: 50.h,
|
||||||
child: Obx(_isWechatPublicAccountPushSwitch),
|
child: Obx(_isWechatPublicAccountPushSwitch),
|
||||||
),
|
),
|
||||||
)
|
),
|
||||||
else
|
),
|
||||||
Container(),
|
|
||||||
SizedBox(height: 10.h),
|
SizedBox(height: 10.h),
|
||||||
CommonItem(
|
CommonItem(
|
||||||
leftTitel: '锁用户管理'.tr,
|
leftTitel: '锁用户管理'.tr,
|
||||||
@ -292,19 +293,22 @@ class _MineSetPageState extends State<MineSetPage>
|
|||||||
SizedBox(
|
SizedBox(
|
||||||
height: 10.h,
|
height: 10.h,
|
||||||
),
|
),
|
||||||
Obx(() => CommonItem(
|
Obx(() {
|
||||||
leftTitel: '多语言'.tr,
|
AppLog.log(
|
||||||
rightTitle: state.currentLanguage.value,
|
'state.currentLanguageName: ${state.currentLanguageName} state.currentLanguage.value: ${state.currentLanguage.value}');
|
||||||
isHaveLine: true,
|
return CommonItem(
|
||||||
isHaveDirection: true,
|
leftTitel: '多语言'.tr,
|
||||||
action: () async {
|
rightTitle: state.currentLanguageName,
|
||||||
// Get.toNamed(Routers.mineMultiLanguagePage);
|
isHaveLine: true,
|
||||||
var result = await Get.toNamed(Routers.mineMultiLanguagePage);
|
isHaveDirection: true,
|
||||||
if (result != null) {
|
action: () async {
|
||||||
result as Map<String, dynamic>;
|
// Get.toNamed(Routers.mineMultiLanguagePage);
|
||||||
state.currentLanguage.value = result['currentLanguage'];
|
await Get.toNamed(Routers.mineMultiLanguagePage)!.then(
|
||||||
}
|
(value) => {
|
||||||
})),
|
state.currentLanguage.value = value['currentLanguage']
|
||||||
|
});
|
||||||
|
});
|
||||||
|
}),
|
||||||
/* 2024-01-12 会议确定去掉“锁屏” by DaisyWu
|
/* 2024-01-12 会议确定去掉“锁屏” by DaisyWu
|
||||||
Obx(() => CommonItem(
|
Obx(() => CommonItem(
|
||||||
leftTitel: TranslationLoader.lanKeys!.lockScreen!.tr,
|
leftTitel: TranslationLoader.lanKeys!.lockScreen!.tr,
|
||||||
|
|||||||
@ -3,6 +3,9 @@ import 'package:get/get.dart';
|
|||||||
import 'package:star_lock/mine/minePersonInfo/minePersonInfoPage/minePersonInfo_entity.dart';
|
import 'package:star_lock/mine/minePersonInfo/minePersonInfoPage/minePersonInfo_entity.dart';
|
||||||
import 'package:star_lock/mine/mineSet/mineSet/userSettingInfoEntity.dart';
|
import 'package:star_lock/mine/mineSet/mineSet/userSettingInfoEntity.dart';
|
||||||
|
|
||||||
|
import '../../../translations/app_dept.dart';
|
||||||
|
import '../../../translations/current_locale_tool.dart';
|
||||||
|
|
||||||
class MineSetState {
|
class MineSetState {
|
||||||
final Rx<UserSettingInfoData> userInfoData = UserSettingInfoData().obs;
|
final Rx<UserSettingInfoData> userInfoData = UserSettingInfoData().obs;
|
||||||
final Rx<UserSettings> userSetting = UserSettings().obs;
|
final Rx<UserSettings> userSetting = UserSettings().obs;
|
||||||
@ -16,7 +19,17 @@ class MineSetState {
|
|||||||
|
|
||||||
RxInt lockScreen = 2.obs; //锁屏
|
RxInt lockScreen = 2.obs; //锁屏
|
||||||
RxInt hideExpiredAccessFlag = 2.obs; //隐藏无效开锁
|
RxInt hideExpiredAccessFlag = 2.obs; //隐藏无效开锁
|
||||||
RxString currentLanguage = ''.obs; //隐藏无效开锁
|
RxString currentLanguage =
|
||||||
|
CurrentLocaleTool.getCurrentLocaleString().obs; // 当前选择语言
|
||||||
|
|
||||||
|
/// 获取翻译后的国家名称
|
||||||
|
String get currentLanguageName {
|
||||||
|
return ExtensionLanguageType.fromLocale(
|
||||||
|
CurrentLocaleTool.getCurrentLocaleWithLanguageCode(
|
||||||
|
currentLanguage.value))
|
||||||
|
.lanTitle;
|
||||||
|
}
|
||||||
|
|
||||||
RxBool isAmazonAlexa = false.obs; //亚马逊Alexa
|
RxBool isAmazonAlexa = false.obs; //亚马逊Alexa
|
||||||
RxBool isGoogleHome = false.obs; //谷歌Home
|
RxBool isGoogleHome = false.obs; //谷歌Home
|
||||||
Rx<AmazonAlexa> amazonAlexaData = AmazonAlexa().obs;
|
Rx<AmazonAlexa> amazonAlexaData = AmazonAlexa().obs;
|
||||||
|
|||||||
@ -2021,7 +2021,7 @@ class ApiRepository {
|
|||||||
|
|
||||||
//获取个人信息
|
//获取个人信息
|
||||||
Future<MinePersonInfoEntity> getUserInfo() async {
|
Future<MinePersonInfoEntity> getUserInfo() async {
|
||||||
final res = await apiProvider.getUserInfo("");
|
final res = await apiProvider.getUserInfo('');
|
||||||
return MinePersonInfoEntity.fromJson(res.body);
|
return MinePersonInfoEntity.fromJson(res.body);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -1,16 +1,12 @@
|
|||||||
import 'dart:async';
|
import 'dart:async';
|
||||||
import 'dart:convert';
|
import 'dart:convert';
|
||||||
import 'dart:ui';
|
|
||||||
import 'package:get/get.dart';
|
import 'package:get/get.dart';
|
||||||
import 'package:get/get_connect/http/src/request/request.dart';
|
import 'package:get/get_connect/http/src/request/request.dart';
|
||||||
import 'package:star_lock/app_settings/app_settings.dart';
|
|
||||||
import 'package:star_lock/login/login/entity/LoginData.dart';
|
import 'package:star_lock/login/login/entity/LoginData.dart';
|
||||||
|
|
||||||
import '../tools/change_language_format.dart';
|
|
||||||
import '../tools/platform_info_services.dart';
|
import '../tools/platform_info_services.dart';
|
||||||
import '../tools/storage.dart';
|
import '../tools/storage.dart';
|
||||||
import '../tools/store_service.dart';
|
import '../translations/current_locale_tool.dart';
|
||||||
import '../translations/app_dept.dart';
|
|
||||||
|
|
||||||
//公共获取UA
|
//公共获取UA
|
||||||
String getUserAgent() {
|
String getUserAgent() {
|
||||||
@ -22,8 +18,8 @@ String getUserAgent() {
|
|||||||
|
|
||||||
FutureOr<Request> requestInterceptor(Request request) async {
|
FutureOr<Request> requestInterceptor(Request request) async {
|
||||||
request.headers['User-Agent'] = getUserAgent();
|
request.headers['User-Agent'] = getUserAgent();
|
||||||
request.headers['Accept-Language'] =
|
request.headers['Accept-Language'] = CurrentLocaleTool
|
||||||
getLanguageCode(); // StoreService.to.getLanguageCode()
|
.getCurrentLocaleString(); // StoreService.to.getLanguageCode()
|
||||||
// request.headers['Content-Type'] = 'application/json';
|
// request.headers['Content-Type'] = 'application/json';
|
||||||
// request.headers['token'] = StoreService.to.userToken!;
|
// request.headers['token'] = StoreService.to.userToken!;
|
||||||
String? xToken = '';
|
String? xToken = '';
|
||||||
@ -34,17 +30,3 @@ FutureOr<Request> requestInterceptor(Request request) async {
|
|||||||
request.headers['Authorization'] = "Bearer ${xToken ?? ''}";
|
request.headers['Authorization'] = "Bearer ${xToken ?? ''}";
|
||||||
return request;
|
return request;
|
||||||
}
|
}
|
||||||
|
|
||||||
String getLanguageCode() {
|
|
||||||
final Locale locale = StoreService.to.getLanguageCode()!.isNotEmpty
|
|
||||||
? appDept.deptSupportedLocales
|
|
||||||
.where((Locale element) =>
|
|
||||||
element.toString() == StoreService.to.getLanguageCode())
|
|
||||||
.first
|
|
||||||
: Get.locale!; // Get.deviceLocale;
|
|
||||||
String languageCode =
|
|
||||||
ChangeLanguageFormat.convertLocale(locale).toLanguageTag();
|
|
||||||
AppLog.log(
|
|
||||||
'languageCode: ${locale.toLanguageTag()} locale: $locale languageCode:$languageCode');
|
|
||||||
return languageCode;
|
|
||||||
}
|
|
||||||
|
|||||||
@ -1,21 +0,0 @@
|
|||||||
import 'dart:ui';
|
|
||||||
|
|
||||||
class ChangeLanguageFormat {
|
|
||||||
static Locale convertLocale(Locale locale) {
|
|
||||||
if (locale.languageCode == 'zh') {
|
|
||||||
if (locale.scriptCode == 'Hans') {
|
|
||||||
// 简体中文
|
|
||||||
return const Locale('zh', 'CN');
|
|
||||||
} else if (locale.scriptCode == 'Hant') {
|
|
||||||
// 繁体中文
|
|
||||||
if (locale.countryCode == 'CN') {
|
|
||||||
return const Locale('zh', 'TW');
|
|
||||||
} else if (locale.countryCode == 'HK') {
|
|
||||||
return const Locale('zh', 'HK');
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
// 默认返回 Locale 的完整格式
|
|
||||||
return locale;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@ -1,7 +1,11 @@
|
|||||||
import 'package:flutter/material.dart';
|
import 'package:flutter/material.dart';
|
||||||
import 'package:flutter_screenutil/flutter_screenutil.dart';
|
import 'package:flutter_screenutil/flutter_screenutil.dart';
|
||||||
|
import 'package:get/get.dart';
|
||||||
import 'package:star_lock/app_settings/app_colors.dart';
|
import 'package:star_lock/app_settings/app_colors.dart';
|
||||||
|
|
||||||
|
import '../translations/app_dept.dart';
|
||||||
|
import '../translations/current_locale_tool.dart';
|
||||||
|
|
||||||
class CommonItem extends StatelessWidget {
|
class CommonItem extends StatelessWidget {
|
||||||
CommonItem(
|
CommonItem(
|
||||||
{required this.leftTitel,
|
{required this.leftTitel,
|
||||||
@ -86,11 +90,27 @@ class CommonItem extends StatelessWidget {
|
|||||||
),
|
),
|
||||||
if (isHaveDirection!) SizedBox(width: 15.w) else Container(),
|
if (isHaveDirection!) SizedBox(width: 15.w) else Container(),
|
||||||
if (isHaveDirection!)
|
if (isHaveDirection!)
|
||||||
Image.asset(
|
if (CurrentLocaleTool.getCurrentLocaleString() ==
|
||||||
'images/icon_right_grey.png',
|
ExtensionLanguageType.fromLanguageType(
|
||||||
width: 12.w,
|
LanguageType.hebrew)
|
||||||
height: 21.w,
|
.toLanguageTag() ||
|
||||||
)
|
CurrentLocaleTool.getCurrentLocaleString() ==
|
||||||
|
ExtensionLanguageType.fromLanguageType(
|
||||||
|
LanguageType.arabic)
|
||||||
|
.toLanguageTag() ||
|
||||||
|
rightTitle == '希伯来语'.tr ||
|
||||||
|
rightTitle == '阿拉伯语'.tr)
|
||||||
|
Image.asset(
|
||||||
|
'images/icon_left_grey.png',
|
||||||
|
width: 21.w,
|
||||||
|
height: 21.w,
|
||||||
|
)
|
||||||
|
else
|
||||||
|
Image.asset(
|
||||||
|
'images/icon_right_grey.png',
|
||||||
|
width: 12.w,
|
||||||
|
height: 21.w,
|
||||||
|
)
|
||||||
else
|
else
|
||||||
SizedBox(width: 10.w),
|
SizedBox(width: 10.w),
|
||||||
if (isHaveDirection!) SizedBox(width: 5.w) else Container(),
|
if (isHaveDirection!) SizedBox(width: 5.w) else Container(),
|
||||||
|
|||||||
@ -14,12 +14,12 @@ class Suffix {
|
|||||||
this.seconds = ''});
|
this.seconds = ''});
|
||||||
|
|
||||||
Suffix.normal() {
|
Suffix.normal() {
|
||||||
years = '年'.tr;
|
years = '年简称'.tr;
|
||||||
month = '月'.tr;
|
month = '月简称'.tr;
|
||||||
days = '日'.tr;
|
days = '日简称'.tr;
|
||||||
hours = '时'.tr;
|
hours = '时简称'.tr;
|
||||||
minutes = '分'.tr;
|
minutes = '分简称'.tr;
|
||||||
seconds = '秒'.tr;
|
seconds = '秒简称'.tr;
|
||||||
}
|
}
|
||||||
late String years;
|
late String years;
|
||||||
late String month;
|
late String month;
|
||||||
|
|||||||
@ -7,8 +7,8 @@ import 'package:star_lock/login/login/entity/LoginData.dart';
|
|||||||
import '../login/login/entity/LoginEntity.dart';
|
import '../login/login/entity/LoginEntity.dart';
|
||||||
|
|
||||||
final box = GetStorage();
|
final box = GetStorage();
|
||||||
class StoreService<T> extends GetxService {
|
|
||||||
|
|
||||||
|
class StoreService<T> extends GetxService {
|
||||||
static StoreService get to => Get.find<StoreService>();
|
static StoreService get to => Get.find<StoreService>();
|
||||||
Future<StoreService<T>> init() async {
|
Future<StoreService<T>> init() async {
|
||||||
await GetStorage.init();
|
await GetStorage.init();
|
||||||
@ -21,11 +21,13 @@ class StoreService<T> extends GetxService {
|
|||||||
bool hasData(String? key) => box.hasData(key!);
|
bool hasData(String? key) => box.hasData(key!);
|
||||||
|
|
||||||
final String _deviceUUID = 'DEVICE_ID';
|
final String _deviceUUID = 'DEVICE_ID';
|
||||||
final String _languageCode = 'LANGUAGE_CODE';
|
final String _language = 'LANGUAGE';
|
||||||
|
|
||||||
String? getDeviceId() => hasData(_deviceUUID) ? read(_deviceUUID).toString(): '';
|
String? getDeviceId() =>
|
||||||
|
hasData(_deviceUUID) ? read(_deviceUUID).toString() : '';
|
||||||
Future saveDeviceId(String uuid) => save(_deviceUUID, uuid);
|
Future saveDeviceId(String uuid) => save(_deviceUUID, uuid);
|
||||||
|
|
||||||
String? getLanguageCode() => hasData(_languageCode) ? read(_languageCode).toString(): '';
|
String? getLanguageCode() =>
|
||||||
Future saveLanguageCode(String code) => save(_languageCode, code);
|
hasData(_language) ? read(_language).toString() : '';
|
||||||
|
Future saveLanguageCode(String code) => save(_language, code);
|
||||||
}
|
}
|
||||||
|
|||||||
@ -103,6 +103,7 @@ AppDept appDept = ExtensionAppDept.fromAppPackageName(AppManager().packageName);
|
|||||||
final List<Locale> appSupportedLocales = appDept.deptSupportedLocales;
|
final List<Locale> appSupportedLocales = appDept.deptSupportedLocales;
|
||||||
|
|
||||||
enum LanguageType {
|
enum LanguageType {
|
||||||
|
system,
|
||||||
chinese,
|
chinese,
|
||||||
english,
|
english,
|
||||||
// 繁体中文(中国台湾)
|
// 繁体中文(中国台湾)
|
||||||
@ -298,121 +299,6 @@ extension ExtensionLanguageType on LanguageType {
|
|||||||
return str;
|
return str;
|
||||||
}
|
}
|
||||||
|
|
||||||
// static LanguageType fromLanguageCode(String code) {
|
|
||||||
// LanguageType languageType = LanguageType.english;
|
|
||||||
// switch(code.toLowerCase()){
|
|
||||||
// case 'en':
|
|
||||||
// languageType = LanguageType.english;
|
|
||||||
// break;
|
|
||||||
// case 'zh':
|
|
||||||
// languageType = LanguageType.chinese;
|
|
||||||
// break;
|
|
||||||
// case 'tw':
|
|
||||||
// languageType = LanguageType.traditionalChinese;
|
|
||||||
// break;
|
|
||||||
// case 'fr':
|
|
||||||
// languageType = LanguageType.french;
|
|
||||||
// break;
|
|
||||||
// case 'ru':
|
|
||||||
// languageType = LanguageType.russian;
|
|
||||||
// break;
|
|
||||||
// case 'de':
|
|
||||||
// languageType = LanguageType.german;
|
|
||||||
// break;
|
|
||||||
// case 'ja':
|
|
||||||
// languageType = LanguageType.japanese;
|
|
||||||
// break;
|
|
||||||
// case 'ko':
|
|
||||||
// languageType = LanguageType.korean;
|
|
||||||
// break;
|
|
||||||
// case 'it':
|
|
||||||
// languageType = LanguageType.italian;
|
|
||||||
// break;
|
|
||||||
// // case 'uk':
|
|
||||||
// // languageType = LanguageType.ukrainian;
|
|
||||||
// // break;
|
|
||||||
// case 'pt':
|
|
||||||
// languageType = LanguageType.portuguese;
|
|
||||||
// break;
|
|
||||||
// case 'es':
|
|
||||||
// languageType = LanguageType.spanish;
|
|
||||||
// break;
|
|
||||||
// case 'ar':
|
|
||||||
// languageType = LanguageType.arabic;
|
|
||||||
// break;
|
|
||||||
// case 'vi':
|
|
||||||
// languageType = LanguageType.vietnamese;
|
|
||||||
// break;
|
|
||||||
// case 'ms':
|
|
||||||
// languageType = LanguageType.malay;
|
|
||||||
// break;
|
|
||||||
// case 'nl':
|
|
||||||
// languageType = LanguageType.dutch;
|
|
||||||
// break;
|
|
||||||
// case 'ro':
|
|
||||||
// languageType = LanguageType.romanian;
|
|
||||||
// break;
|
|
||||||
// case 'lt':
|
|
||||||
// languageType = LanguageType.lithuanian;
|
|
||||||
// break;
|
|
||||||
// case 'sv':
|
|
||||||
// languageType = LanguageType.swedish;
|
|
||||||
// break;
|
|
||||||
// case 'et':
|
|
||||||
// languageType = LanguageType.estonian;
|
|
||||||
// break;
|
|
||||||
// case 'pl':
|
|
||||||
// languageType = LanguageType.polish;
|
|
||||||
// break;
|
|
||||||
// case 'sk':
|
|
||||||
// languageType = LanguageType.slovak;
|
|
||||||
// break;
|
|
||||||
// case 'cs':
|
|
||||||
// languageType = LanguageType.czech;
|
|
||||||
// break;
|
|
||||||
// case 'el':
|
|
||||||
// languageType = LanguageType.greek;
|
|
||||||
// break;
|
|
||||||
// case 'he':
|
|
||||||
// languageType = LanguageType.hebrew;
|
|
||||||
// break;
|
|
||||||
// // case 'sr':
|
|
||||||
// // languageType = LanguageType.serbian;
|
|
||||||
// // break;
|
|
||||||
// case 'tr':
|
|
||||||
// languageType = LanguageType.turkish;
|
|
||||||
// break;
|
|
||||||
// case 'hu':
|
|
||||||
// languageType = LanguageType.hungarian;
|
|
||||||
// break;
|
|
||||||
// case 'bg':
|
|
||||||
// languageType = LanguageType.bulgarian;
|
|
||||||
// break;
|
|
||||||
// case 'kk':
|
|
||||||
// languageType = LanguageType.kazakh;
|
|
||||||
// break;
|
|
||||||
// case 'bn':
|
|
||||||
// languageType = LanguageType.bengali;
|
|
||||||
// break;
|
|
||||||
// case 'hr':
|
|
||||||
// languageType = LanguageType.croatian;
|
|
||||||
// break;
|
|
||||||
// case 'th':
|
|
||||||
// languageType = LanguageType.thai;
|
|
||||||
// break;
|
|
||||||
// case 'id':
|
|
||||||
// languageType = LanguageType.indonesian;
|
|
||||||
// break;
|
|
||||||
// case 'fi':
|
|
||||||
// languageType = LanguageType.finnish;
|
|
||||||
// break;
|
|
||||||
// case 'da':
|
|
||||||
// languageType = LanguageType.danish;
|
|
||||||
// break;
|
|
||||||
// }
|
|
||||||
// return languageType;
|
|
||||||
// }
|
|
||||||
|
|
||||||
static LanguageType fromLocale(Locale locale) {
|
static LanguageType fromLocale(Locale locale) {
|
||||||
LanguageType languageType = LanguageType.english;
|
LanguageType languageType = LanguageType.english;
|
||||||
final String code = locale.languageCode;
|
final String code = locale.languageCode;
|
||||||
@ -529,7 +415,206 @@ extension ExtensionLanguageType on LanguageType {
|
|||||||
case 'uk':
|
case 'uk':
|
||||||
languageType = LanguageType.ukrainian;
|
languageType = LanguageType.ukrainian;
|
||||||
break;
|
break;
|
||||||
|
default:
|
||||||
|
languageType = LanguageType.english;
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
return languageType;
|
return languageType;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static Locale fromLanguageType(LanguageType languageType) {
|
||||||
|
for (Locale locale in appDept.deptSupportedLocales) {
|
||||||
|
switch (languageType) {
|
||||||
|
case LanguageType.english:
|
||||||
|
if (locale.languageCode == 'en' && locale.countryCode == 'US') {
|
||||||
|
return locale;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case LanguageType.chinese:
|
||||||
|
if (locale.languageCode == 'zh' && locale.countryCode == 'CN') {
|
||||||
|
return locale;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case LanguageType.traditionalChineseTW:
|
||||||
|
if (locale.languageCode == 'zh' && locale.countryCode == 'TW') {
|
||||||
|
return locale;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case LanguageType.traditionalChineseHK:
|
||||||
|
if (locale.languageCode == 'zh' && locale.countryCode == 'HK') {
|
||||||
|
return locale;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case LanguageType.french:
|
||||||
|
if (locale.languageCode == 'fr' && locale.countryCode == 'FR') {
|
||||||
|
return locale;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case LanguageType.russian:
|
||||||
|
if (locale.languageCode == 'ru' && locale.countryCode == 'RU') {
|
||||||
|
return locale;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case LanguageType.german:
|
||||||
|
if (locale.languageCode == 'de' && locale.countryCode == 'DE') {
|
||||||
|
return locale;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case LanguageType.japanese:
|
||||||
|
if (locale.languageCode == 'ja' && locale.countryCode == 'JP') {
|
||||||
|
return locale;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case LanguageType.korean:
|
||||||
|
if (locale.languageCode == 'ko' && locale.countryCode == 'KR') {
|
||||||
|
return locale;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case LanguageType.italian:
|
||||||
|
if (locale.languageCode == 'it' && locale.countryCode == 'IT') {
|
||||||
|
return locale;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case LanguageType.portuguese:
|
||||||
|
if (locale.languageCode == 'pt' && locale.countryCode == 'PT') {
|
||||||
|
return locale;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case LanguageType.spanish:
|
||||||
|
if (locale.languageCode == 'es' && locale.countryCode == 'ES') {
|
||||||
|
return locale;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case LanguageType.arabic:
|
||||||
|
if (locale.languageCode == 'ar' && locale.countryCode == 'SA') {
|
||||||
|
return locale;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case LanguageType.vietnamese:
|
||||||
|
if (locale.languageCode == 'vi' && locale.countryCode == 'VN') {
|
||||||
|
return locale;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case LanguageType.malay:
|
||||||
|
if (locale.languageCode == 'ms' && locale.countryCode == 'MY') {
|
||||||
|
return locale;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case LanguageType.dutch:
|
||||||
|
if (locale.languageCode == 'nl' && locale.countryCode == 'NL') {
|
||||||
|
return locale;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case LanguageType.romanian:
|
||||||
|
if (locale.languageCode == 'ro' && locale.countryCode == 'RO') {
|
||||||
|
return locale;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case LanguageType.lithuanian:
|
||||||
|
if (locale.languageCode == 'lt' && locale.countryCode == 'LT') {
|
||||||
|
return locale;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case LanguageType.swedish:
|
||||||
|
if (locale.languageCode == 'sv' && locale.countryCode == 'SE') {
|
||||||
|
return locale;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case LanguageType.estonian:
|
||||||
|
if (locale.languageCode == 'et' && locale.countryCode == 'EE') {
|
||||||
|
return locale;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case LanguageType.polish:
|
||||||
|
if (locale.languageCode == 'pl' && locale.countryCode == 'PL') {
|
||||||
|
return locale;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case LanguageType.slovak:
|
||||||
|
if (locale.languageCode == 'sk' && locale.countryCode == 'SK') {
|
||||||
|
return locale;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case LanguageType.czech:
|
||||||
|
if (locale.languageCode == 'cs' && locale.countryCode == 'CZ') {
|
||||||
|
return locale;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case LanguageType.greek:
|
||||||
|
if (locale.languageCode == 'el' && locale.countryCode == 'GR') {
|
||||||
|
return locale;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case LanguageType.hebrew:
|
||||||
|
if (locale.languageCode == 'he' && locale.countryCode == 'IL') {
|
||||||
|
return locale;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case LanguageType.serbian:
|
||||||
|
if (locale.languageCode == 'sr' && locale.countryCode == 'RS') {
|
||||||
|
return locale;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case LanguageType.turkish:
|
||||||
|
if (locale.languageCode == 'tr' && locale.countryCode == 'TR') {
|
||||||
|
return locale;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case LanguageType.hungarian:
|
||||||
|
if (locale.languageCode == 'hu' && locale.countryCode == 'HU') {
|
||||||
|
return locale;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case LanguageType.bulgarian:
|
||||||
|
if (locale.languageCode == 'bg' && locale.countryCode == 'BG') {
|
||||||
|
return locale;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case LanguageType.kazakh:
|
||||||
|
if (locale.languageCode == 'kk' && locale.countryCode == 'KZ') {
|
||||||
|
return locale;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case LanguageType.bengali:
|
||||||
|
if (locale.languageCode == 'bn' && locale.countryCode == 'BD') {
|
||||||
|
return locale;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case LanguageType.croatian:
|
||||||
|
if (locale.languageCode == 'hr' && locale.countryCode == 'BA') {
|
||||||
|
return locale;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case LanguageType.thai:
|
||||||
|
if (locale.languageCode == 'th' && locale.countryCode == 'TH') {
|
||||||
|
return locale;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case LanguageType.indonesian:
|
||||||
|
if (locale.languageCode == 'id' && locale.countryCode == 'ID') {
|
||||||
|
return locale;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case LanguageType.finnish:
|
||||||
|
if (locale.languageCode == 'fi' && locale.countryCode == 'FI') {
|
||||||
|
return locale;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case LanguageType.danish:
|
||||||
|
if (locale.languageCode == 'da' && locale.countryCode == 'DK') {
|
||||||
|
return locale;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case LanguageType.ukrainian:
|
||||||
|
if (locale.languageCode == 'uk' && locale.countryCode == 'UA') {
|
||||||
|
return locale;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
case LanguageType.system:
|
||||||
|
// TODO: Handle this case.
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return const Locale('en', 'US');
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
79
lib/translations/current_locale_tool.dart
Normal file
79
lib/translations/current_locale_tool.dart
Normal file
@ -0,0 +1,79 @@
|
|||||||
|
import 'package:flutter/material.dart';
|
||||||
|
import 'package:get/get.dart';
|
||||||
|
|
||||||
|
import '../app_settings/app_settings.dart';
|
||||||
|
import '../tools/store_service.dart';
|
||||||
|
import 'app_dept.dart';
|
||||||
|
|
||||||
|
class CurrentLocaleTool {
|
||||||
|
/// 获取当前语言的Locale字符串,没有的话获取系统的
|
||||||
|
static String getCurrentLocaleString() {
|
||||||
|
AppLog.log(
|
||||||
|
'11111StoreService.to.getLanguageCode():${StoreService.to.getLanguageCode()}');
|
||||||
|
final Locale locale = StoreService.to.getLanguageCode()!.isNotEmpty
|
||||||
|
? appDept.deptSupportedLocales
|
||||||
|
.where((Locale element) =>
|
||||||
|
element.languageCode.toString() ==
|
||||||
|
getCurrentLocaleWithLanguageCode(
|
||||||
|
StoreService.to.getLanguageCode()!)
|
||||||
|
.languageCode)
|
||||||
|
.first
|
||||||
|
: Get.deviceLocale!; // Get.deviceLocale;
|
||||||
|
final String languageCode = convertLocale(locale).toString();
|
||||||
|
AppLog.log(
|
||||||
|
'11111locale.toString(): ${locale.toString()} locale: $locale languageCode:$languageCode');
|
||||||
|
return languageCode;
|
||||||
|
}
|
||||||
|
|
||||||
|
/// 获取当前储存的Locale,没有的话获取系统的
|
||||||
|
static Locale getCurrentLocale() {
|
||||||
|
AppLog.log(
|
||||||
|
'222StoreService.to.getLanguageCode():${StoreService.to.getLanguageCode()}');
|
||||||
|
final Locale locale = StoreService.to.getLanguageCode()!.isNotEmpty
|
||||||
|
? appDept.deptSupportedLocales
|
||||||
|
.where((Locale element) =>
|
||||||
|
element.languageCode.toString() ==
|
||||||
|
getCurrentLocaleWithLanguageCode(
|
||||||
|
StoreService.to.getLanguageCode()!)
|
||||||
|
.languageCode)
|
||||||
|
.first
|
||||||
|
: Get.deviceLocale!; // Get.deviceLocale;
|
||||||
|
final Locale getLocale = convertLocale(locale);
|
||||||
|
AppLog.log(
|
||||||
|
'222locale.toString(): ${locale.toString()} locale: $locale getLocale:$getLocale');
|
||||||
|
return getLocale;
|
||||||
|
}
|
||||||
|
|
||||||
|
static Locale getCurrentLocaleWithLanguageCode(String languageCode) {
|
||||||
|
final List<String> parts = languageCode.split('_');
|
||||||
|
final String language = parts[0];
|
||||||
|
final String country = parts.length > 1 ? parts[1] : '';
|
||||||
|
|
||||||
|
for (Locale locale in appDept.deptSupportedLocales) {
|
||||||
|
if (locale.languageCode == language && locale.countryCode == country) {
|
||||||
|
return locale;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return const Locale('en', 'US');
|
||||||
|
}
|
||||||
|
|
||||||
|
/// 国际化中文繁体及中文的转化
|
||||||
|
static Locale convertLocale(Locale locale) {
|
||||||
|
if (locale.languageCode == 'zh') {
|
||||||
|
if (locale.scriptCode == 'Hans') {
|
||||||
|
// 简体中文
|
||||||
|
return const Locale('zh', 'CN');
|
||||||
|
} else if (locale.scriptCode == 'Hant') {
|
||||||
|
// 繁体中文
|
||||||
|
if (locale.countryCode == 'CN') {
|
||||||
|
return const Locale('zh', 'TW');
|
||||||
|
} else if (locale.countryCode == 'HK') {
|
||||||
|
return const Locale('zh', 'HK');
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// 默认返回 Locale 的完整格式
|
||||||
|
return locale;
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -10,36 +10,36 @@ class TranslationMessage extends Translations {
|
|||||||
'fr_FR': TranslationLoader.frDic,
|
'fr_FR': TranslationLoader.frDic,
|
||||||
'ru_RU': TranslationLoader.ruDic,
|
'ru_RU': TranslationLoader.ruDic,
|
||||||
'de_DE': TranslationLoader.deDic,
|
'de_DE': TranslationLoader.deDic,
|
||||||
'ja_JA': TranslationLoader.jaDic,
|
'ja_JP': TranslationLoader.jaDic,
|
||||||
'ko_KO': TranslationLoader.koDic,
|
'ko_KR': TranslationLoader.koDic,
|
||||||
'it_IT': TranslationLoader.itDic,
|
'it_IT': TranslationLoader.itDic,
|
||||||
'uk_UK': TranslationLoader.ukDic,
|
'uk_UA': TranslationLoader.ukDic,
|
||||||
'pt_PT': TranslationLoader.ptDic,
|
'pt_PT': TranslationLoader.ptDic,
|
||||||
'es_ES': TranslationLoader.esDic,
|
'es_ES': TranslationLoader.esDic,
|
||||||
'ar_AR': TranslationLoader.arDic,
|
'ar_SA': TranslationLoader.arDic,
|
||||||
'vi_VI': TranslationLoader.viDic,
|
'vi_VN': TranslationLoader.viDic,
|
||||||
'ms_MS': TranslationLoader.msDic,
|
'ms_MY': TranslationLoader.msDic,
|
||||||
'nl_NL': TranslationLoader.nlDic,
|
'nl_NL': TranslationLoader.nlDic,
|
||||||
'ro_RO': TranslationLoader.roDic,
|
'ro_RO': TranslationLoader.roDic,
|
||||||
'lt_LT': TranslationLoader.ltDic,
|
'lt_LT': TranslationLoader.ltDic,
|
||||||
'sv_SV': TranslationLoader.svDic,
|
'sv_SE': TranslationLoader.svDic,
|
||||||
'et_ET': TranslationLoader.etDic,
|
'et_EE': TranslationLoader.etDic,
|
||||||
'pl_PL': TranslationLoader.plDic,
|
'pl_PL': TranslationLoader.plDic,
|
||||||
'sk_SK': TranslationLoader.skDic,
|
'sk_SK': TranslationLoader.skDic,
|
||||||
'cs_CS': TranslationLoader.csDic,
|
'cs_CZ': TranslationLoader.csDic,
|
||||||
'el_EL': TranslationLoader.elDic,
|
'el_GR': TranslationLoader.elDic,
|
||||||
'he_HE': TranslationLoader.heDic,
|
'he_IL': TranslationLoader.heDic,
|
||||||
'sr_SR': TranslationLoader.srDic,
|
'sr_RS': TranslationLoader.srDic,
|
||||||
'tr_TR': TranslationLoader.trDic,
|
'tr_TR': TranslationLoader.trDic,
|
||||||
'hu_HU': TranslationLoader.huDic,
|
'hu_HU': TranslationLoader.huDic,
|
||||||
'bg_BG': TranslationLoader.bgDic,
|
'bg_BG': TranslationLoader.bgDic,
|
||||||
'kk_KK': TranslationLoader.kkDic,
|
'kk_KZ': TranslationLoader.kkDic,
|
||||||
'bn_BN': TranslationLoader.bnDic,
|
'bn_BD': TranslationLoader.bnDic,
|
||||||
'hr_HR': TranslationLoader.hrDic,
|
'hr_BA': TranslationLoader.hrDic,
|
||||||
'th_TH': TranslationLoader.thDic,
|
'th_TH': TranslationLoader.thDic,
|
||||||
'id_ID': TranslationLoader.idDic,
|
'id_ID': TranslationLoader.idDic,
|
||||||
'fi_FI': TranslationLoader.fiDic,
|
'fi_FI': TranslationLoader.fiDic,
|
||||||
'da_DA': TranslationLoader.daDic,
|
'da_DK': TranslationLoader.daDic,
|
||||||
};
|
};
|
||||||
|
|
||||||
void updateLocal(Locale l) => Get.updateLocale(l);
|
void updateLocal(Locale l) => Get.updateLocale(l);
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user