diff --git a/config.xml b/config.xml
index 4a21478..b657713 100644
--- a/config.xml
+++ b/config.xml
@@ -1,5 +1,5 @@
 <?xml version='1.0' encoding='utf-8'?>
-<widget id="com.dalicitycard.app" version="1.0.4" xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0">
+<widget id="com.dalicitycard.app" version="1.0.5" xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0">
     <name short="大理市民卡">dlapp</name>
     <description>
         A sample Apache Cordova application that responds to the deviceready event.
diff --git a/package.json b/package.json
index 649c3ea..323d848 100644
--- a/package.json
+++ b/package.json
@@ -1,5 +1,5 @@
 {
-  "name": "com.supwisdom.dlapp",
+  "name": "com.dalicitycard.app",
   "displayName": "大理市民卡",
   "version": "1.0.3",
   "description": "A sample Apache Cordova application that responds to the deviceready event.",
diff --git a/platforms/android/CordovaLib/CordovaLib.iml b/platforms/android/CordovaLib/CordovaLib.iml
deleted file mode 100644
index da4f936..0000000
--- a/platforms/android/CordovaLib/CordovaLib.iml
+++ /dev/null
@@ -1,107 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<module external.linked.project.id=":CordovaLib" external.linked.project.path="$MODULE_DIR$" external.root.project.path="$MODULE_DIR$/.." external.system.id="GRADLE" type="JAVA_MODULE" version="4">
-  <component name="FacetManager">
-    <facet type="android-gradle" name="Android-Gradle">
-      <configuration>
-        <option name="GRADLE_PROJECT_PATH" value=":CordovaLib" />
-      </configuration>
-    </facet>
-    <facet type="android" name="Android">
-      <configuration>
-        <option name="SELECTED_BUILD_VARIANT" value="debug" />
-        <option name="ASSEMBLE_TASK_NAME" value="assembleDebug" />
-        <option name="COMPILE_JAVA_TASK_NAME" value="compileDebugSources" />
-        <afterSyncTasks>
-          <task>generateDebugSources</task>
-        </afterSyncTasks>
-        <option name="ALLOW_USER_CONFIGURATION" value="false" />
-        <option name="RES_FOLDERS_RELATIVE_PATH" value="" />
-        <option name="PROJECT_TYPE" value="1" />
-      </configuration>
-    </facet>
-  </component>
-  <component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_1_8">
-    <output url="file://$MODULE_DIR$/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes" />
-    <output-test url="file://$MODULE_DIR$/build/intermediates/javac/debugUnitTest/compileDebugUnitTestJavaWithJavac/classes" />
-    <exclude-output />
-    <content url="file://$MODULE_DIR$">
-      <sourceFolder url="file://$MODULE_DIR$/build/generated/source/apt/debug" isTestSource="false" generated="true" />
-      <sourceFolder url="file://$MODULE_DIR$/build/generated/aidl_source_output_dir/debug/compileDebugAidl/out" isTestSource="false" generated="true" />
-      <sourceFolder url="file://$MODULE_DIR$/build/generated/source/buildConfig/debug" isTestSource="false" generated="true" />
-      <sourceFolder url="file://$MODULE_DIR$/build/generated/renderscript_source_output_dir/debug/compileDebugRenderscript/out" isTestSource="false" generated="true" />
-      <sourceFolder url="file://$MODULE_DIR$/build/generated/res/rs/debug" type="java-resource" />
-      <sourceFolder url="file://$MODULE_DIR$/build/generated/res/resValues/debug" type="java-resource" />
-      <sourceFolder url="file://$MODULE_DIR$/build/generated/source/apt/androidTest/debug" isTestSource="true" generated="true" />
-      <sourceFolder url="file://$MODULE_DIR$/build/generated/aidl_source_output_dir/debugAndroidTest/compileDebugAndroidTestAidl/out" isTestSource="true" generated="true" />
-      <sourceFolder url="file://$MODULE_DIR$/build/generated/source/buildConfig/androidTest/debug" isTestSource="true" generated="true" />
-      <sourceFolder url="file://$MODULE_DIR$/build/generated/renderscript_source_output_dir/debugAndroidTest/compileDebugAndroidTestRenderscript/out" isTestSource="true" generated="true" />
-      <sourceFolder url="file://$MODULE_DIR$/build/generated/res/rs/androidTest/debug" type="java-test-resource" />
-      <sourceFolder url="file://$MODULE_DIR$/build/generated/res/resValues/androidTest/debug" type="java-test-resource" />
-      <sourceFolder url="file://$MODULE_DIR$/build/generated/source/apt/test/debug" isTestSource="true" generated="true" />
-      <sourceFolder url="file://$MODULE_DIR$/src/debug/res" type="java-resource" />
-      <sourceFolder url="file://$MODULE_DIR$/src/debug/resources" type="java-resource" />
-      <sourceFolder url="file://$MODULE_DIR$/src/debug/assets" type="java-resource" />
-      <sourceFolder url="file://$MODULE_DIR$/src/debug/aidl" isTestSource="false" />
-      <sourceFolder url="file://$MODULE_DIR$/src/debug/java" isTestSource="false" />
-      <sourceFolder url="file://$MODULE_DIR$/src/debug/rs" isTestSource="false" />
-      <sourceFolder url="file://$MODULE_DIR$/src/debug/shaders" isTestSource="false" />
-      <sourceFolder url="file://$MODULE_DIR$/src/androidTestDebug/res" type="java-test-resource" />
-      <sourceFolder url="file://$MODULE_DIR$/src/androidTestDebug/resources" type="java-test-resource" />
-      <sourceFolder url="file://$MODULE_DIR$/src/androidTestDebug/assets" type="java-test-resource" />
-      <sourceFolder url="file://$MODULE_DIR$/src/androidTestDebug/aidl" isTestSource="true" />
-      <sourceFolder url="file://$MODULE_DIR$/src/androidTestDebug/java" isTestSource="true" />
-      <sourceFolder url="file://$MODULE_DIR$/src/androidTestDebug/rs" isTestSource="true" />
-      <sourceFolder url="file://$MODULE_DIR$/src/androidTestDebug/shaders" isTestSource="true" />
-      <sourceFolder url="file://$MODULE_DIR$/src/testDebug/res" type="java-test-resource" />
-      <sourceFolder url="file://$MODULE_DIR$/src/testDebug/resources" type="java-test-resource" />
-      <sourceFolder url="file://$MODULE_DIR$/src/testDebug/assets" type="java-test-resource" />
-      <sourceFolder url="file://$MODULE_DIR$/src/testDebug/aidl" isTestSource="true" />
-      <sourceFolder url="file://$MODULE_DIR$/src/testDebug/java" isTestSource="true" />
-      <sourceFolder url="file://$MODULE_DIR$/src/testDebug/rs" isTestSource="true" />
-      <sourceFolder url="file://$MODULE_DIR$/src/testDebug/shaders" isTestSource="true" />
-      <sourceFolder url="file://$MODULE_DIR$/res" type="java-resource" />
-      <sourceFolder url="file://$MODULE_DIR$/src" type="java-resource" />
-      <sourceFolder url="file://$MODULE_DIR$/assets" type="java-resource" />
-      <sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" />
-      <sourceFolder url="file://$MODULE_DIR$/src/main/shaders" isTestSource="false" />
-      <sourceFolder url="file://$MODULE_DIR$/src/androidTest/res" type="java-test-resource" />
-      <sourceFolder url="file://$MODULE_DIR$/src/androidTest/resources" type="java-test-resource" />
-      <sourceFolder url="file://$MODULE_DIR$/src/androidTest/assets" type="java-test-resource" />
-      <sourceFolder url="file://$MODULE_DIR$/src/androidTest/aidl" isTestSource="true" />
-      <sourceFolder url="file://$MODULE_DIR$/src/androidTest/java" isTestSource="true" />
-      <sourceFolder url="file://$MODULE_DIR$/src/androidTest/rs" isTestSource="true" />
-      <sourceFolder url="file://$MODULE_DIR$/src/androidTest/shaders" isTestSource="true" />
-      <sourceFolder url="file://$MODULE_DIR$/src/test/res" type="java-test-resource" />
-      <sourceFolder url="file://$MODULE_DIR$/src/test/resources" type="java-test-resource" />
-      <sourceFolder url="file://$MODULE_DIR$/src/test/assets" type="java-test-resource" />
-      <sourceFolder url="file://$MODULE_DIR$/src/test/aidl" isTestSource="true" />
-      <sourceFolder url="file://$MODULE_DIR$/src/test/java" isTestSource="true" />
-      <sourceFolder url="file://$MODULE_DIR$/src/test/rs" isTestSource="true" />
-      <sourceFolder url="file://$MODULE_DIR$/src/test/shaders" isTestSource="true" />
-      <excludeFolder url="file://$MODULE_DIR$/build/intermediates/aapt_friendly_merged_manifests" />
-      <excludeFolder url="file://$MODULE_DIR$/build/intermediates/annotation_processor_list" />
-      <excludeFolder url="file://$MODULE_DIR$/build/intermediates/check_manifest_result" />
-      <excludeFolder url="file://$MODULE_DIR$/build/intermediates/compile_only_not_namespaced_r_class_jar" />
-      <excludeFolder url="file://$MODULE_DIR$/build/intermediates/incremental" />
-      <excludeFolder url="file://$MODULE_DIR$/build/intermediates/intermediate-jars" />
-      <excludeFolder url="file://$MODULE_DIR$/build/intermediates/javac" />
-      <excludeFolder url="file://$MODULE_DIR$/build/intermediates/jniLibs" />
-      <excludeFolder url="file://$MODULE_DIR$/build/intermediates/library_assets" />
-      <excludeFolder url="file://$MODULE_DIR$/build/intermediates/library_manifest" />
-      <excludeFolder url="file://$MODULE_DIR$/build/intermediates/lint_jar" />
-      <excludeFolder url="file://$MODULE_DIR$/build/intermediates/merged_manifests" />
-      <excludeFolder url="file://$MODULE_DIR$/build/intermediates/packaged_res" />
-      <excludeFolder url="file://$MODULE_DIR$/build/intermediates/public_res" />
-      <excludeFolder url="file://$MODULE_DIR$/build/intermediates/res" />
-      <excludeFolder url="file://$MODULE_DIR$/build/intermediates/rs" />
-      <excludeFolder url="file://$MODULE_DIR$/build/intermediates/shader_assets" />
-      <excludeFolder url="file://$MODULE_DIR$/build/intermediates/shaders" />
-      <excludeFolder url="file://$MODULE_DIR$/build/intermediates/symbols" />
-      <excludeFolder url="file://$MODULE_DIR$/build/intermediates/transforms" />
-      <excludeFolder url="file://$MODULE_DIR$/build/outputs" />
-      <excludeFolder url="file://$MODULE_DIR$/build/tmp" />
-    </content>
-    <orderEntry type="jdk" jdkName="Android API 28 Platform" jdkType="Android SDK" />
-    <orderEntry type="sourceFolder" forTests="false" />
-  </component>
-</module>
\ No newline at end of file
diff --git a/platforms/android/android.iml b/platforms/android/android.iml
deleted file mode 100644
index f0a5ac2..0000000
--- a/platforms/android/android.iml
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<module external.linked.project.id="android" external.linked.project.path="$MODULE_DIR$" external.root.project.path="$MODULE_DIR$" external.system.id="GRADLE" type="JAVA_MODULE" version="4">
-  <component name="FacetManager">
-    <facet type="java-gradle" name="Java-Gradle">
-      <configuration>
-        <option name="BUILD_FOLDER_PATH" value="$MODULE_DIR$/build" />
-        <option name="BUILDABLE" value="false" />
-      </configuration>
-    </facet>
-  </component>
-  <component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_1_8" inherit-compiler-output="true">
-    <exclude-output />
-    <content url="file://$MODULE_DIR$">
-      <excludeFolder url="file://$MODULE_DIR$/.gradle" />
-    </content>
-    <orderEntry type="inheritedJdk" />
-    <orderEntry type="sourceFolder" forTests="false" />
-  </component>
-</module>
\ No newline at end of file
diff --git a/platforms/android/android.json b/platforms/android/android.json
index f654e07..476c50e 100644
--- a/platforms/android/android.json
+++ b/platforms/android/android.json
@@ -93,11 +93,11 @@
               "count": 2
             },
             {
-              "xml": "<permission android:name=\"com.supwisdom.dlapp.permission.JPUSH_MESSAGE\" android:protectionLevel=\"signature\" />",
+              "xml": "<permission android:name=\"com.dalicitycard.app.permission.JPUSH_MESSAGE\" android:protectionLevel=\"signature\" />",
               "count": 1
             },
             {
-              "xml": "<uses-permission android:name=\"com.supwisdom.dlapp.permission.JPUSH_MESSAGE\" />",
+              "xml": "<uses-permission android:name=\"com.dalicitycard.app.permission.JPUSH_MESSAGE\" />",
               "count": 1
             },
             {
@@ -177,7 +177,7 @@
               "count": 1
             },
             {
-              "xml": "<activity android:configChanges=\"orientation|keyboardHidden\" android:exported=\"false\" android:name=\"cn.jpush.android.ui.PushActivity\" android:theme=\"@android:style/Theme.NoTitleBar\"><intent-filter><action android:name=\"cn.jpush.android.ui.PushActivity\" /><category android:name=\"android.intent.category.DEFAULT\" /><category android:name=\"com.supwisdom.dlapp\" /></intent-filter></activity>",
+              "xml": "<activity android:configChanges=\"orientation|keyboardHidden\" android:exported=\"false\" android:name=\"cn.jpush.android.ui.PushActivity\" android:theme=\"@android:style/Theme.NoTitleBar\"><intent-filter><action android:name=\"cn.jpush.android.ui.PushActivity\" /><category android:name=\"android.intent.category.DEFAULT\" /><category android:name=\"com.dalicitycard.app\" /></intent-filter></activity>",
               "count": 1
             },
             {
@@ -185,19 +185,19 @@
               "count": 1
             },
             {
-              "xml": "<provider android:authorities=\"com.supwisdom.dlapp.DataProvider\" android:exported=\"false\" android:name=\"cn.jpush.android.service.DataProvider\" android:process=\":pushcore\" />",
+              "xml": "<provider android:authorities=\"com.dalicitycard.app.DataProvider\" android:exported=\"false\" android:name=\"cn.jpush.android.service.DataProvider\" android:process=\":pushcore\" />",
               "count": 1
             },
             {
-              "xml": "<service android:enabled=\"true\" android:exported=\"true\" android:name=\"cn.jpush.android.service.DaemonService\"><intent-filter><action android:name=\"cn.jpush.android.intent.DaemonService\" /><category android:name=\"com.supwisdom.dlapp\" /></intent-filter></service>",
+              "xml": "<service android:enabled=\"true\" android:exported=\"true\" android:name=\"cn.jpush.android.service.DaemonService\"><intent-filter><action android:name=\"cn.jpush.android.intent.DaemonService\" /><category android:name=\"com.dalicitycard.app\" /></intent-filter></service>",
               "count": 1
             },
             {
-              "xml": "<provider android:authorities=\"com.supwisdom.dlapp.DownloadProvider\" android:exported=\"true\" android:name=\"cn.jpush.android.service.DownloadProvider\" />",
+              "xml": "<provider android:authorities=\"com.dalicitycard.app.DownloadProvider\" android:exported=\"true\" android:name=\"cn.jpush.android.service.DownloadProvider\" />",
               "count": 1
             },
             {
-              "xml": "<receiver android:enabled=\"true\" android:exported=\"false\" android:name=\"cn.jpush.android.service.PushReceiver\"><intent-filter android:priority=\"1000\"><action android:name=\"cn.jpush.android.intent.NOTIFICATION_RECEIVED_PROXY\" /><category android:name=\"com.supwisdom.dlapp\" /></intent-filter><intent-filter><action android:name=\"android.intent.action.USER_PRESENT\" /><action android:name=\"android.net.conn.CONNECTIVITY_CHANGE\" /></intent-filter><intent-filter><action android:name=\"android.intent.action.PACKAGE_ADDED\" /><action android:name=\"android.intent.action.PACKAGE_REMOVED\" /><data android:scheme=\"package\" /></intent-filter></receiver>",
+              "xml": "<receiver android:enabled=\"true\" android:exported=\"false\" android:name=\"cn.jpush.android.service.PushReceiver\"><intent-filter android:priority=\"1000\"><action android:name=\"cn.jpush.android.intent.NOTIFICATION_RECEIVED_PROXY\" /><category android:name=\"com.dalicitycard.app\" /></intent-filter><intent-filter><action android:name=\"android.intent.action.USER_PRESENT\" /><action android:name=\"android.net.conn.CONNECTIVITY_CHANGE\" /></intent-filter><intent-filter><action android:name=\"android.intent.action.PACKAGE_ADDED\" /><action android:name=\"android.intent.action.PACKAGE_REMOVED\" /><data android:scheme=\"package\" /></intent-filter></receiver>",
               "count": 1
             },
             {
@@ -205,11 +205,11 @@
               "count": 1
             },
             {
-              "xml": "<receiver android:name=\"cn.jiguang.cordova.push.JPushEventReceiver\"><intent-filter><action android:name=\"cn.jpush.android.intent.RECEIVE_MESSAGE\" /><category android:name=\"com.supwisdom.dlapp\" /></intent-filter></receiver>",
+              "xml": "<receiver android:name=\"cn.jiguang.cordova.push.JPushEventReceiver\"><intent-filter><action android:name=\"cn.jpush.android.intent.RECEIVE_MESSAGE\" /><category android:name=\"com.dalicitycard.app\" /></intent-filter></receiver>",
               "count": 1
             },
             {
-              "xml": "<activity android:exported=\"true\" android:name=\"cn.jpush.android.service.JNotifyActivity\" android:taskAffinity=\"jpush.custom\" android:theme=\"@android:style/Theme.Translucent.NoTitleBar\"><intent-filter><action android:name=\"cn.jpush.android.intent.JNotifyActivity\" /><category android:name=\"com.supwisdom.dlapp\" /></intent-filter></activity>",
+              "xml": "<activity android:exported=\"true\" android:name=\"cn.jpush.android.service.JNotifyActivity\" android:taskAffinity=\"jpush.custom\" android:theme=\"@android:style/Theme.Translucent.NoTitleBar\"><intent-filter><action android:name=\"cn.jpush.android.intent.JNotifyActivity\" /><category android:name=\"com.dalicitycard.app\" /></intent-filter></activity>",
               "count": 1
             },
             {
@@ -217,7 +217,7 @@
               "count": 1
             },
             {
-              "xml": "<receiver android:enabled=\"true\" android:exported=\"false\" android:name=\"cn.jiguang.cordova.push.JPushReceiver\"><intent-filter><action android:name=\"cn.jpush.android.intent.REGISTRATION\" /><action android:name=\"cn.jpush.android.intent.MESSAGE_RECEIVED\" /><action android:name=\"cn.jpush.android.intent.NOTIFICATION_RECEIVED\" /><action android:name=\"cn.jpush.android.intent.NOTIFICATION_OPENED\" /><action android:name=\"cn.jpush.android.intent.CONNECTION\" /><category android:name=\"com.supwisdom.dlapp\" /></intent-filter></receiver>",
+              "xml": "<receiver android:enabled=\"true\" android:exported=\"false\" android:name=\"cn.jiguang.cordova.push.JPushReceiver\"><intent-filter><action android:name=\"cn.jpush.android.intent.REGISTRATION\" /><action android:name=\"cn.jpush.android.intent.MESSAGE_RECEIVED\" /><action android:name=\"cn.jpush.android.intent.NOTIFICATION_RECEIVED\" /><action android:name=\"cn.jpush.android.intent.NOTIFICATION_OPENED\" /><action android:name=\"cn.jpush.android.intent.CONNECTION\" /><category android:name=\"com.dalicitycard.app\" /></intent-filter></receiver>",
               "count": 1
             },
             {
@@ -255,55 +255,55 @@
   },
   "installed_plugins": {
     "cordova-plugin-add-swift-support": {
-      "PACKAGE_NAME": "com.supwisdom.dlapp"
+      "PACKAGE_NAME": "com.dalicitycard.app"
     },
     "cordova-plugin-fingerprint-aio": {
-      "PACKAGE_NAME": "com.supwisdom.dlapp"
+      "PACKAGE_NAME": "com.dalicitycard.app"
     },
     "cordova-plugin-touch-id": {
-      "PACKAGE_NAME": "com.supwisdom.dlapp"
+      "PACKAGE_NAME": "com.dalicitycard.app"
     },
     "cordova-plugin-whitelist": {
-      "PACKAGE_NAME": "com.supwisdom.dlapp"
+      "PACKAGE_NAME": "com.dalicitycard.app"
     },
     "cordova-plugin-file": {
-      "PACKAGE_NAME": "com.supwisdom.dlapp"
+      "PACKAGE_NAME": "com.dalicitycard.app"
     },
     "cordova-plugin-advanced-http": {
       "OKHTTP_VERSION": "3.10.0",
-      "PACKAGE_NAME": "com.supwisdom.dlapp"
+      "PACKAGE_NAME": "com.dalicitycard.app"
     },
     "cordova-plugin-statusbar": {
-      "PACKAGE_NAME": "com.supwisdom.dlapp"
+      "PACKAGE_NAME": "com.dalicitycard.app"
     },
     "cordova-plugin-disable-ios11-statusbar": {
-      "PACKAGE_NAME": "com.supwisdom.dlapp"
+      "PACKAGE_NAME": "com.dalicitycard.app"
     },
     "cordova-plugin-qrscanner": {
-      "PACKAGE_NAME": "com.supwisdom.dlapp"
+      "PACKAGE_NAME": "com.dalicitycard.app"
     },
     "cordova-plugin-camera": {
-      "PACKAGE_NAME": "com.supwisdom.dlapp"
+      "PACKAGE_NAME": "com.dalicitycard.app"
     },
     "cordova-plugin-inappbrowser": {
-      "PACKAGE_NAME": "com.supwisdom.dlapp"
+      "PACKAGE_NAME": "com.dalicitycard.app"
     },
     "cordova-plugin-device": {
-      "PACKAGE_NAME": "com.supwisdom.dlapp"
+      "PACKAGE_NAME": "com.dalicitycard.app"
     },
     "cordova-plugin-themeablebrowser": {
-      "PACKAGE_NAME": "com.supwisdom.dlapp"
+      "PACKAGE_NAME": "com.dalicitycard.app"
     },
     "cordova-plugin-jcore": {
-      "PACKAGE_NAME": "com.supwisdom.dlapp"
+      "PACKAGE_NAME": "com.dalicitycard.app"
     },
     "jpush-phonegap-plugin": {
       "APP_KEY": "d644d997f2cab0551ff704a3",
       "CHANNEL": "developer-default",
-      "PACKAGE_NAME": "com.supwisdom.dlapp"
+      "PACKAGE_NAME": "com.dalicitycard.app"
     },
     "cordova-plugin-app-version": {
-      "PACKAGE_NAME": "com.supwisdom.dlapp"
+      "PACKAGE_NAME": "com.dalicitycard.app"
     },
     "cordova-plugin-wkwebview-engine": {
       "PACKAGE_NAME": "com.dalicitycard.app"
diff --git a/platforms/android/app/app.iml b/platforms/android/app/app.iml
deleted file mode 100644
index f1a0fda..0000000
--- a/platforms/android/app/app.iml
+++ /dev/null
@@ -1,128 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<module external.linked.project.id=":app" external.linked.project.path="$MODULE_DIR$" external.root.project.path="$MODULE_DIR$/.." external.system.id="GRADLE" type="JAVA_MODULE" version="4">
-  <component name="FacetManager">
-    <facet type="android-gradle" name="Android-Gradle">
-      <configuration>
-        <option name="GRADLE_PROJECT_PATH" value=":app" />
-      </configuration>
-    </facet>
-    <facet type="android" name="Android">
-      <configuration>
-        <option name="SELECTED_BUILD_VARIANT" value="debug" />
-        <option name="ASSEMBLE_TASK_NAME" value="assembleDebug" />
-        <option name="COMPILE_JAVA_TASK_NAME" value="compileDebugSources" />
-        <afterSyncTasks>
-          <task>generateDebugSources</task>
-        </afterSyncTasks>
-        <option name="ALLOW_USER_CONFIGURATION" value="false" />
-        <option name="MANIFEST_FILE_RELATIVE_PATH" value="/src/main/AndroidManifest.xml" />
-        <option name="RES_FOLDER_RELATIVE_PATH" value="/src/main/res" />
-        <option name="RES_FOLDERS_RELATIVE_PATH" value="file://$MODULE_DIR$/src/main/res" />
-        <option name="ASSETS_FOLDER_RELATIVE_PATH" value="/src/main/assets" />
-      </configuration>
-    </facet>
-  </component>
-  <component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_1_8">
-    <output url="file://$MODULE_DIR$/build/intermediates/javac/debug/compileDebugJavaWithJavac/classes" />
-    <output-test url="file://$MODULE_DIR$/build/intermediates/javac/debugUnitTest/compileDebugUnitTestJavaWithJavac/classes" />
-    <exclude-output />
-    <content url="file://$MODULE_DIR$">
-      <sourceFolder url="file://$MODULE_DIR$/build/generated/source/apt/debug" isTestSource="false" generated="true" />
-      <sourceFolder url="file://$MODULE_DIR$/build/generated/aidl_source_output_dir/debug/compileDebugAidl/out" isTestSource="false" generated="true" />
-      <sourceFolder url="file://$MODULE_DIR$/build/generated/source/buildConfig/debug" isTestSource="false" generated="true" />
-      <sourceFolder url="file://$MODULE_DIR$/build/generated/renderscript_source_output_dir/debug/compileDebugRenderscript/out" isTestSource="false" generated="true" />
-      <sourceFolder url="file://$MODULE_DIR$/build/generated/res/rs/debug" type="java-resource" />
-      <sourceFolder url="file://$MODULE_DIR$/build/generated/res/resValues/debug" type="java-resource" />
-      <sourceFolder url="file://$MODULE_DIR$/build/generated/source/apt/androidTest/debug" isTestSource="true" generated="true" />
-      <sourceFolder url="file://$MODULE_DIR$/build/generated/aidl_source_output_dir/debugAndroidTest/compileDebugAndroidTestAidl/out" isTestSource="true" generated="true" />
-      <sourceFolder url="file://$MODULE_DIR$/build/generated/source/buildConfig/androidTest/debug" isTestSource="true" generated="true" />
-      <sourceFolder url="file://$MODULE_DIR$/build/generated/renderscript_source_output_dir/debugAndroidTest/compileDebugAndroidTestRenderscript/out" isTestSource="true" generated="true" />
-      <sourceFolder url="file://$MODULE_DIR$/build/generated/res/rs/androidTest/debug" type="java-test-resource" />
-      <sourceFolder url="file://$MODULE_DIR$/build/generated/res/resValues/androidTest/debug" type="java-test-resource" />
-      <sourceFolder url="file://$MODULE_DIR$/build/generated/source/apt/test/debug" isTestSource="true" generated="true" />
-      <sourceFolder url="file://$MODULE_DIR$/src/debug/res" type="java-resource" />
-      <sourceFolder url="file://$MODULE_DIR$/src/debug/resources" type="java-resource" />
-      <sourceFolder url="file://$MODULE_DIR$/src/debug/assets" type="java-resource" />
-      <sourceFolder url="file://$MODULE_DIR$/src/debug/aidl" isTestSource="false" />
-      <sourceFolder url="file://$MODULE_DIR$/src/debug/java" isTestSource="false" />
-      <sourceFolder url="file://$MODULE_DIR$/src/debug/rs" isTestSource="false" />
-      <sourceFolder url="file://$MODULE_DIR$/src/debug/shaders" isTestSource="false" />
-      <sourceFolder url="file://$MODULE_DIR$/src/androidTestDebug/res" type="java-test-resource" />
-      <sourceFolder url="file://$MODULE_DIR$/src/androidTestDebug/resources" type="java-test-resource" />
-      <sourceFolder url="file://$MODULE_DIR$/src/androidTestDebug/assets" type="java-test-resource" />
-      <sourceFolder url="file://$MODULE_DIR$/src/androidTestDebug/aidl" isTestSource="true" />
-      <sourceFolder url="file://$MODULE_DIR$/src/androidTestDebug/java" isTestSource="true" />
-      <sourceFolder url="file://$MODULE_DIR$/src/androidTestDebug/rs" isTestSource="true" />
-      <sourceFolder url="file://$MODULE_DIR$/src/androidTestDebug/shaders" isTestSource="true" />
-      <sourceFolder url="file://$MODULE_DIR$/src/testDebug/res" type="java-test-resource" />
-      <sourceFolder url="file://$MODULE_DIR$/src/testDebug/resources" type="java-test-resource" />
-      <sourceFolder url="file://$MODULE_DIR$/src/testDebug/assets" type="java-test-resource" />
-      <sourceFolder url="file://$MODULE_DIR$/src/testDebug/aidl" isTestSource="true" />
-      <sourceFolder url="file://$MODULE_DIR$/src/testDebug/java" isTestSource="true" />
-      <sourceFolder url="file://$MODULE_DIR$/src/testDebug/rs" isTestSource="true" />
-      <sourceFolder url="file://$MODULE_DIR$/src/testDebug/shaders" isTestSource="true" />
-      <sourceFolder url="file://$MODULE_DIR$/src/main/res" type="java-resource" />
-      <sourceFolder url="file://$MODULE_DIR$/src/main/resources" type="java-resource" />
-      <sourceFolder url="file://$MODULE_DIR$/src/main/assets" type="java-resource" />
-      <sourceFolder url="file://$MODULE_DIR$/src/main/aidl" isTestSource="false" />
-      <sourceFolder url="file://$MODULE_DIR$/src/main/java" isTestSource="false" />
-      <sourceFolder url="file://$MODULE_DIR$/src/main/rs" isTestSource="false" />
-      <sourceFolder url="file://$MODULE_DIR$/src/main/shaders" isTestSource="false" />
-      <sourceFolder url="file://$MODULE_DIR$/src/test/res" type="java-test-resource" />
-      <sourceFolder url="file://$MODULE_DIR$/src/test/resources" type="java-test-resource" />
-      <sourceFolder url="file://$MODULE_DIR$/src/test/assets" type="java-test-resource" />
-      <sourceFolder url="file://$MODULE_DIR$/src/test/aidl" isTestSource="true" />
-      <sourceFolder url="file://$MODULE_DIR$/src/test/java" isTestSource="true" />
-      <sourceFolder url="file://$MODULE_DIR$/src/test/rs" isTestSource="true" />
-      <sourceFolder url="file://$MODULE_DIR$/src/test/shaders" isTestSource="true" />
-      <sourceFolder url="file://$MODULE_DIR$/src/androidTest/res" type="java-test-resource" />
-      <sourceFolder url="file://$MODULE_DIR$/src/androidTest/resources" type="java-test-resource" />
-      <sourceFolder url="file://$MODULE_DIR$/src/androidTest/assets" type="java-test-resource" />
-      <sourceFolder url="file://$MODULE_DIR$/src/androidTest/aidl" isTestSource="true" />
-      <sourceFolder url="file://$MODULE_DIR$/src/androidTest/java" isTestSource="true" />
-      <sourceFolder url="file://$MODULE_DIR$/src/androidTest/rs" isTestSource="true" />
-      <sourceFolder url="file://$MODULE_DIR$/src/androidTest/shaders" isTestSource="true" />
-      <excludeFolder url="file://$MODULE_DIR$/build/.DS_Store" />
-      <excludeFolder url="file://$MODULE_DIR$/build/intermediates/annotation_processor_list" />
-      <excludeFolder url="file://$MODULE_DIR$/build/intermediates/apk_list" />
-      <excludeFolder url="file://$MODULE_DIR$/build/intermediates/blame" />
-      <excludeFolder url="file://$MODULE_DIR$/build/intermediates/bundle_manifest" />
-      <excludeFolder url="file://$MODULE_DIR$/build/intermediates/check_manifest_result" />
-      <excludeFolder url="file://$MODULE_DIR$/build/intermediates/compatible_screen_manifest" />
-      <excludeFolder url="file://$MODULE_DIR$/build/intermediates/incremental" />
-      <excludeFolder url="file://$MODULE_DIR$/build/intermediates/instant_app_manifest" />
-      <excludeFolder url="file://$MODULE_DIR$/build/intermediates/instant_run_merged_manifests" />
-      <excludeFolder url="file://$MODULE_DIR$/build/intermediates/javac" />
-      <excludeFolder url="file://$MODULE_DIR$/build/intermediates/jniLibs" />
-      <excludeFolder url="file://$MODULE_DIR$/build/intermediates/lint_jar" />
-      <excludeFolder url="file://$MODULE_DIR$/build/intermediates/merged_assets" />
-      <excludeFolder url="file://$MODULE_DIR$/build/intermediates/merged_manifests" />
-      <excludeFolder url="file://$MODULE_DIR$/build/intermediates/metadata_feature_manifest" />
-      <excludeFolder url="file://$MODULE_DIR$/build/intermediates/prebuild" />
-      <excludeFolder url="file://$MODULE_DIR$/build/intermediates/processed_res" />
-      <excludeFolder url="file://$MODULE_DIR$/build/intermediates/res" />
-      <excludeFolder url="file://$MODULE_DIR$/build/intermediates/rs" />
-      <excludeFolder url="file://$MODULE_DIR$/build/intermediates/shader_assets" />
-      <excludeFolder url="file://$MODULE_DIR$/build/intermediates/shaders" />
-      <excludeFolder url="file://$MODULE_DIR$/build/intermediates/signing_config" />
-      <excludeFolder url="file://$MODULE_DIR$/build/intermediates/symbols" />
-      <excludeFolder url="file://$MODULE_DIR$/build/intermediates/transforms" />
-      <excludeFolder url="file://$MODULE_DIR$/build/outputs" />
-      <excludeFolder url="file://$MODULE_DIR$/build/reports" />
-      <excludeFolder url="file://$MODULE_DIR$/build/tmp" />
-    </content>
-    <orderEntry type="jdk" jdkName="Android API 24 Platform" jdkType="Android SDK" />
-    <orderEntry type="sourceFolder" forTests="false" />
-    <orderEntry type="library" name="Gradle: com.android.support:support-annotations:24.1.1@jar" level="project" />
-    <orderEntry type="library" name="Gradle: com.squareup.okio:okio:1.14.0@jar" level="project" />
-    <orderEntry type="library" name="Gradle: com.google.zxing:core:3.2.1@jar" level="project" />
-    <orderEntry type="library" name="Gradle: __local_aars__:/Users/shuwei/works2/cordova/dlapp/platforms/android/app/libs/jcore-android-2.1.2.jar:unspecified@jar" level="project" />
-    <orderEntry type="library" name="Gradle: __local_aars__:/Users/shuwei/works2/cordova/dlapp/platforms/android/app/libs/jpush-android-3.3.4.jar:unspecified@jar" level="project" />
-    <orderEntry type="library" name="Gradle: com.journeyapps:zxing-android-embedded-3.3.0" level="project" />
-    <orderEntry type="library" name="Gradle: com.squareup.okhttp3:okhttp-urlconnection:3.10.0@jar" level="project" />
-    <orderEntry type="library" name="Gradle: com.android.support:appcompat-v7-23.1.0" level="project" />
-    <orderEntry type="library" name="Gradle: com.android.support:support-v4-24.1.1" level="project" />
-    <orderEntry type="library" name="Gradle: com.squareup.okhttp3:okhttp:3.10.0@jar" level="project" />
-    <orderEntry type="module" module-name="CordovaLib" />
-  </component>
-</module>
\ No newline at end of file
diff --git a/platforms/android/app/build.gradle b/platforms/android/app/build.gradle
index 26cd3f9..3a20b4b 100644
--- a/platforms/android/app/build.gradle
+++ b/platforms/android/app/build.gradle
@@ -169,7 +169,7 @@
         if (cdvMinSdkVersion != null) {
             minSdkVersion cdvMinSdkVersion
         }
-        minSdkVersion 19
+        minSdkVersion 24
         ndk {
             abiFilters "armeabi"
         }
@@ -184,7 +184,47 @@
     // Android Manifest by 10 and add a number for each architecture.
     // If you are not using Crosswalk or SQLite, you can
     // ignore this chunk of code, and your version codes will be respected.
+    if (Boolean.valueOf(cdvBuildMultipleApks)) {
+        flavorDimensions "default"
 
+        productFlavors {
+            armeabi {
+                versionCode defaultConfig.versionCode * 10 + 1
+                ndk {
+                    abiFilters = ["armeabi"]
+                }
+            }
+            armv7 {
+                versionCode defaultConfig.versionCode * 10 + 2
+                ndk {
+                    abiFilters = ["armeabi-v7a"]
+                }
+            }
+            arm64 {
+                versionCode defaultConfig.versionCode * 10 + 3
+                ndk {
+                    abiFilters = ["arm64-v8a"]
+                }
+            }
+            x86 {
+                versionCode defaultConfig.versionCode * 10 + 4
+                ndk {
+                    abiFilters = ["x86"]
+                }
+            }
+            x86_64 {
+                versionCode defaultConfig.versionCode * 10 + 5
+                ndk {
+                    abiFilters = ["x86_64"]
+                }
+            }
+        }
+    } else if (Boolean.valueOf(cdvVersionCodeForceAbiDigit)) {
+        // This provides compatibility to the default logic for versionCode before cordova-android 5.2.0
+        defaultConfig {
+            versionCode defaultConfig.versionCode * 10
+        }
+    }
     compileOptions {
         sourceCompatibility JavaVersion.VERSION_1_8
         targetCompatibility JavaVersion.VERSION_1_8
diff --git a/platforms/android/app/release/app-release.apk b/platforms/android/app/release/app-release.apk
index 8664e26..9058c6b 100644
--- a/platforms/android/app/release/app-release.apk
+++ b/platforms/android/app/release/app-release.apk
Binary files differ
diff --git a/platforms/android/app/src/main/AndroidManifest.xml b/platforms/android/app/src/main/AndroidManifest.xml
index 823d9b5..107ebba 100644
--- a/platforms/android/app/src/main/AndroidManifest.xml
+++ b/platforms/android/app/src/main/AndroidManifest.xml
@@ -16,7 +16,7 @@
             <intent-filter>
                 <action android:name="cn.jpush.android.ui.PushActivity" />
                 <category android:name="android.intent.category.DEFAULT" />
-                <category android:name="com.supwisdom.dlapp" />
+                <category android:name="com.dalicitycard.app" />
             </intent-filter>
         </activity>
         <service android:exported="false" android:name="cn.jpush.android.service.PushService" android:process=":pushcore">
@@ -27,18 +27,18 @@
                 <action android:name="cn.jpush.android.intent.PUSH_TIME" />
             </intent-filter>
         </service>
-        <provider android:authorities="com.supwisdom.dlapp.DataProvider" android:exported="false" android:name="cn.jpush.android.service.DataProvider" android:process=":pushcore" />
+        <provider android:authorities="com.dalicitycard.app.DataProvider" android:exported="false" android:name="cn.jpush.android.service.DataProvider" android:process=":pushcore" />
         <service android:enabled="true" android:exported="true" android:name="cn.jpush.android.service.DaemonService">
             <intent-filter>
                 <action android:name="cn.jpush.android.intent.DaemonService" />
-                <category android:name="com.supwisdom.dlapp" />
+                <category android:name="com.dalicitycard.app" />
             </intent-filter>
         </service>
-        <provider android:authorities="com.supwisdom.dlapp.DownloadProvider" android:exported="true" android:name="cn.jpush.android.service.DownloadProvider" />
+        <provider android:authorities="com.dalicitycard.app.DownloadProvider" android:exported="true" android:name="cn.jpush.android.service.DownloadProvider" />
         <receiver android:enabled="true" android:exported="false" android:name="cn.jpush.android.service.PushReceiver">
             <intent-filter android:priority="1000">
                 <action android:name="cn.jpush.android.intent.NOTIFICATION_RECEIVED_PROXY" />
-                <category android:name="com.supwisdom.dlapp" />
+                <category android:name="com.dalicitycard.app" />
             </intent-filter>
             <intent-filter>
                 <action android:name="android.intent.action.USER_PRESENT" />
@@ -54,13 +54,14 @@
         <receiver android:name="cn.jiguang.cordova.push.JPushEventReceiver">
             <intent-filter>
                 <action android:name="cn.jpush.android.intent.RECEIVE_MESSAGE" />
-                <category android:name="com.supwisdom.dlapp" />
+                <category android:name="com.dalicitycard.app" />
             </intent-filter>
         </receiver>
-        <activity android:exported="true" android:name="cn.jpush.android.service.JNotifyActivity" android:taskAffinity="jpush.custom" android:theme="@android:style/Theme.Translucent.NoTitleBar">
+        <activity android:exported="true" android:name="cn.jpush.android.service.JNotifyActivity"
+                  android:taskAffinity="jpush.custom" android:theme="@android:style/Theme.Translucent.NoTitleBar">
             <intent-filter>
                 <action android:name="cn.jpush.android.intent.JNotifyActivity" />
-                <category android:name="com.supwisdom.dlapp" />
+                <category android:name="com.dalicitycard.app" />
             </intent-filter>
         </activity>
         <service android:name="cn.jiguang.cordova.push.PushService" android:process=":pushcore">
@@ -75,7 +76,7 @@
                 <action android:name="cn.jpush.android.intent.NOTIFICATION_RECEIVED" />
                 <action android:name="cn.jpush.android.intent.NOTIFICATION_OPENED" />
                 <action android:name="cn.jpush.android.intent.CONNECTION" />
-                <category android:name="com.supwisdom.dlapp" />
+                <category android:name="com.dalicitycard.app" />
             </intent-filter>
         </receiver>
         <meta-data android:name="JPUSH_CHANNEL" android:value="developer-default" />
@@ -87,8 +88,8 @@
     <uses-feature android:name="android.hardware.camera" android:required="false" />
     <uses-feature android:name="android.hardware.camera.front" android:required="false" />
     <uses-permission android:name="android.permission.INTERNET" />
-    <permission android:name="com.supwisdom.dlapp.permission.JPUSH_MESSAGE" android:protectionLevel="signature" />
-    <uses-permission android:name="com.supwisdom.dlapp.permission.JPUSH_MESSAGE" />
+    <permission android:name="com.dalicitycard.app.permission.JPUSH_MESSAGE" android:protectionLevel="signature" />
+    <uses-permission android:name="com.dalicitycard.app.permission.JPUSH_MESSAGE" />
     <uses-permission android:name="android.permission.RECEIVE_USER_PRESENT" />
     <uses-permission android:name="android.permission.READ_PHONE_STATE" />
     <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
diff --git a/platforms/android/app/src/main/assets/www/js/main.js b/platforms/android/app/src/main/assets/www/js/main.js
index da93b6c..8d7e506 100644
--- a/platforms/android/app/src/main/assets/www/js/main.js
+++ b/platforms/android/app/src/main/assets/www/js/main.js
@@ -44,7 +44,17 @@
           }
          });
         var uid = window.localStorage.getItem("uid");
