diff --git a/platforms/android/app/build.gradle b/platforms/android/app/build.gradle
index 13c0960..c6a120e 100644
--- a/platforms/android/app/build.gradle
+++ b/platforms/android/app/build.gradle
@@ -173,8 +173,8 @@
         ndk {
             abiFilters "armeabi"
         }
-        versionCode 11
-        versionName '1.3.7'
+        versionCode 12
+        versionName '1.3.8'
         targetSdkVersion 26
     }
     lintOptions {
diff --git a/platforms/android/app/release/app-release.apk b/platforms/android/app/release/app-release.apk
index e3b9bf3..f62d122 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/release/output.json b/platforms/android/app/release/output.json
index 67e22e8..4b6b4cc 100644
--- a/platforms/android/app/release/output.json
+++ b/platforms/android/app/release/output.json
@@ -1 +1 @@
-[{"outputType":{"type":"APK"},"apkInfo":{"type":"MAIN","splits":[],"versionCode":11,"versionName":"1.3.7","enabled":true,"outputFile":"app-release.apk","fullName":"release","baseName":"release"},"path":"app-release.apk","properties":{}}]
\ No newline at end of file
+[{"outputType":{"type":"APK"},"apkInfo":{"type":"MAIN","splits":[],"versionCode":12,"versionName":"1.3.8","enabled":true,"outputFile":"app-release.apk","fullName":"release","baseName":"release"},"path":"app-release.apk","properties":{}}]
\ No newline at end of file
diff --git a/platforms/android/app/src/main/AndroidManifest.xml b/platforms/android/app/src/main/AndroidManifest.xml
index 4591837..591c860 100644
--- a/platforms/android/app/src/main/AndroidManifest.xml
+++ b/platforms/android/app/src/main/AndroidManifest.xml
@@ -1,5 +1,5 @@
 <?xml version='1.0' encoding='utf-8'?>
-<manifest android:hardwareAccelerated="true" android:versionCode="10005" android:versionName="1.0.5" package="com.dalicitycard.app" xmlns:android="http://schemas.android.com/apk/res/android">
+<manifest android:hardwareAccelerated="true" android:versionCode="10006" android:versionName="1.0.6" package="com.dalicitycard.app" xmlns:android="http://schemas.android.com/apk/res/android">
     <supports-screens android:anyDensity="true" android:largeScreens="true" android:normalScreens="true" android:resizeable="true" android:smallScreens="true" android:xlargeScreens="true" />
     <application android:hardwareAccelerated="true" android:icon="@mipmap/ic_launcher" android:label="@string/launcher_name" android:supportsRtl="true">
         <activity android:configChanges="orientation|keyboardHidden|keyboard|screenSize|locale" android:label="@string/activity_name" android:launchMode="singleTop" android:name="MainActivity" android:screenOrientation="portrait" android:theme="@android:style/Theme.DeviceDefault.NoActionBar" android:windowSoftInputMode="adjustResize">
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 9d3b017..bc93d91 100644
--- a/platforms/android/app/src/main/assets/www/js/main.js
+++ b/platforms/android/app/src/main/assets/www/js/main.js
@@ -99,11 +99,11 @@
                 })
             })
         });