-
+        console.log(uid);
+        window.JPush.setAlias({ sequence: 1, alias: uid },
+          (result) => {
+            var sequence = result.sequence
+            var alias = result.alias
+            console.log(alias)
+          }, (error) => {
+            console.log(JSON.stringify(error))
+            var sequence = error.sequence
+            var errorCode = error.code
+          })
     },
 
     onDeviceReady: function() {
diff --git a/platforms/android/build.gradle b/platforms/android/build.gradle
index a3473f2..bea8a74 100644
--- a/platforms/android/build.gradle
+++ b/platforms/android/build.gradle
@@ -29,8 +29,6 @@
         // in the individual module build.gradle files
 
         classpath 'com.android.tools.build:gradle:3.3.0'
-
-
     }
 }
 
diff --git a/platforms/ios/dlapp.xcarchive/Info.plist b/platforms/ios/dlapp.xcarchive/Info.plist
index f54150d..6a13a29 100644
--- a/platforms/ios/dlapp.xcarchive/Info.plist
+++ b/platforms/ios/dlapp.xcarchive/Info.plist
@@ -9,9 +9,9 @@
 		<key>CFBundleIdentifier</key>
 		<string>com.dalicitycard.app</string>
 		<key>CFBundleShortVersionString</key>
-		<string>1.0.4</string>
+		<string>1.0.5</string>
 		<key>CFBundleVersion</key>
-		<string>1.0.4</string>
+		<string>1.0.5</string>
 		<key>SigningIdentity</key>
 		<string>iPhone Developer: chuan xu (8FWH8QKULT)</string>
 		<key>Team</key>
@@ -20,7 +20,7 @@
 	<key>ArchiveVersion</key>
 	<integer>2</integer>
 	<key>CreationDate</key>
-	<date>2019-09-25T06:49:04Z</date>
+	<date>2019-09-26T03:33:22Z</date>
 	<key>Name</key>
 	<string>dlapp</string>
 	<key>SchemeName</key>
diff --git a/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/Assets.car b/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/Assets.car
index 694b01d..439ef35 100644
--- a/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/Assets.car
+++ b/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/Assets.car
Binary files differ
diff --git a/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/Frameworks/libswiftAVFoundation.dylib b/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/Frameworks/libswiftAVFoundation.dylib
index 24c2de2..99f1d2f 100755
--- a/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/Frameworks/libswiftAVFoundation.dylib
+++ b/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/Frameworks/libswiftAVFoundation.dylib
Binary files differ
diff --git a/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/Frameworks/libswiftCore.dylib b/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/Frameworks/libswiftCore.dylib
index e2b92ee..a96530b 100755
--- a/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/Frameworks/libswiftCore.dylib
+++ b/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/Frameworks/libswiftCore.dylib
Binary files differ
diff --git a/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/Frameworks/libswiftCoreAudio.dylib b/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/Frameworks/libswiftCoreAudio.dylib
index 4a8696c..45c19f9 100755
--- a/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/Frameworks/libswiftCoreAudio.dylib
+++ b/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/Frameworks/libswiftCoreAudio.dylib
Binary files differ
diff --git a/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/Frameworks/libswiftCoreFoundation.dylib b/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/Frameworks/libswiftCoreFoundation.dylib
index 6c6db60..0810743 100755
--- a/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/Frameworks/libswiftCoreFoundation.dylib
+++ b/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/Frameworks/libswiftCoreFoundation.dylib
Binary files differ
diff --git a/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/Frameworks/libswiftCoreGraphics.dylib b/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/Frameworks/libswiftCoreGraphics.dylib
index dbdda11..3ca564c 100755
--- a/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/Frameworks/libswiftCoreGraphics.dylib
+++ b/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/Frameworks/libswiftCoreGraphics.dylib
Binary files differ
diff --git a/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/Frameworks/libswiftCoreImage.dylib b/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/Frameworks/libswiftCoreImage.dylib
index a270cb7..d661792 100755
--- a/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/Frameworks/libswiftCoreImage.dylib
+++ b/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/Frameworks/libswiftCoreImage.dylib
Binary files differ
diff --git a/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/Frameworks/libswiftCoreMedia.dylib b/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/Frameworks/libswiftCoreMedia.dylib
index d69a005..118a9bf 100755
--- a/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/Frameworks/libswiftCoreMedia.dylib
+++ b/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/Frameworks/libswiftCoreMedia.dylib
Binary files differ
diff --git a/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/Frameworks/libswiftDarwin.dylib b/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/Frameworks/libswiftDarwin.dylib
index 6757d90..760620c 100755
--- a/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/Frameworks/libswiftDarwin.dylib
+++ b/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/Frameworks/libswiftDarwin.dylib
Binary files differ
diff --git a/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/Frameworks/libswiftDispatch.dylib b/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/Frameworks/libswiftDispatch.dylib
index 589e184..033731f 100755
--- a/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/Frameworks/libswiftDispatch.dylib
+++ b/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/Frameworks/libswiftDispatch.dylib
Binary files differ
diff --git a/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/Frameworks/libswiftFoundation.dylib b/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/Frameworks/libswiftFoundation.dylib
index 637c518..fc192b8 100755
--- a/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/Frameworks/libswiftFoundation.dylib
+++ b/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/Frameworks/libswiftFoundation.dylib
Binary files differ
diff --git a/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/Frameworks/libswiftMetal.dylib b/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/Frameworks/libswiftMetal.dylib
index b563931..56eb771 100755
--- a/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/Frameworks/libswiftMetal.dylib
+++ b/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/Frameworks/libswiftMetal.dylib
Binary files differ
diff --git a/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/Frameworks/libswiftObjectiveC.dylib b/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/Frameworks/libswiftObjectiveC.dylib
index c260f2c..296e9d2 100755
--- a/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/Frameworks/libswiftObjectiveC.dylib
+++ b/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/Frameworks/libswiftObjectiveC.dylib
Binary files differ
diff --git a/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/Frameworks/libswiftQuartzCore.dylib b/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/Frameworks/libswiftQuartzCore.dylib
index ca49fd4..b3c8e50 100755
--- a/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/Frameworks/libswiftQuartzCore.dylib
+++ b/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/Frameworks/libswiftQuartzCore.dylib
Binary files differ
diff --git a/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/Frameworks/libswiftSwiftOnoneSupport.dylib b/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/Frameworks/libswiftSwiftOnoneSupport.dylib
index 4ca3c94..262e625 100755
--- a/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/Frameworks/libswiftSwiftOnoneSupport.dylib
+++ b/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/Frameworks/libswiftSwiftOnoneSupport.dylib
Binary files differ
diff --git a/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/Frameworks/libswiftUIKit.dylib b/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/Frameworks/libswiftUIKit.dylib
index 44d9a82..6ec56c3 100755
--- a/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/Frameworks/libswiftUIKit.dylib
+++ b/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/Frameworks/libswiftUIKit.dylib
Binary files differ
diff --git a/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/Frameworks/libswiftos.dylib b/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/Frameworks/libswiftos.dylib
index 7cb498f..c14107f 100755
--- a/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/Frameworks/libswiftos.dylib
+++ b/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/Frameworks/libswiftos.dylib
Binary files differ
diff --git a/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/Frameworks/libswiftsimd.dylib b/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/Frameworks/libswiftsimd.dylib
index 4763208..7efc1cc 100755
--- a/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/Frameworks/libswiftsimd.dylib
+++ b/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/Frameworks/libswiftsimd.dylib
Binary files differ
diff --git a/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/Info.plist b/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/Info.plist
index 08ebb57..06b5a26 100644
--- a/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/Info.plist
+++ b/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/Info.plist
Binary files differ
diff --git a/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/MainViewController.nib b/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/MainViewController.nib
index 47321ea..3e9ca35 100644
--- a/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/MainViewController.nib
+++ b/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/MainViewController.nib
Binary files differ
diff --git a/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/_CodeSignature/CodeResources b/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/_CodeSignature/CodeResources
index 8083a0e..b5429c7 100644
--- a/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/_CodeSignature/CodeResources
+++ b/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/_CodeSignature/CodeResources
@@ -78,79 +78,79 @@
 		</data>
 		<key>Assets.car</key>
 		<data>