-        /*$("#doorBtn").click(function(){
+        $("#doorBtn").click(function(){
             app.checkBefore(function() {
                 showRet(DOOR_URl);
             })
-        })*/
+        })
         $('#usersec').click(function() {
             app.checkBefore(function() {
                 app.checkOther(function() {
diff --git a/platforms/android/app/src/main/assets/www/js/server.js b/platforms/android/app/src/main/assets/www/js/server.js
index 0674e1a..ba99748 100644
--- a/platforms/android/app/src/main/assets/www/js/server.js
+++ b/platforms/android/app/src/main/assets/www/js/server.js
@@ -1,6 +1,6 @@
 var dev = false;
 var SERVER = "https://yy.dlsmk.cn/payapi/mobileapi";
-var DOOR_URl = "http://172.28.43.8:8099/door/app/appMintUIindex";//门禁服务地址
+var DOOR_URl = "https://yy.dlsmk.cn/door/app/appMintUIindex";//门禁服务地址
 var GLOBAL_TODAY="";
 var GLOBAL_YESTERDAY="";
 var CURRENT_INDEX=1;
diff --git a/platforms/android/app/src/main/assets/www/main.html b/platforms/android/app/src/main/assets/www/main.html
index 79e824b..b357ca3 100644
--- a/platforms/android/app/src/main/assets/www/main.html
+++ b/platforms/android/app/src/main/assets/www/main.html
@@ -24,7 +24,7 @@
                         </div>
                         <div class="aui-col-xs-6 top-btn" id="qrcodeBtn">
                             <div class="center-in"><img src="img/icon_qrcode.png" style="width:56px;"></div>
-                            <div class="aui-grid-label top-title">付款码</div>
+                            <div class="aui-grid-label top-title">我的码</div>
                         </div>
                     </div>
                 </div>
@@ -44,10 +44,10 @@
                             <div class="center-in"><img src="img/icon_securty.png" style="width:28px;height: 28px"></div>
                             <div class="aui-grid-label" style="margin-top:10px;">账户安全</div>
                         </div>
-                        <!--<div class="aui-col-xs-4" id="doorBtn">
+                        <div class="aui-col-xs-4" id="doorBtn">
                             <div class="center-in"><img src="img/icon_door.png" style="width:28px;height: 28px"></div>
                             <div class="aui-grid-label" style="margin-top:10px;">远程开门</div>
-                        </div>-->
+                        </div>
                     </div>
                 </div>
             </section>
diff --git a/platforms/android/app/src/main/assets/www/qrcode.html b/platforms/android/app/src/main/assets/www/qrcode.html
index 3edeb36..5ce5788 100644
--- a/platforms/android/app/src/main/assets/www/qrcode.html
+++ b/platforms/android/app/src/main/assets/www/qrcode.html
@@ -11,14 +11,14 @@
     <link rel="stylesheet" type="text/css" href="css/aui.css">
     <link rel="stylesheet" type="text/css" href="css/weui.min.css">
     <link rel="stylesheet" type="text/css" href="css/jquery-weui.min.css">
-    <title>付款码</title>
+    <title>我的码</title>
 </head>
 <body style="background: #fff"  >
     <header class="aui-bar aui-bar-nav" style="padding-top:25px;">
         <a class="aui-pull-left" href="javascript:app.backTo()">
             <span class="aui-iconfont aui-icon-left"></span>
         </a>
-        <div class="aui-title">付款码</div>
+        <div class="aui-title">我的码</div>
     </header>
     <div style="display: flex;flex-direction: row;justify-content: center;align-items: center;margin-top: 50px;">
         <div style="background: #fff;text-align: center;" id="qrcode"></div>
diff --git a/platforms/android/app/src/main/res/mipmap-hdpi-v26/ic_launcher_foreground.png b/platforms/android/app/src/main/res/mipmap-hdpi-v26/ic_launcher_foreground.png
index 4edb4c6..1769fc5 100644
--- a/platforms/android/app/src/main/res/mipmap-hdpi-v26/ic_launcher_foreground.png
+++ b/platforms/android/app/src/main/res/mipmap-hdpi-v26/ic_launcher_foreground.png
Binary files differ
diff --git a/platforms/android/app/src/main/res/mipmap-ldpi-v26/ic_launcher_foreground.png b/platforms/android/app/src/main/res/mipmap-ldpi-v26/ic_launcher_foreground.png
index 0508de6..530c91d 100644
--- a/platforms/android/app/src/main/res/mipmap-ldpi-v26/ic_launcher_foreground.png
+++ b/platforms/android/app/src/main/res/mipmap-ldpi-v26/ic_launcher_foreground.png
Binary files differ
diff --git a/platforms/android/app/src/main/res/xml/config.xml b/platforms/android/app/src/main/res/xml/config.xml
index 59faded..da7283d 100644
--- a/platforms/android/app/src/main/res/xml/config.xml
+++ b/platforms/android/app/src/main/res/xml/config.xml
@@ -1,5 +1,5 @@
 <?xml version='1.0' encoding='utf-8'?>
-<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">
+<widget id="com.dalicitycard.app" version="1.0.6" xmlns="http://www.w3.org/ns/widgets" xmlns:cdv="http://cordova.apache.org/ns/1.0">
     <feature name="Fingerprint">
         <param name="android-package" value="de.niklasmerz.cordova.fingerprint.Fingerprint" />
     </feature>
diff --git a/platforms/browser/config.xml b/platforms/browser/config.xml
index 429c4a8..c6f9fad 100644
--- a/platforms/browser/config.xml
+++ b/platforms/browser/config.xml
@@ -1,5 +1,5 @@
 <?xml version='1.0' encoding='utf-8'?>
-<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">
+<widget id="com.dalicitycard.app" version="1.0.6" 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/www/js/main.js b/www/js/main.js
index 9d3b017..bc93d91 100644
--- a/www/js/main.js
+++ b/www/js/main.js
@@ -99,11 +99,11 @@
                 })
             })
         });