-		KKAirXh8K/ModwnSXLShV5/etr0=
+		g8zkpxmqkYLNeSWR12e1gNQYWTY=
 		</data>
 		<key>Frameworks/libswiftAVFoundation.dylib</key>
 		<data>
-		uDfYCHXGi4LJJ7PehI1sKbZqVf4=
+		8Qj0lW0Ymvy5KyAWLJHwYSk6u+U=
 		</data>
 		<key>Frameworks/libswiftCore.dylib</key>
 		<data>
-		hnZxV4PUHdqbt8IOBCPhBpfSwUE=
+		2uXteUPyAvfHG476W5U8cUjZHx0=
 		</data>
 		<key>Frameworks/libswiftCoreAudio.dylib</key>
 		<data>
-		/mmLx8jrVORtoTACElCyWqzqYfA=
+		v6VcOdQFWvRkIl4ot9I3OPjYVH0=
 		</data>
 		<key>Frameworks/libswiftCoreFoundation.dylib</key>
 		<data>
-		v7BE4evcLJt3iFrwd9m33m5rFI8=
+		Zi64xPHRsx39JoIsd+FL0ZQu81o=
 		</data>
 		<key>Frameworks/libswiftCoreGraphics.dylib</key>
 		<data>
-		qxYPH4/wxggOGD73Xj6EkCR0xkY=
+		m7c9XriI9UvRELbZP7K+j+ypGsE=
 		</data>
 		<key>Frameworks/libswiftCoreImage.dylib</key>
 		<data>
-		vlRBCfDqtrrwzkBLtGs2HbO4YbI=
+		/JAWw3eLhtYii8EaproxWv4OZ/M=
 		</data>
 		<key>Frameworks/libswiftCoreMedia.dylib</key>
 		<data>
-		CyOREkCX0hnTg5JHbY6kdrfAERI=
+		VBxFpSMpOnOyxdhr7fFmNfYltYY=
 		</data>
 		<key>Frameworks/libswiftDarwin.dylib</key>
 		<data>
-		nd3vDcLn6YQQrhlqobWhMV/sLAE=
+		TzQzDoWlyGOG+LxX/bq5utRJs/s=
 		</data>
 		<key>Frameworks/libswiftDispatch.dylib</key>
 		<data>
-		Xlup3R5V6sXScSmXMkAysKJWVXk=
+		CPl5Gsoy+SEzLF4TP5caS627GWY=
 		</data>
 		<key>Frameworks/libswiftFoundation.dylib</key>
 		<data>
-		6FQCjaFEt9vOMPGkD3Bi4b9USw0=
+		aXmoTPmqDfxQp/HFMCdCG4/5COk=
 		</data>
 		<key>Frameworks/libswiftMetal.dylib</key>
 		<data>
-		JJGt6xWjffN+5mM0q0dDOmJ8dDE=
+		xPaIpCnJ+DSZwkJceploiwt6Pq8=
 		</data>
 		<key>Frameworks/libswiftObjectiveC.dylib</key>
 		<data>
-		OIdIVW04vwXmE+cHkwyzMTkbvnU=
+		fVmGxWQRRqnOcfdNBoZByuBlVgc=
 		</data>
 		<key>Frameworks/libswiftQuartzCore.dylib</key>
 		<data>
-		cshqKXNDw3S4IFGWYenc+0CqhCk=
+		v81eB3IUtC9er+KovxdS1KLgDxw=
 		</data>
 		<key>Frameworks/libswiftSwiftOnoneSupport.dylib</key>
 		<data>
-		T9TevUnkeG5ZEUxj0Pdl4fF0vUE=
+		uk8eGXXRu+UEjRYEHuNBxqEElfo=
 		</data>
 		<key>Frameworks/libswiftUIKit.dylib</key>
 		<data>
-		TrQW8qKOdy8IEbHkKhWe3R+o2ZM=
+		7g0O3uLYgaPNe2b0FPLlcfJsLMU=
 		</data>
 		<key>Frameworks/libswiftos.dylib</key>
 		<data>
-		TQ11eqpSTjqthNmaPsfIeasSdUk=
+		wjhieac5H3WQl8RMgjJm/Q6sinM=
 		</data>
 		<key>Frameworks/libswiftsimd.dylib</key>
 		<data>
-		3yFMAEujHZwmMLxWNEPsqtRI7l8=
+		8JFWbSQfhpLwLvQIw/1WuTICIGs=
 		</data>
 		<key>Info.plist</key>
 		<data>
-		ptakydEySnuUqGLwmDSThlf9kP8=
+		juvGuJJaPnLgqxd3MSbC0kiDMgI=
 		</data>
 		<key>JPushConfig.plist</key>
 		<data>
@@ -198,7 +198,7 @@
 		</data>
 		<key>MainViewController.nib</key>
 		<data>
-		Hbj+jg8kHggfQilLv2funLLiKdE=
+		cjvTFQXfZRdmAYsSW398uuCbmBA=
 		</data>
 		<key>PkgInfo</key>
 		<data>
@@ -206,7 +206,7 @@
 		</data>
 		<key>config.xml</key>
 		<data>
-		IgESgLidVuYaBKc1zJzsW9K32uo=
+		PZUzb4/2ynWqr9WkAFnsX6KOZ1k=
 		</data>
 		<key>embedded.mobileprovision</key>
 		<data>
@@ -554,7 +554,7 @@
 		</data>
 		<key>www/js/scan.js</key>
 		<data>
-		Cea6nn8OF3hogSuEpiL+IkVdO0I=
+		u/uxG7pig1OIhkJvIOSMYiOTs8c=
 		</data>
 		<key>www/js/security.js</key>
 		<data>
@@ -1273,198 +1273,198 @@
 		<dict>
 			<key>hash</key>
 			<data>
-			KKAirXh8K/ModwnSXLShV5/etr0=
+			g8zkpxmqkYLNeSWR12e1gNQYWTY=
 			</data>
 			<key>hash2</key>
 			<data>
-			nReIXWpgV9Kb7kvFFviDa0ldEsVlJYZnX3sW+zEIOoE=
+			hGZP6DsKlLJF9P4lCwrh3qAYrMMrR0Occ4xRUmvB0Ck=
 			</data>
 		</dict>
 		<key>Frameworks/libswiftAVFoundation.dylib</key>
 		<dict>
 			<key>hash</key>
 			<data>
-			uDfYCHXGi4LJJ7PehI1sKbZqVf4=
+			8Qj0lW0Ymvy5KyAWLJHwYSk6u+U=
 			</data>
 			<key>hash2</key>
 			<data>
-			uBXupAH/nHa8Xn0vQL18OKMoz5nwtyOQyRrDYywnT2Y=
+			v2O6O1GGrVVAsfEYjnL8E1hQXMzlFHfpzFUMk8BTeTQ=
 			</data>
 		</dict>
 		<key>Frameworks/libswiftCore.dylib</key>
 		<dict>
 			<key>hash</key>
 			<data>
-			hnZxV4PUHdqbt8IOBCPhBpfSwUE=
+			2uXteUPyAvfHG476W5U8cUjZHx0=
 			</data>
 			<key>hash2</key>
 			<data>
-			p6+Hu5nJHIAgwObOZvX2YVFv9uZmIAdxaXpuKk99HsQ=
+			TWGfJk+0MT16isdzShKr59MX6DvSCRXWxIg3MPqOP7w=
 			</data>
 		</dict>
 		<key>Frameworks/libswiftCoreAudio.dylib</key>
 		<dict>
 			<key>hash</key>
 			<data>
-			/mmLx8jrVORtoTACElCyWqzqYfA=
+			v6VcOdQFWvRkIl4ot9I3OPjYVH0=
 			</data>
 			<key>hash2</key>
 			<data>
-			p9sdnJpMpkRQ+jg6wuB9bs/n5/l0uNQQlya0Vspe5Y4=
+			dtxhnx2+ZA57b0cQnwC7KIRzcwf2GTJnSJArY/BKcKQ=
 			</data>
 		</dict>
 		<key>Frameworks/libswiftCoreFoundation.dylib</key>
 		<dict>
 			<key>hash</key>
 			<data>
-			v7BE4evcLJt3iFrwd9m33m5rFI8=
+			Zi64xPHRsx39JoIsd+FL0ZQu81o=
 			</data>
 			<key>hash2</key>
 			<data>
-			A8VfO5EJH/1XaYYpedcjFu0C8tPp6sULSQkH6c9Snk8=
+			Z5gGPTEtndo0LQprh2y2G//esdzINHviqwJILb8a6vk=
 			</data>
 		</dict>
 		<key>Frameworks/libswiftCoreGraphics.dylib</key>
 		<dict>
 			<key>hash</key>
 			<data>
-			qxYPH4/wxggOGD73Xj6EkCR0xkY=
+			m7c9XriI9UvRELbZP7K+j+ypGsE=
 			</data>
 			<key>hash2</key>
 			<data>
-			MATi1ECxIR33VrEed+K9v0VXz+qfWvzXZoZhaCeiA8c=
+			l/HNmRQFWzUXzRv4xBDeHKvePCEiO7hExLq0d9fe9mI=
 			</data>
 		</dict>
 		<key>Frameworks/libswiftCoreImage.dylib</key>
 		<dict>
 			<key>hash</key>
 			<data>
-			vlRBCfDqtrrwzkBLtGs2HbO4YbI=
+			/JAWw3eLhtYii8EaproxWv4OZ/M=
 			</data>
 			<key>hash2</key>
 			<data>
-			K47oJc8r9dJYRsWzi+BIhDtLTFCZihsGFBh+/mHQuVk=
+			/BonXWVlfvAGk4ofEjuuwtKZcXo2pHILvim59W3JTs8=
 			</data>
 		</dict>
 		<key>Frameworks/libswiftCoreMedia.dylib</key>
 		<dict>
 			<key>hash</key>
 			<data>
-			CyOREkCX0hnTg5JHbY6kdrfAERI=
+			VBxFpSMpOnOyxdhr7fFmNfYltYY=
 			</data>
 			<key>hash2</key>
 			<data>
-			/fidqVROE0ZTPK+z2Ivl0fr9LvkZtMM+k/HfToN/S1A=
+			jWDKTymB6McXNkHsz6ltHJOaDX1LrVOlyRPh+JsqAew=
 			</data>
 		</dict>
 		<key>Frameworks/libswiftDarwin.dylib</key>
 		<dict>
 			<key>hash</key>
 			<data>
-			nd3vDcLn6YQQrhlqobWhMV/sLAE=
+			TzQzDoWlyGOG+LxX/bq5utRJs/s=
 			</data>
 			<key>hash2</key>
 			<data>
-			+jx6Y88pLiTayhNHrKV+cvGDubsban8mTTSKAFyxXtc=
+			OHAb3OyhZOJSvH5/FtuU3rQh7Gztifi3DqqDec5jMnw=
 			</data>
 		</dict>
 		<key>Frameworks/libswiftDispatch.dylib</key>
 		<dict>
 			<key>hash</key>
 			<data>
-			Xlup3R5V6sXScSmXMkAysKJWVXk=
+			CPl5Gsoy+SEzLF4TP5caS627GWY=
 			</data>
 			<key>hash2</key>
 			<data>