-        /*$("#doorBtn").click(function(){
+        $("#doorBtn").click(function(){
             app.checkBefore(function() {
                 showRet(DOOR_URl);
             })
-        })*/
+        })
         $('#usersec').click(function() {
             app.checkBefore(function() {
                 app.checkOther(function() {
diff --git a/www/js/security.js b/www/js/security.js
index f12a1cc..dd5475d 100644
--- a/www/js/security.js
+++ b/www/js/security.js
@@ -18,7 +18,7 @@
     },
     loginByTouchId: function() {
        Fingerprint.isAvailable(function(result){
-            alert("Fingerprint available");
+            $.alert("设备不支持指纹", "提示");
        }, function(message){
             alert(message);
        });
diff --git a/www/js/server.js b/www/js/server.js
index 0674e1a..3e8ae05 100644
--- a/www/js/server.js
+++ b/www/js/server.js
@@ -1,6 +1,6 @@
-var dev = false;
+var dev = true;
 var SERVER = "https://yy.dlsmk.cn/payapi/mobileapi";
-var DOOR_URl = "http://172.28.43.8:8099/door/app/appMintUIindex";//门禁服务地址
+var DOOR_URl = "https://yy.dlsmk.cn/door/app/appMintUIindex";//门禁服务地址
 var GLOBAL_TODAY="";
 var GLOBAL_YESTERDAY="";
 var CURRENT_INDEX=1;
diff --git a/www/js/signxycheck.js b/www/js/signxycheck.js
index 80ef9d7..524b8c4 100644
--- a/www/js/signxycheck.js
+++ b/www/js/signxycheck.js
@@ -16,9 +16,9 @@
                 if (ret.code == 200) {
                     $("#content").html(ret.page);
                     if (isEmpty(ret.signed) || ret.signed != 'yes') {
-                        $("#btn").show();
-                        app.checkTime();
-                        $("#content").css("bottom", "135px");
+                        //$("#btn").show();
+                        //app.checkTime();
+                        //$("#content").css("bottom", "135px");
                     } else {
                         $("#unbtn").show();
                         $("#content").css("bottom", "10px");
diff --git a/www/main.html b/www/main.html
index 79e824b..b357ca3 100644
--- a/www/main.html
+++ b/www/main.html
@@ -24,7 +24,7 @@
                         </div>
                         <div class="aui-col-xs-6 top-btn" id="qrcodeBtn">
                             <div class="center-in"><img src="img/icon_qrcode.png" style="width:56px;"></div>
-                            <div class="aui-grid-label top-title">付款码</div>
+                            <div class="aui-grid-label top-title">我的码</div>
                         </div>
                     </div>
                 </div>
@@ -44,10 +44,10 @@
                             <div class="center-in"><img src="img/icon_securty.png" style="width:28px;height: 28px"></div>
                             <div class="aui-grid-label" style="margin-top:10px;">账户安全</div>
                         </div>
-                        <!--<div class="aui-col-xs-4" id="doorBtn">
+                        <div class="aui-col-xs-4" id="doorBtn">
                             <div class="center-in"><img src="img/icon_door.png" style="width:28px;height: 28px"></div>
                             <div class="aui-grid-label" style="margin-top:10px;">远程开门</div>
-                        </div>-->
+                        </div>
                     </div>
                 </div>
             </section>
diff --git a/www/qrcode.html b/www/qrcode.html
index 3edeb36..5ce5788 100644
--- a/www/qrcode.html
+++ b/www/qrcode.html
@@ -11,14 +11,14 @@
     <link rel="stylesheet" type="text/css" href="css/aui.css">
     <link rel="stylesheet" type="text/css" href="css/weui.min.css">
     <link rel="stylesheet" type="text/css" href="css/jquery-weui.min.css">
-    <title>付款码</title>
+    <title>我的码</title>
 </head>
 <body style="background: #fff"  >
     <header class="aui-bar aui-bar-nav" style="padding-top:25px;">
         <a class="aui-pull-left" href="javascript:app.backTo()">
             <span class="aui-iconfont aui-icon-left"></span>
         </a>
-        <div class="aui-title">付款码</div>
+        <div class="aui-title">我的码</div>
     </header>
     <div style="display: flex;flex-direction: row;justify-content: center;align-items: center;margin-top: 50px;">
         <div style="background: #fff;text-align: center;" id="qrcode"></div>
diff --git a/www/security.html b/www/security.html
index 39a40ca..b205cdb 100644
--- a/www/security.html
+++ b/www/security.html
@@ -31,7 +31,7 @@
                     <div class="aui-list-item-right"></div>
                 </div>
             </li>
-            <!--<li class="aui-list-item" onclick="app.loginByTouchId()">
+            <li class="aui-list-item" onclick="app.loginByTouchId()">
                 <div class="aui-list-item-label-icon">
                     <i class="aui-iconfont aui-icon-lock aui-text-info"></i>
                 </div>
@@ -39,7 +39,7 @@
                     <div class="aui-list-item-title">指纹\人脸登录</div>
                     <div class="aui-list-item-right"><input type="checkbox" id="login" class="aui-switch" ></div>
                 </div>
-            </li>-->
+            </li>
             <li class="aui-list-item" onclick="app.toPayPwd()">
                 <div class="aui-list-item-label-icon">
                     <i class="aui-iconfont aui-icon-pencil aui-text-danger"></i>
@@ -50,9 +50,6 @@
                 </div>
             </li>
         </ul>
-        <div style="padding: 20px;margin-top: 40px;">
-            <a href="javascript:app.logout();" class="weui-btn weui-btn_warn">退出登录</a>
-        </div>
     </section>
 </body>
 
diff --git a/www/signxycheck.html b/www/signxycheck.html
index 180aa9b..0740fee 100644
--- a/www/signxycheck.html
+++ b/www/signxycheck.html
@@ -28,19 +28,6 @@
             <div class="aui-btn aui-btn-block " apmode onclick="app.unAgreeXY()" id="unsignBtn">解除代扣协议</div>
         </section>
     </div>
-    <div class="weui-footer weui-footer_fixed-bottom" style="background: #fff;display: none;" id="btn">
-        <div style="margin-top: 10px;">
-            <label for="agree" class="weui-agree" style="padding: .5em 5px .5em 15px;display: inline-block;">
-                <input id="agree" type="checkbox" class="weui-agree__checkbox" value="yes">
-                <span class="weui-agree__text">
-                    我已阅读并同意该协议
-                </span>
-            </label>
-        </div>
-        <section class="aui-content-padded" style="margin-top: 20px;">
-            <div class="aui-btn aui-btn-block "  tapmode onclick="app.agreeXY()" id="signBtn">签约代扣协议</div>
-        </section>
-    </div>
 </body>
 </html>
 <script type="text/javascript" src="cordova.js"></script>