-			kf3F5hCOQjxwhh0bnjLpfQ0at4IYiQXRnFA0GHgdKTM=
+			u3kJECdKSg4eKbhDS+QmU6GBs/jQdHm1rBEqzLgQfxs=
 			</data>
 		</dict>
 		<key>Frameworks/libswiftFoundation.dylib</key>
 		<dict>
 			<key>hash</key>
 			<data>
-			6FQCjaFEt9vOMPGkD3Bi4b9USw0=
+			aXmoTPmqDfxQp/HFMCdCG4/5COk=
 			</data>
 			<key>hash2</key>
 			<data>
-			buTkqHRqLULyfmgfMfODWvRvz4dt1Cg/1Hrv5ndbJjk=
+			XRG6C/d3ESRa2YIxg2ludYWLFJZjbJXxns4rBXNEE6c=
 			</data>
 		</dict>
 		<key>Frameworks/libswiftMetal.dylib</key>
 		<dict>
 			<key>hash</key>
 			<data>
-			JJGt6xWjffN+5mM0q0dDOmJ8dDE=
+			xPaIpCnJ+DSZwkJceploiwt6Pq8=
 			</data>
 			<key>hash2</key>
 			<data>
-			Q/eqOi5Bts/4DzykQhKDZEEmvs0P0XeelFxTIwKhuRY=
+			JxZNz3OOkQ85DZGfZdarb++dRNNPjsIMbKuYuegX3bA=
 			</data>
 		</dict>
 		<key>Frameworks/libswiftObjectiveC.dylib</key>
 		<dict>
 			<key>hash</key>
 			<data>
-			OIdIVW04vwXmE+cHkwyzMTkbvnU=
+			fVmGxWQRRqnOcfdNBoZByuBlVgc=
 			</data>
 			<key>hash2</key>
 			<data>
-			09Rh2HZy1FxjpKjOdWogDCPxC77vqjKOmnxFWTYTTbg=
+			SlDXeFJtdcw5OU0mSxtr24SWrJk7DhHoqH2Kc1wPn/Q=
 			</data>
 		</dict>
 		<key>Frameworks/libswiftQuartzCore.dylib</key>
 		<dict>
 			<key>hash</key>
 			<data>
-			cshqKXNDw3S4IFGWYenc+0CqhCk=
+			v81eB3IUtC9er+KovxdS1KLgDxw=
 			</data>
 			<key>hash2</key>
 			<data>
-			d6iUBJvHmPEduWaf3mresVZuJx5f0uDmj/Q6yKRf9xE=
+			fELviAuzeIrdBNyow1tenv/lTjpcnZxZ+f22ABeKzE8=
 			</data>
 		</dict>
 		<key>Frameworks/libswiftSwiftOnoneSupport.dylib</key>
 		<dict>
 			<key>hash</key>
 			<data>
-			T9TevUnkeG5ZEUxj0Pdl4fF0vUE=
+			uk8eGXXRu+UEjRYEHuNBxqEElfo=
 			</data>
 			<key>hash2</key>
 			<data>
-			ZGaqmTrf9sdGpU6nQ3WEQmC/NopTbMZ9hbX1MW6WXXY=
+			z18X0FoF4w+dBoXxWnl7EqOTUy/j2pj/V8AC0N07emY=
 			</data>
 		</dict>
 		<key>Frameworks/libswiftUIKit.dylib</key>
 		<dict>
 			<key>hash</key>
 			<data>
-			TrQW8qKOdy8IEbHkKhWe3R+o2ZM=
+			7g0O3uLYgaPNe2b0FPLlcfJsLMU=
 			</data>
 			<key>hash2</key>
 			<data>
-			f5qWx1UwiW+tVgxmWY2uRxr0eTEkWMqis3s5hJnUAIM=
+			yncCZEKhCnGN/35HMO1XzmBeMnlWe7DoFxSyBe2hH2k=
 			</data>
 		</dict>
 		<key>Frameworks/libswiftos.dylib</key>
 		<dict>
 			<key>hash</key>
 			<data>
-			TQ11eqpSTjqthNmaPsfIeasSdUk=
+			wjhieac5H3WQl8RMgjJm/Q6sinM=
 			</data>
 			<key>hash2</key>
 			<data>
-			Ql7Bw3we9SVQ5fEOtjrVgHsY5hhGuGNKvi3jPv8/ZLI=
+			mneq7YCMTdC9JxEwrugMQw/2d6nDckL8vAarcPrPnZM=
 			</data>
 		</dict>
 		<key>Frameworks/libswiftsimd.dylib</key>
 		<dict>
 			<key>hash</key>
 			<data>
-			3yFMAEujHZwmMLxWNEPsqtRI7l8=
+			8JFWbSQfhpLwLvQIw/1WuTICIGs=
 			</data>
 			<key>hash2</key>
 			<data>
-			QBy+8Rh3zSljUjUo1mnDhNzyp0XPtzHOidN4SwhRDkI=
+			nmCbJjUc3G0t1bp2bf9qNCoS7J0Cj1aQ7W0j+uKJ5hg=
 			</data>
 		</dict>
 		<key>JPushConfig.plist</key>
@@ -1592,22 +1592,22 @@
 		<dict>
 			<key>hash</key>
 			<data>
-			Hbj+jg8kHggfQilLv2funLLiKdE=
+			cjvTFQXfZRdmAYsSW398uuCbmBA=
 			</data>
 			<key>hash2</key>
 			<data>
-			AQvB0y4SawJMCUT1q06CQjD/NgLijaua3CvtGzExEUo=
+			5ztrKpbIHJlcfYR5qM4ZanQy00wZABi1MFbtuiwXcDU=
 			</data>
 		</dict>
 		<key>config.xml</key>
 		<dict>
 			<key>hash</key>
 			<data>
-			IgESgLidVuYaBKc1zJzsW9K32uo=
+			PZUzb4/2ynWqr9WkAFnsX6KOZ1k=
 			</data>
 			<key>hash2</key>
 			<data>
-			SbLdTrUoZlolkwamhFCqAvtbQUU/oaBoDoDAZGW4rCI=
+			Rc9fXTgQhylUY1cVz6eRZG2E2MiHf7lNVaYC/IY6ZD8=
 			</data>
 		</dict>
 		<key>embedded.mobileprovision</key>
@@ -2560,11 +2560,11 @@
 		<dict>
 			<key>hash</key>
 			<data>
-			Cea6nn8OF3hogSuEpiL+IkVdO0I=
+			u/uxG7pig1OIhkJvIOSMYiOTs8c=
 			</data>
 			<key>hash2</key>
 			<data>
-			boEwP89p0NKOJH9RNkGe9B9GsagQ2Ug8esVLc2s5oP8=
+			gPLadH5W2VlCuZ52V99qWeU68uCz62OtFYHpY3jTFBc=
 			</data>
 		</dict>
 		<key>www/js/security.js</key>
diff --git a/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/config.xml b/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/config.xml
index 89c5991..14bae9c 100755
--- a/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/config.xml
+++ b/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/config.xml
@@ -1,5 +1,5 @@
 <?xml version='1.0' encoding='utf-8'?>
-<widget id="com.dalicitycard.app" version="1.0.4" xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0">
+<widget id="com.dalicitycard.app" version="1.0.5" xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0">
     <feature name="LocalStorage">
         <param name="ios-package" value="CDVLocalStorage" />
     </feature>
diff --git a/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/dlapp b/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/dlapp
index e2e075e..8ff51f5 100755
--- a/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/dlapp
+++ b/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/dlapp
Binary files differ
diff --git a/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/www/js/scan.js b/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/www/js/scan.js
index 0bde5cd..f331281 100644
--- a/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/www/js/scan.js
+++ b/platforms/ios/dlapp.xcarchive/Products/Applications/dlapp.app/www/js/scan.js
@@ -32,14 +32,12 @@
                         $.alert('扫描出错，请稍后再试：' + JSON.stringify(err), '提示');
                     } else {
                         // The scan completed, display the contents of the QR code:
-                        //$.alert(text, '提示');
-                        showRet(text);
                         QRScanner.destroy();
+                        showRet(text);
                     }
                 }
                 //开始扫描，需要将页面的背景设置成透明
                 QRScanner.show();
-                console.log("QRScanner.scan");
             } else if (status.denied) {
                 // The video preview will remain black, and scanning is disabled. We can
                 // try to ask the user to change their mind, but we'll have to send them
@@ -66,23 +64,57 @@
         });
     },
     goPage: function() {
-        QRScanner.destroy();
+        //QRScanner.destroy();
         window.location = "main.html"
     }
 };
 app.initialize();
-var inAppBrowserRef;
-function showRet(url) {
-    if(isEmpty(url)){
-        return;
-    }
-    var userid = window.localStorage.getItem("userid"); 
+function showRet1(url){
+  if(isEmpty(url)){
+      return;
+  }
+  var userid = window.localStorage.getItem("userid");
+  if (url.indexOf("yy.dlsmk.cn")>=0) {
     if(url.indexOf("?")>0){
         url=url+'&userid='+userid;
     }else{
         url=url+'?userid='+userid;
     }
-    inAppBrowserRef = cordova.ThemeableBrowser.open(url, '_blank', {
+  }
+  var ref = cordova.InAppBrowser.open(url, '_blank',"location=yes,beforeload=yes");
+  ref.addEventListener('loadstart', function(params){
+     if (params.url.indexOf("yy.dlsmk.cn")>=0) {
+       if (params.url.indexOf("userid")<0) {
+           if(params.url.indexOf("?")>0){
+               params.url=params.url+'&userid='+userid;
+           }else{
+               params.url=params.url+'?userid='+userid;
+           }
+           ref.hide();
+           var neRef = cordova.InAppBrowser.open(params.url, '_blank',"location=yes,beforeload=yes");
+           neRef.addEventListener('exit', function(e){
+               ref.close();
+               window.location = "main.html"
+           });
+       }
+     }
+  });
+}
+
+function showRet(url) {
+    if(isEmpty(url)){
+        return;
+    }
+    var userid = window.localStorage.getItem("userid"); 
+    if (url.indexOf("yy.dlsmk.cn")>=0) {
+        if(url.indexOf("?")>0){
+            url=url+'&userid='+userid;
+        }else{
+            url=url+'?userid='+userid;
+        }
+    }
+    console.log(url)
+    var inAppBrowserRef = cordova.ThemeableBrowser.open(url, '_blank', {
         statusbar: {
             color: '#03a9f4ff'
         },
@@ -107,19 +139,25 @@
             event: 'closePressed'
         },
         backButtonCanClose: true
-    }).addEventListener('backPressed', function(e) {
-        //alert('back pressed');
-    }).addEventListener('closePressed', function(e) {
-        //alert('closePressed pressed');
-        inAppBrowserRef.close();
-        window.location = "main.html"
-    }).addEventListener(cordova.ThemeableBrowser.EVT_ERR, function(e) {
-        console.error(e.message);
-    }).addEventListener(cordova.ThemeableBrowser.EVT_WRN, function(e) {
-        console.log(e.message);
-    });
-    inAppBrowserRef.addEventListener('loadstart', loadStartCallBack);
-    inAppBrowserRef.addEventListener('beforeload', beforeloadCallBack);
+    }).addEventListener('loadstart', function(params){
+     if (params.url.indexOf("yy.dlsmk.cn")>=0) {
+       if (params.url.indexOf("userid")<0) {
+           if(params.url.indexOf("?")>0){
+               params.url=params.url+'&userid='+userid;
+           }else{
+               params.url=params.url+'?userid='+userid;
+           }
+           //ref.hide();
+           var neRef = cordova.ThemeableBrowser.open(params.url, '_blank');
+           neRef.addEventListener('closePressed', function(e){
+               neRef.close();
+               window.location = "main.html"
+           });
+       }
+     }
+  });
+    //inAppBrowserRef.addEventListener('loadstart', loadStartCallBack);
+    //inAppBrowserRef.addEventListener('beforeload', beforeloadCallBack);
 }
 function loadStartCallBack(params,callback) {
     console.log("1",params.url);
diff --git a/platforms/ios/dlapp.xcodeproj/project.pbxproj b/platforms/ios/dlapp.xcodeproj/project.pbxproj
index 88f42ff..d2839b7 100644
--- a/platforms/ios/dlapp.xcodeproj/project.pbxproj
+++ b/platforms/ios/dlapp.xcodeproj/project.pbxproj
@@ -5,12 +5,14 @@
 	};
 	objectVersion = 46;
 	objects = {
+
 /* Begin PBXBuildFile section */
 		0207DA581B56EA530066E2B4 /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 0207DA571B56EA530066E2B4 /* Images.xcassets */; };
 		04347BD0ABAC4EE0B4CDDDB6 /* jcore-ios-2.1.1.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 444DBF371D8346D7BC7EE35D /* jcore-ios-2.1.1.a */; };
 		0FBFC45D12B44FF79785B959 /* UIImage+CropScaleOrientation.m in Sources */ = {isa = PBXBuildFile; fileRef = 281DF600F6B747808087E4FC /* UIImage+CropScaleOrientation.m */; };
 		1D3623260D0F684500981E51 /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 1D3623250D0F684500981E51 /* AppDelegate.m */; };
 		1D60589B0D05DD56006BFB54 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 29B97316FDCFA39411CA2CEA /* main.m */; };
+		1F969D21D7EF4CF1A547A1DF /* CDVWKProcessPoolFactory.m in Sources */ = {isa = PBXBuildFile; fileRef = 473FEFEEBB2C4F5EAF594EBD /* CDVWKProcessPoolFactory.m */; };
 		2FE26256C715470F8240C690 /* SystemConfiguration.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 2625E3AABA8145E6901F06D3 /* SystemConfiguration.framework */; };
 		301BF552109A68D80062928A /* libCordova.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 301BF535109A57CC0062928A /* libCordova.a */; settings = {ATTRIBUTES = (Required, ); }; };
 		302D95F114D2391D003F00A1 /* MainViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 302D95EF14D2391D003F00A1 /* MainViewController.m */; };
@@ -21,6 +23,7 @@
 		3EBABAA2209349F6AF91DF03 /* JPushPlugin.m in Sources */ = {isa = PBXBuildFile; fileRef = CD3E9CB7CBA54989AB62BA7F /* JPushPlugin.m */; };
 		432FFA418F2F4247BE9C8472 /* CoreTelephony.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = B1F790D5B00B4F178F835DE1 /* CoreTelephony.framework */; settings = {ATTRIBUTES = (Weak, ); }; };
 		4F83621E48F143429B20FB3A /* CDVThemeableBrowser.m in Sources */ = {isa = PBXBuildFile; fileRef = 28B91F31B6FD410AAF87BBDC /* CDVThemeableBrowser.m */; };
+		562D29FCB1FB4F86B95BB2BC /* CDVWKWebViewEngine.m in Sources */ = {isa = PBXBuildFile; fileRef = 59FDAA2CEE4540A3913846E4 /* CDVWKWebViewEngine.m */; };
 		5E2BDB8CFE4E41F39241956C /* CordovaHttpPlugin.m in Sources */ = {isa = PBXBuildFile; fileRef = 07B9D06BD3024E0FBFF74967 /* CordovaHttpPlugin.m */; };
 		5F67F2BDBB534EF4A4F1F319 /* BinaryResponseSerializer.m in Sources */ = {isa = PBXBuildFile; fileRef = E9F753C8AE424EAE851FA1FD /* BinaryResponseSerializer.m */; };
 		5F8969599D7F41909F597D14 /* AFNetworkReachabilityManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 6FEED8E986814AC1AC60FC28 /* AFNetworkReachabilityManager.m */; };
@@ -36,6 +39,7 @@
 		7EC1B4999B2E48C098BA1BBB /* CoreFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = C44E29C3B190445C98BBAB84 /* CoreFoundation.framework */; settings = {ATTRIBUTES = (Weak, ); }; };
 		8A202CA89E434389BBA0AD60 /* AppVersion.m in Sources */ = {isa = PBXBuildFile; fileRef = 1AAC7231E47A434EAF06A5B0 /* AppVersion.m */; };
 		8ABB6F36D85243238622D4F8 /* LocalAuthentication.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F3A85B8119074F699E1A15CD /* LocalAuthentication.framework */; };
+		8C09122A89C14C5FB0C28636 /* WebKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FE0B455916A4481681D59FE0 /* WebKit.framework */; settings = {ATTRIBUTES = (Weak, ); }; };
 		8E2516CFE16944B8B9702955 /* AFSecurityPolicy.m in Sources */ = {isa = PBXBuildFile; fileRef = BA6C5B1A6A6A488790CA41EB /* AFSecurityPolicy.m */; };
 		90E2E49D3A2449AB8D4D82D0 /* TextResponseSerializer.m in Sources */ = {isa = PBXBuildFile; fileRef = 57E66D7A151D45828ED66B7F /* TextResponseSerializer.m */; };
 		9224D3CE70AE4072BBEB170D /* CDVLocalFilesystem.m in Sources */ = {isa = PBXBuildFile; fileRef = 8A8DD2DDC8694A97A56F9FA7 /* CDVLocalFilesystem.m */; };
@@ -58,12 +62,9 @@
 		D404D18DD0114DA787E0BB43 /* SDNetworkActivityIndicator.m in Sources */ = {isa = PBXBuildFile; fileRef = 148A2122F3E242E4AF09A28D /* SDNetworkActivityIndicator.m */; };
 		D834895F80744E0F96D59047 /* TouchID.m in Sources */ = {isa = PBXBuildFile; fileRef = B3CE13EED96B44C0B06B1B2C /* TouchID.m */; };
 		F46AE1B50D8B4A81B05D4100 /* Security.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = A673D8D8920E4086A9152FC4 /* Security.framework */; };
+		F68EA21E51A3463A8FE2EE92 /* CDVWKWebViewUIDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 3B73EA28E46846FF84E6AF02 /* CDVWKWebViewUIDelegate.m */; };
 		F939AD8D22BB769B006B371B /* libsqlite3.0.tbd in Frameworks */ = {isa = PBXBuildFile; fileRef = F939AD8C22BB769B006B371B /* libsqlite3.0.tbd */; };
 		FDE92C386167415E8040F8AB /* AFURLResponseSerialization.m in Sources */ = {isa = PBXBuildFile; fileRef = FDEE8379D7A34C55A616F700 /* AFURLResponseSerialization.m */; };
-		562D29FCB1FB4F86B95BB2BC /* CDVWKWebViewEngine.m in Sources */ = {isa = PBXBuildFile; fileRef = 59FDAA2CEE4540A3913846E4 /* CDVWKWebViewEngine.m */; };
-		F68EA21E51A3463A8FE2EE92 /* CDVWKWebViewUIDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 3B73EA28E46846FF84E6AF02 /* CDVWKWebViewUIDelegate.m */; };
-		1F969D21D7EF4CF1A547A1DF /* CDVWKProcessPoolFactory.m in Sources */ = {isa = PBXBuildFile; fileRef = 473FEFEEBB2C4F5EAF594EBD /* CDVWKProcessPoolFactory.m */; };
-		8C09122A89C14C5FB0C28636 /* WebKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FE0B455916A4481681D59FE0 /* WebKit.framework */; settings = {ATTRIBUTES = (Weak, ); }; };
 /* End PBXBuildFile section */
 
 /* Begin PBXContainerItemProxy section */
@@ -111,6 +112,7 @@
 		1D3623240D0F684500981E51 /* AppDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AppDelegate.h; sourceTree = "<group>"; };
 		1D3623250D0F684500981E51 /* AppDelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AppDelegate.m; sourceTree = "<group>"; };
 		1D6058910D05DD3D006BFB54 /* dlapp.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = dlapp.app; sourceTree = BUILT_PRODUCTS_DIR; };
+		1E5CB6025B2E4D14ABFDB037 /* CDVWKWebViewUIDelegate.h */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.h; name = CDVWKWebViewUIDelegate.h; path = "cordova-plugin-wkwebview-engine/CDVWKWebViewUIDelegate.h"; sourceTree = "<group>"; };
 		22AE2683802B4CB1BAF69ABF /* AFURLSessionManager.m */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.objc; name = AFURLSessionManager.m; path = "cordova-plugin-advanced-http/AFURLSessionManager.m"; sourceTree = "<group>"; };
 		22DF35565BBA44B1980FFAF5 /* libz.tbd */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = "sourcecode.text-based-dylib-definition"; name = libz.tbd; path = usr/lib/libz.tbd; sourceTree = SDKROOT; };
 		2625E3AABA8145E6901F06D3 /* SystemConfiguration.framework */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = wrapper.framework; name = SystemConfiguration.framework; path = System/Library/Frameworks/SystemConfiguration.framework; sourceTree = SDKROOT; };
@@ -130,23 +132,28 @@
 		3291AEB63DCC45B58959915F /* JPushPlugin.h */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.h; name = JPushPlugin.h; path = "jpush-phonegap-plugin/JPushPlugin.h"; sourceTree = "<group>"; };
 		32CA4F630368D1EE00C91783 /* dlapp-Prefix.pch */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "dlapp-Prefix.pch"; sourceTree = "<group>"; };
 		331EEE6AB06B4F35BFBC8120 /* AppVersion.h */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.h; name = AppVersion.h; path = "cordova-plugin-app-version/AppVersion.h"; sourceTree = "<group>"; };
+		3B73EA28E46846FF84E6AF02 /* CDVWKWebViewUIDelegate.m */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.objc; name = CDVWKWebViewUIDelegate.m; path = "cordova-plugin-wkwebview-engine/CDVWKWebViewUIDelegate.m"; sourceTree = "<group>"; };
 		3BE5364CD5E74AFDAB853364 /* AFURLResponseSerialization.h */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.h; name = AFURLResponseSerialization.h; path = "cordova-plugin-advanced-http/AFURLResponseSerialization.h"; sourceTree = "<group>"; };
 		3D1EDC804D3646E7BE4A92BF /* AFNetworking.h */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.h; name = AFNetworking.h; path = "cordova-plugin-advanced-http/AFNetworking.h"; sourceTree = "<group>"; };
 		3FD6ED94AE9243B29217547A /* CDVLocalFilesystem.h */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.h; name = CDVLocalFilesystem.h; path = "cordova-plugin-file/CDVLocalFilesystem.h"; sourceTree = "<group>"; };
 		41DFF309018A479EA8F43611 /* CDVInAppBrowser.h */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.h; name = CDVInAppBrowser.h; path = "cordova-plugin-inappbrowser/CDVInAppBrowser.h"; sourceTree = "<group>"; };
 		444DBF371D8346D7BC7EE35D /* jcore-ios-2.1.1.a */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = archive.ar; name = "jcore-ios-2.1.1.a"; path = "dlapp/Plugins/cordova-plugin-jcore/jcore-ios-2.1.1.a"; sourceTree = "<group>"; };
+		473FEFEEBB2C4F5EAF594EBD /* CDVWKProcessPoolFactory.m */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.objc; name = CDVWKProcessPoolFactory.m; path = "cordova-plugin-wkwebview-engine/CDVWKProcessPoolFactory.m"; sourceTree = "<group>"; };
 		4BF1AE7251084FD2876E0BF5 /* AFURLRequestSerialization.m */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.objc; name = AFURLRequestSerialization.m; path = "cordova-plugin-advanced-http/AFURLRequestSerialization.m"; sourceTree = "<group>"; };
 		5192EB17EA164DFD80D433E4 /* ImageIO.framework */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = wrapper.framework; name = ImageIO.framework; path = System/Library/Frameworks/ImageIO.framework; sourceTree = SDKROOT; };
 		57E66D7A151D45828ED66B7F /* TextResponseSerializer.m */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.objc; name = TextResponseSerializer.m; path = "cordova-plugin-advanced-http/TextResponseSerializer.m"; sourceTree = "<group>"; };
 		59D1F618C1ED464283B7B2E6 /* UserNotifications.framework */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = wrapper.framework; name = UserNotifications.framework; path = System/Library/Frameworks/UserNotifications.framework; sourceTree = SDKROOT; };
+		59FDAA2CEE4540A3913846E4 /* CDVWKWebViewEngine.m */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.objc; name = CDVWKWebViewEngine.m; path = "cordova-plugin-wkwebview-engine/CDVWKWebViewEngine.m"; sourceTree = "<group>"; };
 		607F51FCFC7C4062A93BD011 /* CDVInAppBrowser.m */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.objc; name = CDVInAppBrowser.m; path = "cordova-plugin-inappbrowser/CDVInAppBrowser.m"; sourceTree = "<group>"; };
 		61106E22F1D348DDBDC4DC0B /* DisableStatusbar.m */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.objc; name = DisableStatusbar.m; path = "cordova-plugin-disable-ios11-statusbar/DisableStatusbar.m"; sourceTree = "<group>"; };
 		62C24B1E8F294AC587C6D051 /* UIImage+CropScaleOrientation.h */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.h; name = "UIImage+CropScaleOrientation.h"; path = "cordova-plugin-camera/UIImage+CropScaleOrientation.h"; sourceTree = "<group>"; };
+		648BD3182CD64A77AD2D447B /* CDVWKWebViewEngine.h */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.h; name = CDVWKWebViewEngine.h; path = "cordova-plugin-wkwebview-engine/CDVWKWebViewEngine.h"; sourceTree = "<group>"; };
 		683645F69456461BB8712924 /* AFNetworkReachabilityManager.h */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.h; name = AFNetworkReachabilityManager.h; path = "cordova-plugin-advanced-http/AFNetworkReachabilityManager.h"; sourceTree = "<group>"; };
 		6D5F2FFCAD8E4A4392B781A3 /* UIKit.framework */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = wrapper.framework; name = UIKit.framework; path = System/Library/Frameworks/UIKit.framework; sourceTree = SDKROOT; };
 		6DC53FCFEEFD4EC89C2073E0 /* TextRequestSerializer.h */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.h; name = TextRequestSerializer.h; path = "cordova-plugin-advanced-http/TextRequestSerializer.h"; sourceTree = "<group>"; };
 		6FEED8E986814AC1AC60FC28 /* AFNetworkReachabilityManager.m */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.objc; name = AFNetworkReachabilityManager.m; path = "cordova-plugin-advanced-http/AFNetworkReachabilityManager.m"; sourceTree = "<group>"; };
 		7601E9450D7240078C98ED9D /* CordovaHttpPlugin.h */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.h; name = CordovaHttpPlugin.h; path = "cordova-plugin-advanced-http/CordovaHttpPlugin.h"; sourceTree = "<group>"; };
+		7DC7711D3C76485B9E422E3A /* CDVWKProcessPoolFactory.h */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.h; name = CDVWKProcessPoolFactory.h; path = "cordova-plugin-wkwebview-engine/CDVWKProcessPoolFactory.h"; sourceTree = "<group>"; };
 		7E931FBE72E74C4887498E5F /* AFURLSessionManager.h */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.h; name = AFURLSessionManager.h; path = "cordova-plugin-advanced-http/AFURLSessionManager.h"; sourceTree = "<group>"; };
 		80B448E71F8941268B78692C /* CDVCamera.m */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.objc; name = CDVCamera.m; path = "cordova-plugin-camera/CDVCamera.m"; sourceTree = "<group>"; };
 		8895AD78E31D471583178B91 /* TextResponseSerializer.h */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.h; name = TextResponseSerializer.h; path = "cordova-plugin-advanced-http/TextResponseSerializer.h"; sourceTree = "<group>"; };
@@ -188,13 +195,7 @@
 		FC8EA7F3637547AD8BC62127 /* JPushDefine.h */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.h; name = JPushDefine.h; path = "jpush-phonegap-plugin/JPushDefine.h"; sourceTree = "<group>"; };
 		FCC7E279D80D4FB9BCF2530A /* Bridging-Header.h */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.h; name = "Bridging-Header.h"; path = "cordova-plugin-fingerprint-aio/Bridging-Header.h"; sourceTree = "<group>"; };
 		FDEE8379D7A34C55A616F700 /* AFURLResponseSerialization.m */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 4; includeInIndex = 0; lastKnownFileType = sourcecode.c.objc; name = AFURLResponseSerialization.m; path = "cordova-plugin-advanced-http/AFURLResponseSerialization.m"; sourceTree = "<group>"; };
-		59FDAA2CEE4540A3913846E4 /* CDVWKWebViewEngine.m */ = {isa = PBXFileReference; name = "CDVWKWebViewEngine.m"; path = "cordova-plugin-wkwebview-engine/CDVWKWebViewEngine.m"; sourceTree = "<group>"; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; explicitFileType = undefined; includeInIndex = 0; };
-		3B73EA28E46846FF84E6AF02 /* CDVWKWebViewUIDelegate.m */ = {isa = PBXFileReference; name = "CDVWKWebViewUIDelegate.m"; path = "cordova-plugin-wkwebview-engine/CDVWKWebViewUIDelegate.m"; sourceTree = "<group>"; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; explicitFileType = undefined; includeInIndex = 0; };
-		473FEFEEBB2C4F5EAF594EBD /* CDVWKProcessPoolFactory.m */ = {isa = PBXFileReference; name = "CDVWKProcessPoolFactory.m"; path = "cordova-plugin-wkwebview-engine/CDVWKProcessPoolFactory.m"; sourceTree = "<group>"; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; explicitFileType = undefined; includeInIndex = 0; };
-		648BD3182CD64A77AD2D447B /* CDVWKWebViewEngine.h */ = {isa = PBXFileReference; name = "CDVWKWebViewEngine.h"; path = "cordova-plugin-wkwebview-engine/CDVWKWebViewEngine.h"; sourceTree = "<group>"; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; explicitFileType = undefined; includeInIndex = 0; };
-		1E5CB6025B2E4D14ABFDB037 /* CDVWKWebViewUIDelegate.h */ = {isa = PBXFileReference; name = "CDVWKWebViewUIDelegate.h"; path = "cordova-plugin-wkwebview-engine/CDVWKWebViewUIDelegate.h"; sourceTree = "<group>"; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; explicitFileType = undefined; includeInIndex = 0; };
-		7DC7711D3C76485B9E422E3A /* CDVWKProcessPoolFactory.h */ = {isa = PBXFileReference; name = "CDVWKProcessPoolFactory.h"; path = "cordova-plugin-wkwebview-engine/CDVWKProcessPoolFactory.h"; sourceTree = "<group>"; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; explicitFileType = undefined; includeInIndex = 0; };
-		FE0B455916A4481681D59FE0 /* WebKit.framework */ = {isa = PBXFileReference; name = "WebKit.framework"; path = "System/Library/Frameworks/WebKit.framework"; sourceTree = SDKROOT; fileEncoding = undefined; lastKnownFileType = wrapper.framework; explicitFileType = undefined; includeInIndex = 0; };
+		FE0B455916A4481681D59FE0 /* WebKit.framework */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = wrapper.framework; name = WebKit.framework; path = System/Library/Frameworks/WebKit.framework; sourceTree = SDKROOT; };
 /* End PBXFileReference section */
 
 /* Begin PBXFrameworksBuildPhase section */
diff --git a/platforms/ios/dlapp/config.xml b/platforms/ios/dlapp/config.xml
index 89c5991..14bae9c 100755
--- a/platforms/ios/dlapp/config.xml
+++ b/platforms/ios/dlapp/config.xml
@@ -1,5 +1,5 @@
 <?xml version='1.0' encoding='utf-8'?>
-<widget id="com.dalicitycard.app" version="1.0.4" xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0">
+<widget id="com.dalicitycard.app" version="1.0.5" xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0">
     <feature name="LocalStorage">
         <param name="ios-package" value="CDVLocalStorage" />
     </feature>
diff --git a/platforms/ios/dlapp/dlapp-Info.plist b/platforms/ios/dlapp/dlapp-Info.plist
index fc16293..6fbc115 100644
--- a/platforms/ios/dlapp/dlapp-Info.plist
+++ b/platforms/ios/dlapp/dlapp-Info.plist
@@ -21,7 +21,7 @@
 	<key>CFBundleSignature</key>
 	<string>????</string>
 	<key>CFBundleVersion</key>
-	<string>1.0.4</string>
+	<string>1.0.5</string>
 	<key>LSRequiresIPhoneOS</key>
 	<true/>
 	<key>NSAppTransportSecurity</key>
@@ -40,11 +40,13 @@
 	<key>NSCameraUsageDescription</key>
 	<string>APP需要使用您的相机权限，没有该权限将无法完成扫一扫功能</string>
 	<key>NSFaceIDUsageDescription</key>
-	<string/>
+	<string></string>
 	<key>NSMainNibFile</key>
-	<string/>
+	<string></string>
 	<key>NSMainNibFile~ipad</key>
-	<string/>
+	<string></string>
+	<key>NSPhotoLibraryUsageDescription</key>
+	<string>APP需要使用您的相册权限，没有该权限将无法完成扫一扫功能</string>
 	<key>UIBackgroundModes</key>
 	<array>
 		<string>remote-notification</string>
@@ -67,7 +69,5 @@
 		<string>UIInterfaceOrientationPortrait</string>
 		<string>UIInterfaceOrientationPortraitUpsideDown</string>
 	</array>
-	<key>NSPhotoLibraryUsageDescription</key>
-	<string>APP需要使用您的相册权限，没有该权限将无法完成扫一扫功能</string>
 </dict>
-</plist>
\ No newline at end of file
+</plist>
diff --git a/www/js/scan.js b/www/js/scan.js
index bb0a001..f331281 100644
--- a/www/js/scan.js
+++ b/www/js/scan.js
@@ -33,13 +33,11 @@
                     } else {
                         // The scan completed, display the contents of the QR code:
                         QRScanner.destroy();
-                        $.alert(text, '提示');
                         showRet(text);
                     }
                 }
                 //开始扫描，需要将页面的背景设置成透明
                 QRScanner.show();
-                console.log("QRScanner.scan");
             } else if (status.denied) {
                 // The video preview will remain black, and scanning is disabled. We can
                 // try to ask the user to change their mind, but we'll have to send them
@@ -66,24 +64,57 @@
         });
     },
     goPage: function() {
-        QRScanner.destroy();
+        //QRScanner.destroy();
         window.location = "main.html"
     }
 };
 app.initialize();
-var inAppBrowserRef;
-function showRet(url) {
-    if(isEmpty(url)){
-        return;
-    }
-    var userid = window.localStorage.getItem("userid"); 
+function showRet1(url){
+  if(isEmpty(url)){
+      return;
+  }
+  var userid = window.localStorage.getItem("userid");
+  if (url.indexOf("yy.dlsmk.cn")>=0) {
     if(url.indexOf("?")>0){
         url=url+'&userid='+userid;
     }else{
         url=url+'?userid='+userid;
     }
+  }
+  var ref = cordova.InAppBrowser.open(url, '_blank',"location=yes,beforeload=yes");
+  ref.addEventListener('loadstart', function(params){
+     if (params.url.indexOf("yy.dlsmk.cn")>=0) {
+       if (params.url.indexOf("userid")<0) {
+           if(params.url.indexOf("?")>0){
+               params.url=params.url+'&userid='+userid;
+           }else{
+               params.url=params.url+'?userid='+userid;
+           }
+           ref.hide();
+           var neRef = cordova.InAppBrowser.open(params.url, '_blank',"location=yes,beforeload=yes");
+           neRef.addEventListener('exit', function(e){
+               ref.close();
+               window.location = "main.html"
+           });
+       }
+     }
+  });
+}
+
+function showRet(url) {
+    if(isEmpty(url)){
+        return;
+    }
+    var userid = window.localStorage.getItem("userid"); 
+    if (url.indexOf("yy.dlsmk.cn")>=0) {
+        if(url.indexOf("?")>0){
+            url=url+'&userid='+userid;
+        }else{
+            url=url+'?userid='+userid;
+        }
+    }
     console.log(url)
-    inAppBrowserRef = cordova.ThemeableBrowser.open(url, '_blank', {
+    var inAppBrowserRef = cordova.ThemeableBrowser.open(url, '_blank', {
         statusbar: {
             color: '#03a9f4ff'
         },
@@ -108,19 +139,25 @@
             event: 'closePressed'
         },
         backButtonCanClose: true
-    }).addEventListener('backPressed', function(e) {
-        //alert('back pressed');
-    }).addEventListener('closePressed', function(e) {
-        //alert('closePressed pressed');
-        inAppBrowserRef.close();
-        window.location = "main.html"
-    }).addEventListener(cordova.ThemeableBrowser.EVT_ERR, function(e) {
-        console.error(e.message);
-    }).addEventListener(cordova.ThemeableBrowser.EVT_WRN, function(e) {
-        console.log(e.message);
-    });
-    inAppBrowserRef.addEventListener('loadstart', loadStartCallBack);
-    inAppBrowserRef.addEventListener('beforeload', beforeloadCallBack);
+    }).addEventListener('loadstart', function(params){
+     if (params.url.indexOf("yy.dlsmk.cn")>=0) {
+       if (params.url.indexOf("userid")<0) {
+           if(params.url.indexOf("?")>0){
+               params.url=params.url+'&userid='+userid;
+           }else{
+               params.url=params.url+'?userid='+userid;
+           }
+           //ref.hide();
+           var neRef = cordova.ThemeableBrowser.open(params.url, '_blank');
+           neRef.addEventListener('closePressed', function(e){
+               neRef.close();
+               window.location = "main.html"
+           });
+       }
+     }
+  });
+    //inAppBrowserRef.addEventListener('loadstart', loadStartCallBack);
+    //inAppBrowserRef.addEventListener('beforeload', beforeloadCallBack);
 }
 function loadStartCallBack(params,callback) {
     console.log("1",params.url);
