From 9a4629512ccf8359efd88671c9317c3cc7faf0c8 Mon Sep 17 00:00:00 2001
From: hxb <hxb@hdlchina.com.cn>
Date: 星期一, 29 八月 2022 16:46:40 +0800
Subject: [PATCH] Merge branch 'dev' into dev-temp

---
 ZigbeeApp/GateWay.Droid/Resources/xml/network_security_config.xml       |    4 
 ZigbeeApp/GateWay.Droid/JPush/JPushFirmBroadcast.cs                     |   57 
 ZigbeeApp/GateWay.Droid/Resources/Resource.designer.cs                  | 3152 +++++++++++++++++++++++-----------
 ZigbeeApp/Shared/Common/SendDataToServer.cs                             |   75 
 ZigbeeApp/Shared/Phone/UserCenter/UserMain/UserMainForm.cs              |    9 
 ZigbeeApp/GateWay.Droid/JPush/JPushService.cs                           |   11 
 ZigbeeApp/Shared.Droid.JPush/Transforms/Metadata.xml                    |  188 ++
 ZigbeeApp/Shared.Droid.JPush/Jars/android_jpush_fcm_4.5.0.aar           |    0 
 ZigbeeApp/GateWay.Droid/GateWay.Droid.csproj                            |   92 
 ZigbeeApp/SPhoneLib/Transforms/EnumMethods.xml                          |   13 
 ZigbeeApp/Shared.Droid.JPush/Jars/AboutJars.txt                         |   24 
 ZigbeeApp/Shared/DLL/Android/Shared.Droid.dll                           |    0 
 ZigbeeApp/DroidLib/DroidLib.csproj                                      |    2 
 ZigbeeApp/GateWay.Droid/Application.cs                                  |  201 --
 ZigbeeApp/SPhoneLib/Jars/sphonelibs-release.aar                         |    0 
 ZigbeeApp/SPhoneLib/Transforms/Metadata.xml                             |   20 
 ZigbeeApp/GateWay.sln                                                   |  118 
 ZigbeeApp/SPhoneLib/Properties/AssemblyInfo.cs                          |   26 
 ZigbeeApp/GateWay.Droid/packages.config                                 |    6 
 ZigbeeApp/Shared.Droid.JPush/HmsLazyInputStream.cs                      |   28 
 ZigbeeApp/SPhoneLib/SPhoneLib.csproj                                    |   67 
 ZigbeeApp/SPhoneLib/Transforms/EnumFields.xml                           |   14 
 ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlResidenceLogic.cs |   23 
 ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/UserCenterLogic.cs   |    1 
 ZigbeeApp/Shared.Droid.JPush/Transforms/EnumMethods.xml                 |   13 
 ZigbeeApp/Shared/Phone/VideoPhone/ESVideo.cs                            |   19 
 ZigbeeApp/GateWay.Droid/Properties/AndroidManifest.xml                  |   87 
 ZigbeeApp/SPhoneLib/Jars/AboutJars.txt                                  |   24 
 ZigbeeApp/Shared.Droid.JPush/Shared.Droid.JPush.csproj                  |   71 
 ZigbeeApp/Shared.Droid.JPush/Transforms/EnumFields.xml                  |   14 
 ZigbeeApp/GateWay.Droid/Resources/values/Styles.xml                     |    0 
 ZigbeeApp/Shared.Droid.JPush/Properties/AssemblyInfo.cs                 |   24 
 ZigbeeApp/GateWay.Droid/Assets/agconnect-services.json                  |   84 
 ZigbeeApp/SPhoneLib/Additions/AboutAdditions.txt                        |   48 
 ZigbeeApp/Shared.Droid.JPush/Additions/AboutAdditions.txt               |   48 
 ZigbeeApp/Shared.Droid.JPush/Shared.Droid.JPush.sln                     |   25 
 /dev/null                                                               |  390 ----
 ZigbeeApp/GateWay.Droid/JPush/JpushNotificationReceiver.cs              |  164 +
 ZigbeeApp/Shared.Droid.JPush/HmsContentProvider.cs                      |   58 
 ZigbeeApp/GateWay.Droid/JPush/JPushOpenClickActivity.cs                 |   48 
 40 files changed, 3,473 insertions(+), 1,775 deletions(-)

diff --git a/ZigbeeApp/DroidLib/DroidLib.csproj b/ZigbeeApp/DroidLib/DroidLib.csproj
old mode 100755
new mode 100644
index 9ccca5f..7b8a704
--- a/ZigbeeApp/DroidLib/DroidLib.csproj
+++ b/ZigbeeApp/DroidLib/DroidLib.csproj
@@ -55,8 +55,6 @@
   </ItemGroup>
   <ItemGroup>
     <EmbeddedJar Include="Jars\android-viewbadger.jar" />
-    <EmbeddedJar Include="Jars\jcore-android-1.2.7.jar" />
-    <EmbeddedJar Include="Jars\jpush-android-3.2.0.jar" />
   </ItemGroup>
   <Import Project="$(MSBuildExtensionsPath)\Xamarin\Android\Xamarin.Android.Bindings.targets" />
 </Project>
\ No newline at end of file
diff --git a/ZigbeeApp/DroidLib/Jars/jcore-android-1.2.7.jar b/ZigbeeApp/DroidLib/Jars/jcore-android-1.2.7.jar
deleted file mode 100755
index 77f183b..0000000
--- a/ZigbeeApp/DroidLib/Jars/jcore-android-1.2.7.jar
+++ /dev/null
Binary files differ
diff --git a/ZigbeeApp/DroidLib/Jars/jpush-android-3.2.0.jar b/ZigbeeApp/DroidLib/Jars/jpush-android-3.2.0.jar
deleted file mode 100755
index 76e90c4..0000000
--- a/ZigbeeApp/DroidLib/Jars/jpush-android-3.2.0.jar
+++ /dev/null
Binary files differ
diff --git a/ZigbeeApp/GateWay.Droid/Application.cs b/ZigbeeApp/GateWay.Droid/Application.cs
old mode 100755
new mode 100644
index 8e80a5c..11b2585
--- a/ZigbeeApp/GateWay.Droid/Application.cs
+++ b/ZigbeeApp/GateWay.Droid/Application.cs
@@ -17,7 +17,8 @@
 using Com.Tencent.MM.Sdk.Openapi;
 using ZXing.Mobile;
 using System.IO;
-
+using GateWay.Droid.JPush;
+
 namespace com.hdl.home
 {
     [Activity(Name = "com.hdl.home.wxapi.WXEntryActivity", Exported = true, Theme = "@android:style/Theme.Translucent", LaunchMode = Android.Content.PM.LaunchMode.SingleTask)]
@@ -157,19 +158,14 @@
             //鍙栨秷灞忓箷甯镐寒
             BaseActivity.KeepScreenON = false;
             //闅愯棌搴曢儴杞寜閿�
-            BaseActivity.IsHideVirualButtons = true;
-
-            //璁剧疆鏋佸厜璋冭瘯妯″紡锛屼负false鏃跺彧鎵撳嵃璀﹀憡淇℃伅
-            // System.Console.WriteLine($"AAA : {System.DateTime.Now.ToString()}");
-#if Release
-            JPushInterface.SetDebugMode(false);
-            //淇濆瓨鎵嬫満鍚嶇О鍒版湰鍦版枃浠�
-            //System.Console.WriteLine($"BBB : {System .DateTime .Now .ToString ()}");
+            BaseActivity.IsHideVirualButtons = true;
 
-            JPushInterface.Init(this);
-            //System.Console.WriteLine($"CCC : {System.DateTime.Now.ToString()}");
-#endif
+            //璁剧疆鏋佸厜璋冭瘯妯″紡锛屼负false鏃跺彧鎵撳嵃璀﹀憡淇℃伅
+            // System.Console.WriteLine($"AAA : {System.DateTime.Now.ToString()}");
 
+            JPushInterface.SetDebugMode(true);
+            JPushInterface.Init(this);
+            string registration_id = JPushInterface.GetRegistrationID(this);
 
             BaseActivity.BackKeyAction = () =>
             {
@@ -335,183 +331,8 @@
                 }
             }
             return false;
-        }
-
-
+        }
     }
-
-    [BroadcastReceiver(Name = "com.evoyo.home.JpushNotificationReceiver", Exported = false, Enabled = true)]
-    [IntentFilter(new string[] { "cn.jpush.android.intent.REGISTRATION",
-               "cn.jpush.android.intent.MESSAGE_RECEIVED",
-                "cn.jpush.android.intent.NOTIFICATION_RECEIVED",
-                "cn.jpush.android.intent.NOTIFICATION_OPENED",
-                "cn.jpush.android.intent.CONNECTION"  }, Categories = new string[] { "com.evoyo.home" })]
-    public class JpushNotificationReceiver : BroadcastReceiver
-    {
-        private static string TAG = "JpushNotificationReceiver";
-        private NotificationManager nm;
-        static string ACTION = "android.intent.action.BOOT_COMPLETED";
-        public override void OnReceive(Context context, Intent intent)
-        {
-            if (nm == null)
-            {
-                nm = (NotificationManager)context.GetSystemService(Context.NotificationService);
-            }
-            //base.OnReceive (context, intent);
-            try
-            {
-                Bundle bundle = intent.Extras;
-                if (intent.Action == ACTION)
-                {
-                    //寮�鏈鸿嚜鍔ㄦ湇鍔¤嚜鍔ㄥ惎鍔�,PushService鏄鍚姩鐨勬湇鍔�
-                    Intent service = new Intent(context, typeof(PushService));
-                    context.StartService(service);
-                }
-
-                //鎺ユ敹Registration Id
-                if (JPushInterface.ActionRegistrationId == intent.Action)
-                {
-                    string regId = bundle.GetString(JPushInterface.ExtraRegistrationId);
-                    if (!string.IsNullOrEmpty(regId))
-                    {
-                        Shared.Common.Config.Instance.RegistrationID = regId;
-                        Shared.Common.Config.Instance.Save();
-                    }
-#if Release
-                    //璋冭瘯:璁板綍鏋佸厜ID
-                    Shared.Phone.UserCenter.HdlLogLogic.Current.WriteOtherText(Shared.Phone.UserCenter.DirNameResourse.JiguangFile, "receive2:" + regId, false, true);
-#endif
-                }
-                //鐢ㄦ埛鐐瑰嚮鎵撳紑浜嗛�氱煡
-                else if (JPushInterface.ActionNotificationOpened == intent.Action)
-                {
-                    OpenNotification(context, bundle);
-                }
-                //鎺ュ彈鍒版帹閫佷笅鏉ョ殑閫氱煡
-                else if (JPushInterface.ActionNotificationReceived == intent.Action)
-                {
-                    //int notifactionId = bundle.GetInt(JPushInterface.ExtraNotificationId);
-                    ReceivingNotification(context, bundle);
-                    //Shared.Common.CommonPage.Instance.SingOut();
-                }
-                //鎺ユ敹鍒版帹閫佷笅鏉ョ殑鑷畾涔夋秷鎭�
-                else if (JPushInterface.ActionMessageReceived == intent.Action)
-                {
-                    bundle.GetString(JPushInterface.ExtraMessage);
-                }
-                else
-                {
-                }
-            }
-            catch (System.Exception e)
-            {
-
-                System.Console.WriteLine("鏋佸厜鎺ㄩ�佸嚭閿�:" + e.Message);
-            }
-        }
-        /// <summary>
-        /// 鎺ユ敹娑堟伅閫氱煡
-        /// </summary>
-        /// <param name="context">Context.</param>
-        /// <param name="bundle">Bundle.</param>
-        private void ReceivingNotification(Context context, Bundle bundle)
-        {
-            String title = bundle.GetString(JPushInterface.ExtraNotificationTitle);
-            System.Console.WriteLine(TAG, " title : " + title);
-            String message = bundle.GetString(JPushInterface.ExtraAlert);
-            System.Console.WriteLine(TAG, "message : " + message);
-            String extras = bundle.GetString(JPushInterface.ExtraExtra);
-            System.Console.WriteLine(TAG, "extras : " + extras);
-
-            //澶勭悊鏋佸厜娑堟伅鎺ㄩ�佺殑閫昏緫鍑芥暟
-            Shared.Phone.UserCenter.HdlJiguangMsgPushLogic.Current.AdjustJiguangMsgPush(title, message, extras);
-        }
-        /// <summary>
-        /// 鎵撳紑娑堟伅鏄剧ず鐣岄潰
-        /// </summary>
-        /// <param name="context">Context.</param>
-        /// <param name="bundle">Bundle.</param>
-        private void OpenNotification(Context context, Bundle bundle)
-        {
-
-            Intent i = new Intent(context, typeof(BaseActivity));//Intent intent=new Intent( 璧峰缁勪欢瀵硅薄 , 鐩爣 Service.class);
-            i.PutExtras(bundle);
-            i.SetFlags(ActivityFlags.NewTask);
-            context.StartActivity(i);
-
-            String extras = bundle.GetString(JPushInterface.ExtraExtra);
-            //String myValue = "";
-            try
-            {
-                VideoMethod(extras);
-                //JSONObject extrasJson = new JSONObject(extras);
-                //myValue = extrasJson.OptString("myKey");
-
-            }
-            catch (Exception e)
-            {
-                System.Console.WriteLine(TAG, "Unexpected: extras is not a valid json", e);
-                return;
-            }
-
-            //if (TYPE_THIS.equals(myValue))
-            //{
-            //Intent mIntent = new Intent(context, ThisActivity.class);
-            //mIntent.putExtras(bundle);
-            //mIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
-            //context.startActivity(mIntent);
-            //}
-            //else if (TYPE_ANOTHER.equals(myValue))
-            //{
-            //Intent mIntent = new Intent(context, AnotherActivity.class);
-            //mIntent.putExtras(bundle);
-            //mIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
-            //context.startActivity(mIntent);
-            //}
-        }
-
-        /// <summary>
-        /// android閫氱煡鏍忕偣鍑绘墦寮�鍙瀵硅鐨勬柟娉�
-        /// </summary>
-        /// <param name="hiddenJson">浜戠鎺ㄨ繃鏉ョ殑鏁版嵁</param>
-        private void VideoMethod(string hiddenJson)
-        {
-            var hiddanJson = Newtonsoft.Json.Linq.JObject.Parse(hiddenJson);
-            if (hiddanJson == null)
-            {
-                return;
-            }
-            var json = Newtonsoft.Json.Linq.JObject.Parse(hiddanJson["HiddanJson"].ToString());
-            if (json == null)
-            {
-                return;
-            }
-            Shared.Phone.VideoPhone.ESVideoInfo eSVideoInfo = new Shared.Phone.VideoPhone.ESVideoInfo();
-            if (json["uuid"].ToString().Contains(","))
-            {
-                var uuid = json["uuid"].ToString().Split(',');
-                eSVideoInfo.ESVideoUUID = uuid[0];
-
-            }
-            else
-            {
-                eSVideoInfo.ESVideoUUID = json["uuid"].ToString();
-            }
-
-            eSVideoInfo.DeviceName = Language.StringByID(Shared.R.MyInternationalizationString.theOutdoorUnit);
-            eSVideoInfo.ESRoomID = int.Parse(json["roomno"].ToString());
-            if (!string.IsNullOrEmpty(json["unitno"].ToString()))
-            {
-                string str = json["unitno"].ToString();
-                string str1 = str.Substring(0, 2).TrimStart('0');
-                string str2 = str.Substring(2, 2).TrimStart('0');
-                eSVideoInfo.RoomName = str1 + Language.StringByID(Shared.R.MyInternationalizationString.dong) + str2 + Language.StringByID(Shared.R.MyInternationalizationString.unit);
-            }
-
-            Shared.Phone.VideoPhone.ESVideo.ShowESvideoVideoIntercom(eSVideoInfo);
-
-        }
-    }
 }
 
 namespace Shared
@@ -589,5 +410,9 @@
                 return stream.ToArray();
             }
         }
+
+      
     }
+
+   
 }
diff --git a/ZigbeeApp/GateWay.Droid/Assets/agconnect-services.json b/ZigbeeApp/GateWay.Droid/Assets/agconnect-services.json
new file mode 100644
index 0000000..4b7059c
--- /dev/null
+++ b/ZigbeeApp/GateWay.Droid/Assets/agconnect-services.json
@@ -0,0 +1,84 @@
+{
+	"agcgw":{
+		"backurl":"connect-drcn.hispace.hicloud.com",
+		"url":"connect-drcn.dbankcloud.cn",
+		"websocketbackurl":"connect-ws-drcn.hispace.dbankcloud.com",
+		"websocketurl":"connect-ws-drcn.hispace.dbankcloud.cn"
+	},
+	"agcgw_all":{
+		"CN":"connect-drcn.dbankcloud.cn",
+		"CN_back":"connect-drcn.hispace.hicloud.com",
+		"DE":"connect-dre.dbankcloud.cn",
+		"DE_back":"connect-dre.hispace.hicloud.com",
+		"RU":"connect-drru.hispace.dbankcloud.ru",
+		"RU_back":"connect-drru.hispace.dbankcloud.cn",
+		"SG":"connect-dra.dbankcloud.cn",
+		"SG_back":"connect-dra.hispace.hicloud.com"
+	},
+	"websocketgw_all":{
+		"CN":"connect-ws-drcn.hispace.dbankcloud.cn",
+		"CN_back":"connect-ws-drcn.hispace.dbankcloud.com",
+		"DE":"connect-ws-dre.hispace.dbankcloud.cn",
+		"DE_back":"connect-ws-dre.hispace.dbankcloud.com",
+		"RU":"connect-ws-drru.hispace.dbankcloud.ru",
+		"RU_back":"connect-ws-drru.hispace.dbankcloud.cn",
+		"SG":"connect-ws-dra.hispace.dbankcloud.cn",
+		"SG_back":"connect-ws-dra.hispace.dbankcloud.com"
+	},
+	"client":{
+		"cp_id":"2850086000428177029",
+		"product_id":"99536292102360529",
+		"client_id":"909271942853316096",
+		"client_secret":"04B947A6C65528311BDC8BC4299D34A8CEF4B2220532524E3EE6C8F1E3CAE637",
+		"project_id":"99536292102360529",
+		"app_id":"103085275",
+		"api_key":"DAEDAAywMRP7NwBehUXjRsqrTI3Y2tU2sDZh5OOI4tHdyEud4kdjQrvhjFvWUYx73dyEfKrQVYLpsSpBMuGnUmYQNx+opJNRxfroXw==",
+		"package_name":"com.evoyo.home"
+	},
+	"oauth_client":{
+		"client_id":"103085275",
+		"client_type":1
+	},
+	"app_info":{
+		"app_id":"103085275",
+		"package_name":"com.evoyo.home"
+	},
+	"service":{
+		"analytics":{
+			"collector_url":"datacollector-drcn.dt.hicloud.com,datacollector-drcn.dt.dbankcloud.cn",
+			"collector_url_ru":"datacollector-drru.dt.dbankcloud.ru,datacollector-drru.dt.hicloud.com",
+			"collector_url_sg":"datacollector-dra.dt.hicloud.com,datacollector-dra.dt.dbankcloud.cn",
+			"collector_url_de":"datacollector-dre.dt.hicloud.com,datacollector-dre.dt.dbankcloud.cn",
+			"collector_url_cn":"datacollector-drcn.dt.hicloud.com,datacollector-drcn.dt.dbankcloud.cn",
+			"resource_id":"p1",
+			"channel_id":""
+		},
+		"search":{
+			"url":"https://search-drcn.cloud.huawei.com"
+		},
+		"cloudstorage":{
+			"storage_url":"https://agc-storage-drcn.platform.dbankcloud.cn"
+		},
+		"ml":{
+			"mlservice_url":"ml-api-drcn.ai.dbankcloud.com,ml-api-drcn.ai.dbankcloud.cn"
+		}
+	},
+	"region":"CN",
+	"configuration_version":"3.0",
+	"appInfos":[
+		{
+			"package_name":"com.evoyo.home",
+			"client":{
+				"app_id":"103085275"
+			},
+			"app_info":{
+				"package_name":"com.evoyo.home",
+				"app_id":"103085275"
+			},
+			"oauth_client":{
+				"client_type":1,
+				"client_id":"103085275"
+			}
+		}
+	]
+}
\ No newline at end of file
diff --git a/ZigbeeApp/GateWay.Droid/FengLinVideo/Forms/MonitorFragment.cs b/ZigbeeApp/GateWay.Droid/FengLinVideo/Forms/MonitorFragment.cs
deleted file mode 100755
index 26311cf..0000000
--- a/ZigbeeApp/GateWay.Droid/FengLinVideo/Forms/MonitorFragment.cs
+++ /dev/null
@@ -1,237 +0,0 @@
-锘�
-using System;
-using Android.App;
-using Android.OS;
-using Android.Content.Res;
-using Android.Graphics;
-using Android.Views;
-using Android.Widget;
-using Com.ETouchSky;
-using Org.Json;
-using Com.Tool;
-using GateWay.Droid.FengLinVideo.Interface;
-using Java.Util;
-using GateWay.Droid.FengLinVideo.widget;
-using Java.Text;
-
-namespace GateWay.Droid.FengLinVideo.Forms
-{
-
-    public class MonitorFragment : Fragment, View.IOnClickListener, View.IOnTouchListener,VideoState
-    {
-        private View mView;
-        private VideoPhone mPhone;
-        private RelativeLayout rlScreenshot;
-        private ImageView imgScreenshot;
-        private TextView tvScreenshot;
-
-        private RelativeLayout rlUnlock;
-        private ImageView imgUnlock;
-        private TextView tvUnlock;
-        private System.Threading.Thread thread = null;
-
-        public MonitorFragment(VideoPhone phone)
-        {
-            mPhone = phone;
-        }
-
-        public override void OnCreate(Bundle savedInstanceState)
-        {
-            base.OnCreate(savedInstanceState);
-        }
-
-        public override View OnCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState)
-        {
-            mView = inflater.Inflate(Resource.Layout.fragment_monitor, container, false);
-
-            iniView();
-
-            return mView;
-        }
-
-        private void iniView()
-        {
-            //
-            rlScreenshot = (RelativeLayout)mView.FindViewById(Resource.Id.rl_sceenshot);
-            imgScreenshot = (ImageView)mView.FindViewById(Resource.Id.icon_screenshot);
-            tvScreenshot = (TextView)mView.FindViewById(Resource.Id.tv_screenshot);
-
-            rlUnlock = (RelativeLayout)mView.FindViewById(Resource.Id.rl_unlock);
-            imgUnlock = (ImageView)mView.FindViewById(Resource.Id.icon_unlock);
-            tvUnlock = (TextView)mView.FindViewById(Resource.Id.tv_unlock);
-
-            rlScreenshot.SetOnClickListener(this);
-            rlUnlock.SetOnClickListener(this);
-
-            rlScreenshot.SetOnTouchListener(this);
-            rlUnlock.SetOnTouchListener(this);
-        }
-       
-        //寮�閿�
-        private void unlock()
-        {
-            //寮�閿侊紝褰撴敹鍒版潵鐢典俊鎭椂鍙繘琛屽紑閿佹搷浣�
-            if (mPhone != null)
-            {
-                try
-                {
-                    JSONObject ht = new JSONObject();
-                    ht.Put("command", "open");//鍥哄畾鍙傛暟
-                    ht.Put("room_id", 123); //鍔ㄦ�佸弬鏁� 锛屼紶閫掑紑闂ㄧ殑鎴块棿鍙枫�傝繖涓紑闂ㄥ彛璁板綍灏辫兘璁板綍璋佸紑鐨勯棬
-                    ht.Put("devType", 7); //鍥哄畾鍙傛暟
-                    mPhone.SendCustomData(ht.ToString());
-                }
-                catch (Exception e)
-                {
-                    string erro = e.Message;
-                }
-            }
-        }
-
-        //鏇存柊寮�閿佹寜閽姸鎬�
-        private void updataUnlockState()
-        {
-            try
-            {
-                //寮�閿佹垚鍔燂紝15绉掑唴涓嶇粰鍐嶇偣鍑绘寜閽�
-                rlUnlock.Enabled = false;
-                imgUnlock.SetImageResource(Resource.Drawable.unlock_disable);
-                tvUnlock.SetTextColor(new Color(Activity.GetColor(Resource.Color.color_disable)));
-                if (thread != null)
-                {
-                    try
-                    {
-                        thread.Interrupt();
-                    }
-                    catch { }
-                    thread = null;
-                }
-                thread = new System.Threading.Thread(() =>
-                  {
-                      try
-                      {
-                          System.Threading.Thread.Sleep(15 * 1000);
-                          Activity.RunOnUiThread(() =>
-                          {
-                              try
-                              {
-                                  rlUnlock.Enabled = true;
-                                  imgUnlock.SetImageResource(Resource.Drawable.unlock);
-                                  tvUnlock.SetTextColor(new Color(Activity.GetColor(Resource.Color.text_color)));
-                              }
-                              catch { }
-                          });
-                      }
-                      catch { }
-                  });
-
-                thread.Start();
-            }
-            catch { }
-        }
-
-        public void OnClick(View v)
-        {
-            //
-            if (v.Equals(rlUnlock))
-            {
-                if (mPhone != null)
-                    unlock();                
-            }
-            else if (v.Equals(rlScreenshot))
-            {
-                //鏈夎棰戣繃鏉ュ彲璋冪敤姝ゆ帴鍙h繘琛屾媿鐓�
-                if (mPhone != null)
-                {
-                    //鏈夎棰戣繃鏉ュ彲璋冪敤姝ゆ帴鍙h繘琛屾媿鐓�
-                    if (mPhone != null)
-                    {
-
-                        SimpleDateFormat format = new SimpleDateFormat("yyyyMMddHHmmss");
-                        string time = format.Format(new Date(SystemClock.CurrentThreadTimeMillis()));
-
-                        string ss = Android.OS.Environment.GetExternalStoragePublicDirectory(Android.OS.Environment.DirectoryPictures).AbsolutePath;
-                        string path = ss + "/" + time +".jpg";
-                        mPhone.Snap(path);
-                    }
-                }
-            }
-        }
-
-        public bool OnTouch(View v, MotionEvent e)
-        {
-            if (e.Action == MotionEventActions.Down)
-            {
-                if (v.Equals(rlScreenshot))
-                {
-                    imgScreenshot.Selected = true;
-                    tvScreenshot.Selected = true;
-                }
-                else if (v.Equals(rlUnlock))
-                {
-                    imgUnlock.Selected = true;
-                    tvUnlock.Selected = true;
-                }
-            }
-            else if (e.Action == MotionEventActions.Up)
-            {
-                if (v.Equals(rlScreenshot))
-                {
-                    imgScreenshot.Selected = false;
-                    tvScreenshot.Selected = false;
-                }
-                else if (v.Equals(rlUnlock))
-                {
-                    imgUnlock.Selected = false;
-                    tvUnlock.Selected = false;
-                }
-            }
-            else
-            {
-                //
-            }
-            return false;
-        }
-
-        public void onPhoneEvent(string msg)
-        {
-            try
-            {
-                //
-                TextProtocol tp = new TextProtocol();
-                tp.Parse(msg);
-                string event1 = tp.GetString("event");
-
-                switch (event1)
-                {
-                    case "EVT_HangUp":
-                        break;
-                    case "EVT_RECV_CUSTOM_DATA":
-                        updataUnlockState();
-                        break;
-                    case "EVT_SnapAck":
-                        break;
-                }
-            }
-            catch (Exception e)
-            {
-                string error = e.Message;
-            }
-        }
-
-        public override void OnDestroy()
-        {
-            base.OnDestroy();
-
-            if (thread != null)
-            {
-                try
-                {
-                    thread.Interrupt();
-                }
-                catch { }
-                thread = null;
-            }
-        }
-    }
-}
diff --git a/ZigbeeApp/GateWay.Droid/FengLinVideo/Forms/ReverseCallFragment.cs b/ZigbeeApp/GateWay.Droid/FengLinVideo/Forms/ReverseCallFragment.cs
deleted file mode 100755
index 4d01cc3..0000000
--- a/ZigbeeApp/GateWay.Droid/FengLinVideo/Forms/ReverseCallFragment.cs
+++ /dev/null
@@ -1,309 +0,0 @@
-锘�
-using System;
-using System.Threading;
-using Android.App;
-using Android.OS;
-using Android.Views;
-using Android.Widget;
-using Com.ETouchSky;
-using Com.Tool;
-using GateWay.Droid.FengLinVideo.Interface;
-using Java.Text;
-using Org.Json;
-using Java.Util;
-
-namespace GateWay.Droid.FengLinVideo.Forms
-{
-    public class ReverseCallFragment : Fragment, View.IOnClickListener, View.IOnTouchListener, VideoState
-    {
-        private VideoPhone mPhone;
-        private string param = "";
-
-        private View mView;
-
-        private ImageView imgScreenshot;
-        private ImageView imgUnlock;
-        //private ImageView imgHangup;
-        //private ImageView imgCall;
-
-        private RelativeLayout rlHangup;
-        private RelativeLayout rlCall;
-
-        private TextView tvHangup;
-        private TextView tvCall;
-        private TextView tvTip;
-
-        private System.Threading.Timer timer = null;
-        private int Time = 0;
-
-        public ReverseCallFragment(VideoPhone _phone, string _param)
-        {
-            this.mPhone = _phone;
-            this.param = _param;
-        }
-               
-        public override void OnCreate(Bundle savedInstanceState)
-        {
-            base.OnCreate(savedInstanceState);
-        }
-
-        public override View OnCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState)
-        {
-            mView = inflater.Inflate(Resource.Layout.fragment_call, container, false);
-
-            IniView();
-            ReverseCall(param);
-            return mView;
-        }
-
-        private void IniView()
-        {
-
-            imgScreenshot = (ImageView)mView.FindViewById(Resource.Id.icon_screenshot);//
-            imgUnlock = (ImageView)mView.FindViewById(Resource.Id.icon_unlock);//
-
-            tvTip = (TextView)mView.FindViewById(Resource.Id.tv_tip);
-            rlHangup = (RelativeLayout)mView.FindViewById(Resource.Id.rl_hangup);
-            //imgHangup = (ImageView)mView.FindViewById(Resource.Id.img_hangup);
-            tvHangup = (TextView)mView.FindViewById(Resource.Id.tv_hangup);
-
-            rlCall = (RelativeLayout)mView.FindViewById(Resource.Id.rl_call);
-            //imgCall = (ImageView)mView.FindViewById(Resource.Id.img_call);
-            tvCall = (TextView)mView.FindViewById(Resource.Id.tv_call);
-
-            imgScreenshot.SetOnClickListener(this);
-            imgUnlock.SetOnClickListener(this);
-            rlCall.SetOnClickListener(this);
-            rlHangup.SetOnClickListener(this);
-
-            imgUnlock.SetOnTouchListener(this);
-            imgScreenshot.SetOnTouchListener(this);
-
-            tvTip.SetText("鏉ョ數涓�...", null);
-        }
-
-        private void ReverseCall(string param)
-        {
-            //
-            //涓�鑸槸鎺ㄩ�佽繃鐨勬潵鐢典俊鎭椂璋冪敤姝ゆ帴鍙f墦寮�瑙嗛绐楀彛銆傜劧鍚庡彲璋冪敤mPhone.acceptRing(param);鎺ユ敹鏉ョ數淇℃伅
-            if (mPhone != null)
-            {
-                mPhone.ReverseCall(param);
-            }
-        }
-
-        //寮�閿�
-        private void Unlock()
-        {
-            //寮�閿侊紝褰撴敹鍒版潵鐢典俊鎭椂鍙繘琛屽紑閿佹搷浣�
-            if (mPhone != null)
-            {
-                try
-                {
-                    JSONObject ht = new JSONObject();
-                    ht.Put("command", "open");//鍥哄畾鍙傛暟
-                    ht.Put("room_id", 123); //鍔ㄦ�佸弬鏁� 锛屼紶閫掑紑闂ㄧ殑鎴块棿鍙枫�傝繖涓紑闂ㄥ彛璁板綍灏辫兘璁板綍璋佸紑鐨勯棬
-                    ht.Put("devType", 7); //鍥哄畾鍙傛暟
-                    mPhone.SendCustomData(ht.ToString());
-                }
-                catch (Exception e)
-                {
-                    string erro = e.Message;
-                }
-            }
-        }
-
-        //鏇存柊寮�閿佹寜閽姸鎬�
-        private void UpdataUnlockState()
-        {
-            //寮�閿佹垚鍔燂紝15绉掑唴涓嶇粰鍐嶇偣鍑绘寜閽�
-            imgUnlock.Enabled = false;
-            imgUnlock.SetImageResource(Resource.Drawable.unlock_disable);
-
-            new System.Threading.Thread(() =>
-            {
-                System.Threading.Thread.Sleep(15 * 1000);
-                Activity.RunOnUiThread(() =>
-                {
-                    imgUnlock.Enabled = true;
-                    imgUnlock.SetImageResource(Resource.Drawable.unlock);
-                });
-            }).Start();
-        }
-
-        private string getTime(int time)
-        {
-
-            int m = time / 60;
-            int s = time % 60;
-
-            return unitFormat(m) + ":" + unitFormat(s);
-
-        }
-
-        private static string unitFormat(int i)
-        {
-            string retStr = null;
-            if (i >= 0 && i < 10)
-                retStr = "0" + i;
-            else
-                retStr = "" + i;
-            return retStr;
-        }
-
-        //
-        private void TimeStarts()
-        {
-            try
-            {
-                if (timer != null)
-                    timer.Dispose();
-
-                TimerCallback timerCallback = new TimerCallback(Tick);
-                timer = new System.Threading.Timer(timerCallback,null,0,1000);
-
-            }
-            catch (Exception) { }
-        }
-
-        private void TimeEnd()
-        {
-            Time = 0;
-
-            if (timer != null)
-            {
-                timer.Dispose();
-                timer = null;
-            }
-        }
-
-        public void Tick(Object state)
-        {
-            Activity.RunOnUiThread(() =>
-            {
-                Time++;
-                tvTip.SetText(getTime(Time), null);
-            });
-        }
-
-        public void onPhoneEvent(string msg)
-        {
-            try
-            {
-                //
-                TextProtocol tp = new TextProtocol();
-                tp.Parse(msg);
-                string event1 = tp.GetString("event");
-
-                switch (event1)
-                {                   
-                    case "EVT_RECV_CUSTOM_DATA":
-                        UpdataUnlockState();
-                        break;
-                    case "EVT_SnapAck":
-                        break;
-                    case "EVT_StartStream":
-                        TimeStarts();
-                        break;
-                }
-            }
-            catch (Exception e)
-            {
-                string error = e.Message;
-            }
-        }
-
-        public bool OnTouch(View v, MotionEvent e)
-        {
-            if (e.Action == MotionEventActions.Down)
-            {
-                if (v.Equals(rlCall))
-                {
-                    tvCall.Selected = true;
-                }
-                else if (v.Equals(rlHangup))
-                {
-                    tvHangup.Selected = true;
-                }
-                else if (v.Equals(imgUnlock))
-                {
-                    imgUnlock.Selected = true;
-                }
-                else if(v.Equals(imgScreenshot))
-                {
-                    imgScreenshot.Selected = true;
-                }
-            }
-            else if (e.Action == MotionEventActions.Up)
-            {
-                if (v.Equals(rlCall))
-                {
-                    tvCall.Selected = false;
-                }
-                else if (v.Equals(rlHangup))
-                {
-                    tvHangup.Selected = false;
-                }
-                else if (v.Equals(imgUnlock))
-                {
-                    imgUnlock.Selected = false;
-                }
-                else if (v.Equals(imgScreenshot))
-                {
-                    imgScreenshot.Selected = false;
-                }
-            }
-            return false;
-        }
-
-        public void OnClick(View v)
-        {
-            if (v.Equals(rlCall))
-            {
-                //鎺ユ敹鏉ョ數
-                if (mPhone != null)
-                {
-                    if (mPhone.IsRinging)
-                    {
-                        string UserData = "user text";
-                        //娉ㄦ剰锛歊equestAudio 璇锋眰瀵规柟闊抽锛孯equestVideo璇锋眰瀵规柟瑙嗛 SendAudio鍙戦�佹湰鍦伴煶棰� SendVideo 鍙戦�佹湰鍦拌棰� 涓�鑸棬鍙d笉鎺ユ敹鍒拌棰戯紝鎵�浠ユ渶濂借缃�0锛屽噺灏戞祦閲忔秷鑰�
-                        string param = string.Format("RequestAudio=1\r\n" + "RequestVideo=1\r\n" + "SendAudio=1\r\n" + "SendVideo=1r\n" + "UserData=%s\r\n", UserData);
-                        mPhone.AcceptRing(param);
-                    }
-                }
-                rlCall.Visibility = ViewStates.Gone;
-            }
-            else if (v.Equals(rlHangup))
-            {
-                if (mPhone != null)
-                {
-                    mPhone.HangUp();
-                    TimeEnd();
-                }
-                Activity.Finish();
-            }
-            else if (v.Equals(imgScreenshot))
-            {
-                //鏈夎棰戣繃鏉ュ彲璋冪敤姝ゆ帴鍙h繘琛屾媿鐓�
-                if (mPhone != null)
-                {
-                    //鏈夎棰戣繃鏉ュ彲璋冪敤姝ゆ帴鍙h繘琛屾媿鐓�
-                    if (mPhone != null)
-                    {
-
-                        SimpleDateFormat format = new SimpleDateFormat("yyyyMMddHHmmss");
-                        string time = format.Format(new Date(SystemClock.CurrentThreadTimeMillis()));
-
-                        string ss = Android.OS.Environment.GetExternalStoragePublicDirectory(Android.OS.Environment.DirectoryPictures).AbsolutePath;
-                        string path = ss + "/" + time + ".jpg";
-                        mPhone.Snap(path);
-                    }
-                }
-            }
-            else if (v.Equals(imgUnlock))
-            {
-                Unlock();
-            }
-        }
-    }
-}
diff --git a/ZigbeeApp/GateWay.Droid/FengLinVideo/Interface/VideoState.cs b/ZigbeeApp/GateWay.Droid/FengLinVideo/Interface/VideoState.cs
deleted file mode 100755
index 28f9670..0000000
--- a/ZigbeeApp/GateWay.Droid/FengLinVideo/Interface/VideoState.cs
+++ /dev/null
@@ -1,8 +0,0 @@
-锘縰sing System;
-namespace GateWay.Droid.FengLinVideo.Interface
-{
-    public interface VideoState
-    {
-        void onPhoneEvent(string msg);
-    }
-}
diff --git a/ZigbeeApp/GateWay.Droid/FengLinVideo/widget/TipDiaglog.cs b/ZigbeeApp/GateWay.Droid/FengLinVideo/widget/TipDiaglog.cs
deleted file mode 100755
index 6073b6d..0000000
--- a/ZigbeeApp/GateWay.Droid/FengLinVideo/widget/TipDiaglog.cs
+++ /dev/null
@@ -1,142 +0,0 @@
-锘縰sing System;
-using Android.App;
-using Android.Content;
-using Android.Graphics;
-using Android.Views;
-using Android.Widget;
-
-namespace GateWay.Droid.FengLinVideo.widget
-{
-    public class TipDiaglog : Dialog, View.IOnClickListener, View.IOnTouchListener
-    {
-        private Context mContext = null;
-
-        private string titleText = "鎻愮ず";
-        private string contentText = "";
-        private string confirmText = "纭";
-        private bool isClose = false;
-
-        private TextView contentView = null;
-        private TextView titleView = null;
-        private TextView okView = null;
-        public object Tag = null;
-        private OnConfirmClickListener onConfirmClickListener;
-
-        public TipDiaglog(Context context) : base(context, Resource.Style.DialogTheme)
-        {
-            this.mContext = context;
-        }
-
-        public void SetAutoClose(bool bol)
-        {
-            this.isClose = bol;
-        }
-
-        public void SetTitleText(string _titleText)
-        {
-            titleText = _titleText;
-            if (titleView != null)
-            {
-                titleView.SetText(titleText, null);                
-            }
-        }
-
-        public void SetContentText(string _contentText)
-        {
-            contentText = _contentText;
-            if (contentView != null)
-            {
-                contentView.SetText(contentText, null);
-            }
-        }
-
-        public void SetConfirmText(string text)
-        {
-            confirmText = text;
-            if (okView != null)
-            {
-                okView.SetText(confirmText, null);
-            }
-        }
-
-        public override void Create()
-        {
-            base.Create();
-
-            try
-            {
-                SetContentView(Resource.Layout.dialog_tip);
-
-                contentView = (TextView)FindViewById(Resource.Id.tv_content);
-                titleView = (TextView)FindViewById(Resource.Id.tv_title);
-                okView = (TextView)FindViewById(Resource.Id.tv_ok);
-
-                contentView.SetText(contentText, null);
-                titleView.SetText(titleText, null);
-                okView.SetText(confirmText, null);
-
-                okView.SetOnTouchListener(this);
-                okView.SetOnClickListener(this);
-            }
-            catch (Exception e)
-            {
-                string error = e.Message;
-            }
-        }
-
-        public override void OnWindowFocusChanged(bool hasFocus)
-        {
-            base.OnWindowFocusChanged(hasFocus);
-
-            try
-            {
-                Display display = ((Activity)mContext).WindowManager.DefaultDisplay;
-                
-                WindowManagerLayoutParams p = Window.Attributes;
-                Point point = new Point();
-                display.GetSize(point);
-                p.Width = (int)(point.X * 0.7);                
-                Window.SetGravity(GravityFlags.Center);
-            }
-            catch (Exception e)
-            {
-                string ss = e.Message;
-            }
-        }
-
-        public void SetConfirmClickListener(OnConfirmClickListener l)
-        {
-            onConfirmClickListener = l;
-        }
-
-        public void OnClick(View v)
-        {
-            if (v.Equals(okView))
-            {
-                if (onConfirmClickListener != null)
-                    onConfirmClickListener.onSureClick(this, v, isClose);
-            }
-        }
-
-        public bool OnTouch(View v, MotionEvent e)
-        {
-            if (e.Action == MotionEventActions.Down)
-            {
-                v.SetBackgroundResource(Resource.Drawable.sure_background_sel);
-            }
-            else if (e.Action == MotionEventActions.Up)
-            {
-                v.SetBackgroundResource(Resource.Drawable.sure_background_def);
-            }
-
-            return false;
-
-        }
-
-        public interface OnConfirmClickListener
-        {
-            void onSureClick(TipDiaglog dialoog, View v,bool bol);
-        }
-
-    }
-}
diff --git a/ZigbeeApp/GateWay.Droid/GateWay.Droid.csproj b/ZigbeeApp/GateWay.Droid/GateWay.Droid.csproj
index 4e7d5db..b974440 100644
--- a/ZigbeeApp/GateWay.Droid/GateWay.Droid.csproj
+++ b/ZigbeeApp/GateWay.Droid/GateWay.Droid.csproj
@@ -44,6 +44,7 @@
     <AndroidEnableProfiledAot>false</AndroidEnableProfiledAot>
     <BundleAssemblies>false</BundleAssemblies>
     <CheckForOverflowUnderflow>true</CheckForOverflowUnderflow>
+    <AndroidKeyStore></AndroidKeyStore>
   </PropertyGroup>
   <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
     <DebugSymbols>true</DebugSymbols>
@@ -63,6 +64,8 @@
     <BundleAssemblies>false</BundleAssemblies>
     <AndroidDexTool>d8</AndroidDexTool>
     <AndroidUseAapt2>false</AndroidUseAapt2>
+    <AndroidKeyStore></AndroidKeyStore>
+    <AndroidSigningKeyStore>/Users/liaoshaosheng/Desktop/璇佷功/Evoyo Home.keystore</AndroidSigningKeyStore>
   </PropertyGroup>
   <ItemGroup>
     <Reference Include="LeakCanary, Version=1.0.0.0, Culture=neutral, processorArchitecture=MSIL">
@@ -73,24 +76,6 @@
     </Reference>
     <Reference Include="LeakCanary.Watcher, Version=1.5.1.0, Culture=neutral, processorArchitecture=MSIL">
       <HintPath>..\packages\LeakCanaryBinding.1.5.1.1\lib\MonoAndroid10\LeakCanary.Watcher.dll</HintPath>
-    </Reference>
-    <Reference Include="Microsoft.AppCenter, Version=0.0.0.0, Culture=neutral, processorArchitecture=MSIL">
-      <HintPath>..\packages\Microsoft.AppCenter.1.14.0\lib\MonoAndroid403\Microsoft.AppCenter.dll</HintPath>
-    </Reference>
-    <Reference Include="Microsoft.AppCenter.Analytics, Version=0.0.0.0, Culture=neutral, processorArchitecture=MSIL">
-      <HintPath>..\packages\Microsoft.AppCenter.Analytics.1.14.0\lib\MonoAndroid403\Microsoft.AppCenter.Analytics.dll</HintPath>
-    </Reference>
-    <Reference Include="Microsoft.AppCenter.Analytics.Android.Bindings, Version=0.0.0.0, Culture=neutral, processorArchitecture=MSIL">
-      <HintPath>..\packages\Microsoft.AppCenter.Analytics.1.14.0\lib\MonoAndroid403\Microsoft.AppCenter.Analytics.Android.Bindings.dll</HintPath>
-    </Reference>
-    <Reference Include="Microsoft.AppCenter.Android.Bindings, Version=0.0.0.0, Culture=neutral, processorArchitecture=MSIL">
-      <HintPath>..\packages\Microsoft.AppCenter.1.14.0\lib\MonoAndroid403\Microsoft.AppCenter.Android.Bindings.dll</HintPath>
-    </Reference>
-    <Reference Include="Microsoft.AppCenter.Crashes, Version=0.0.0.0, Culture=neutral, processorArchitecture=MSIL">
-      <HintPath>..\packages\Microsoft.AppCenter.Crashes.1.14.0\lib\MonoAndroid403\Microsoft.AppCenter.Crashes.dll</HintPath>
-    </Reference>
-    <Reference Include="Microsoft.AppCenter.Crashes.Android.Bindings, Version=0.0.0.0, Culture=neutral, processorArchitecture=MSIL">
-      <HintPath>..\packages\Microsoft.AppCenter.Crashes.1.14.0\lib\MonoAndroid403\Microsoft.AppCenter.Crashes.Android.Bindings.dll</HintPath>
     </Reference>
     <Reference Include="Shared.Droid">
       <HintPath>..\Shared\DLL\Android\Shared.Droid.dll</HintPath>
@@ -119,30 +104,6 @@
     </Reference>
     <Reference Include="System.IO.Compression" />
     <Reference Include="System.Net.Http" />
-    <Reference Include="MQTTnet">
-      <HintPath>..\packages\MQTTnet.3.0.8\lib\netstandard2.0\MQTTnet.dll</HintPath>
-    </Reference>
-    <Reference Include="Microsoft.AppCenter.Android.Bindings">
-      <HintPath>..\packages\Microsoft.AppCenter.1.14.0\lib\MonoAndroid403\Microsoft.AppCenter.Android.Bindings.dll</HintPath>
-    </Reference>
-    <Reference Include="Microsoft.AppCenter">
-      <HintPath>..\packages\Microsoft.AppCenter.1.14.0\lib\MonoAndroid403\Microsoft.AppCenter.dll</HintPath>
-    </Reference>
-    <Reference Include="Microsoft.AppCenter.Crashes.Android.Bindings">
-      <HintPath>..\packages\Microsoft.AppCenter.Crashes.1.14.0\lib\MonoAndroid403\Microsoft.AppCenter.Crashes.Android.Bindings.dll</HintPath>
-    </Reference>
-    <Reference Include="Microsoft.AppCenter.Crashes">
-      <HintPath>..\packages\Microsoft.AppCenter.Crashes.1.14.0\lib\MonoAndroid403\Microsoft.AppCenter.Crashes.dll</HintPath>
-    </Reference>
-    <Reference Include="Microsoft.AppCenter.Analytics.Android.Bindings">
-      <HintPath>..\packages\Microsoft.AppCenter.Analytics.1.14.0\lib\MonoAndroid403\Microsoft.AppCenter.Analytics.Android.Bindings.dll</HintPath>
-    </Reference>
-    <Reference Include="Microsoft.AppCenter.Analytics">
-      <HintPath>..\packages\Microsoft.AppCenter.Analytics.1.14.0\lib\MonoAndroid403\Microsoft.AppCenter.Analytics.dll</HintPath>
-    </Reference>
-    <Reference Include="testLibs">
-      <HintPath>..\Shared\DLL\Android\testLibs.dll</HintPath>
-    </Reference>
     <Reference Include="Xamarin.Android.Arch.Core.Common">
       <HintPath>..\Shared\DLL\Android\Xamarin.Android.Arch.Core.Common.dll</HintPath>
     </Reference>
@@ -188,6 +149,27 @@
     <Reference Include="Xamarin.Android.Support.Vector.Drawable">
       <HintPath>..\Shared\DLL\Android\Xamarin.Android.Support.Vector.Drawable.dll</HintPath>
     </Reference>
+    <Reference Include="Microsoft.AppCenter.Android.Bindings">
+      <HintPath>..\packages\Microsoft.AppCenter.1.14.0\lib\MonoAndroid403\Microsoft.AppCenter.Android.Bindings.dll</HintPath>
+    </Reference>
+    <Reference Include="Microsoft.AppCenter">
+      <HintPath>..\packages\Microsoft.AppCenter.1.14.0\lib\MonoAndroid403\Microsoft.AppCenter.dll</HintPath>
+    </Reference>
+    <Reference Include="Microsoft.AppCenter.Analytics.Android.Bindings">
+      <HintPath>..\packages\Microsoft.AppCenter.Analytics.1.14.0\lib\MonoAndroid403\Microsoft.AppCenter.Analytics.Android.Bindings.dll</HintPath>
+    </Reference>
+    <Reference Include="Microsoft.AppCenter.Analytics">
+      <HintPath>..\packages\Microsoft.AppCenter.Analytics.1.14.0\lib\MonoAndroid403\Microsoft.AppCenter.Analytics.dll</HintPath>
+    </Reference>
+    <Reference Include="Microsoft.AppCenter.Crashes.Android.Bindings">
+      <HintPath>..\packages\Microsoft.AppCenter.Crashes.1.14.0\lib\MonoAndroid403\Microsoft.AppCenter.Crashes.Android.Bindings.dll</HintPath>
+    </Reference>
+    <Reference Include="Microsoft.AppCenter.Crashes">
+      <HintPath>..\packages\Microsoft.AppCenter.Crashes.1.14.0\lib\MonoAndroid403\Microsoft.AppCenter.Crashes.dll</HintPath>
+    </Reference>
+    <Reference Include="MQTTnet">
+      <HintPath>..\packages\MQTTnet.3.0.8\lib\netstandard2.0\MQTTnet.dll</HintPath>
+    </Reference>
     <Reference Include="BouncyCastle.Crypto">
       <HintPath>..\packages\BouncyCastle.1.8.1\lib\BouncyCastle.Crypto.dll</HintPath>
     </Reference>
@@ -206,15 +188,14 @@
   </ItemGroup>
   <ItemGroup>
     <Compile Include="Application.cs" />
-    <Compile Include="FengLinVideo\Forms\MonitorFragment.cs" />
-    <Compile Include="FengLinVideo\Forms\ReverseCallFragment.cs" />
-    <Compile Include="FengLinVideo\Interface\VideoState.cs" />
-    <Compile Include="FengLinVideo\widget\TipDiaglog.cs" />
     <Compile Include="Resources\Resource.designer.cs" />
     <Compile Include="Properties\AssemblyInfo.cs" />
-    <Compile Include="VideoActivity.cs" />
     <Compile Include="ZXing\ZXingCustomScanView.cs" />
     <Compile Include="ZXing\ZXingOverlayView.cs" />
+    <Compile Include="JPush\JPushFirmBroadcast.cs" />
+    <Compile Include="JPush\JPushOpenClickActivity.cs" />
+    <Compile Include="JPush\JpushNotificationReceiver.cs" />
+    <Compile Include="JPush\JPushService.cs" />
   </ItemGroup>
   <ItemGroup>
     <None Include="app.config" />
@@ -224,6 +205,8 @@
     <None Include="Properties\AndroidManifest.xml">
       <SubType>Designer</SubType>
     </None>
+    <AndroidAsset Include="Assets\Phone\Center\FaceManagement.png" />
+    <AndroidAsset Include="Assets\agconnect-services.json" />
   </ItemGroup>
   <ItemGroup>
     <AndroidResource Include="Resources\layout\Main.axml" />
@@ -360,6 +343,10 @@
       </SubType>
       <Generator>
       </Generator>
+    </AndroidResource>
+    <AndroidResource Include="Resources\xml\network_security_config.xml">
+      <SubType></SubType>
+      <Generator></Generator>
     </AndroidResource>
   </ItemGroup>
   <ItemGroup>
@@ -2717,6 +2704,17 @@
       <Project>{930FE62C-60E3-4AB6-8645-CAD9E33ADC45}</Project>
       <Name>AndriodBluetooth</Name>
     </ProjectReference>
+    <ProjectReference Include="..\SPhoneLib\SPhoneLib.csproj">
+      <Project>{A6CA3387-58A7-4819-992F-C800C8839AFB}</Project>
+      <Name>SPhoneLib</Name>
+    </ProjectReference>
+    <ProjectReference Include="..\Shared.Droid.JPush\Shared.Droid.JPush.csproj">
+      <Project>{06B9C874-B9B2-4417-8280-B321F966E46B}</Project>
+      <Name>Shared.Droid.JPush</Name>
+    </ProjectReference>
+  </ItemGroup>
+  <ItemGroup>
+    <Folder Include="JPush\" />
   </ItemGroup>
   <Import Project="..\Shared\Shared.projitems" Label="Shared" Condition="Exists('..\Shared\Shared.projitems')" />
   <Import Project="$(MSBuildExtensionsPath)\Xamarin\Android\Xamarin.Android.CSharp.targets" />
diff --git a/ZigbeeApp/GateWay.Droid/JPush/JPushFirmBroadcast.cs b/ZigbeeApp/GateWay.Droid/JPush/JPushFirmBroadcast.cs
new file mode 100644
index 0000000..0b3bcec
--- /dev/null
+++ b/ZigbeeApp/GateWay.Droid/JPush/JPushFirmBroadcast.cs
@@ -0,0 +1,57 @@
+锘�
+using Android.Content;
+
+using System;
+
+using CN.Jpush.Android.Api;
+using GateWay.Droid.JPush;
+using com.hdl.home;
+using Android.OS;
+
+namespace HDL_ON_Android
+{
+
+    [BroadcastReceiver(Enabled = true, Exported = false, Name = "com.evoyo.home.JPushFirmBroadcast")]
+    [Android.App.IntentFilter(new string[]
+    {
+        "com.evoyo.home.jpush.firm.NOTIFICATION_OPENED"
+    },
+     Categories = new string[]
+    {
+        Intent.CategoryDefault
+    })]
+    class JPushFirmBroadcast : BroadcastReceiver
+    {
+
+        public override void OnReceive(Context context, Intent intent)
+        {
+
+            /* 鐢ㄦ潵鎺ユ敹鍘傚晢鐐瑰嚮閫氱煡娑堟伅锛岄渶瑕佹墦寮�MainActivity 闇�瑕佽嚜琛岃皟鐢�
+             cn.jpush.android.EXTRA,cn.jpush.android.MSG_ID,
+             cn.jpush.android.TYPE_PLATFORM,
+            cn.jpush.android.TITLE,
+            cn.jpush.android.MESSAGE*/
+
+            try
+            {
+                NotificationMessage notificationMessage = new NotificationMessage();
+                string extra = intent.GetStringExtra(JPushInterface.ExtraExtra);
+                string msgId = intent.GetStringExtra(JPushInterface.ExtraMsgId);
+
+                string message = intent.GetStringExtra(JPushInterface.ExtraMessage);
+                string title = intent.GetStringExtra(JPushInterface.ExtraTitle);
+                //  String typePlatform = intent.GetStringExtra(JPushInterface.ExtraTypePlatform);
+
+                notificationMessage.NotificationTitle = title;
+                notificationMessage.NotificationContent = message;
+                notificationMessage.NotificationExtras = extra;
+
+                JpushNotificationReceiver.OpenNotification(context, extra);
+
+            }
+            catch
+            {
+            }
+        }
+    }
+}
\ No newline at end of file
diff --git a/ZigbeeApp/GateWay.Droid/JPush/JPushOpenClickActivity.cs b/ZigbeeApp/GateWay.Droid/JPush/JPushOpenClickActivity.cs
new file mode 100644
index 0000000..0a18a7b
--- /dev/null
+++ b/ZigbeeApp/GateWay.Droid/JPush/JPushOpenClickActivity.cs
@@ -0,0 +1,48 @@
+锘縰sing Android.App;
+using Android.Content;
+using Android.OS;
+
+using Com.Hdl.ON.Jpush.Androidjpush;
+
+using Android.Views;
+
+namespace HDL_ON_Android
+{
+    [Activity( Exported = true, Enabled = true, Name = "com.evoyo.home.JPushOpenClickActivity"
+        , Theme = "@android:style/Theme.Translucent.NoTitleBar")]
+    [IntentFilter(new string[] { "com.evoyo.home.JPushOpenClickActivity", Intent.ActionView },
+         Categories = new string[] {  "com.evoyo.home",Intent.CategoryDefault })]
+    public class JPushOpenClickActivity : Activity
+    {
+        protected override void OnCreate(Bundle savedInstanceState)
+        {
+            base.OnCreate(savedInstanceState);
+            View v = new View(this);
+            SetContentView(v);
+            HandleOpenClick(Intent);
+
+        }
+
+        protected void HandleOpenClick(Intent intent)
+        {
+            Intent broadcastIntent = new Intent();
+            broadcastIntent.SetAction("com.evoyo.home.jpush.firm.NOTIFICATION_OPENED");
+            ComponentName componentName = new ComponentName(PackageName, "com.evoyo.home.JPushFirmBroadcast");
+
+            if (Build.VERSION.SdkInt >= BuildVersionCodes.O)
+            {
+                broadcastIntent.SetComponent(componentName);
+            }
+            FirmOpenClickHelper.Instance.HandleOpenClick(this, intent, broadcastIntent);
+            Finish();
+
+        }
+
+        protected override void OnNewIntent(Intent intent)
+        {
+            base.OnNewIntent(intent);
+            HandleOpenClick(intent);
+
+        }
+    }
+}
\ No newline at end of file
diff --git a/ZigbeeApp/GateWay.Droid/JPush/JPushService.cs b/ZigbeeApp/GateWay.Droid/JPush/JPushService.cs
new file mode 100644
index 0000000..123e202
--- /dev/null
+++ b/ZigbeeApp/GateWay.Droid/JPush/JPushService.cs
@@ -0,0 +1,11 @@
+锘縰sing System;
+using CN.Jpush.Android.Service;
+
+namespace GateWay.Droid.JPush
+{
+    [Android.App.Service(Enabled = true, Exported = true, Process = ":pushcore")]
+    [Android.App.IntentFilter(new string[] { "cn.jiguang.user.service.action" })]
+    public class JPushService: JCommonService
+    {
+    }
+}
\ No newline at end of file
diff --git a/ZigbeeApp/GateWay.Droid/JPush/JpushNotificationReceiver.cs b/ZigbeeApp/GateWay.Droid/JPush/JpushNotificationReceiver.cs
new file mode 100644
index 0000000..18b0cd8
--- /dev/null
+++ b/ZigbeeApp/GateWay.Droid/JPush/JpushNotificationReceiver.cs
@@ -0,0 +1,164 @@
+锘縰sing System;
+using Android.App;
+using Android.Content;
+using Android.OS;
+using CN.Jpush.Android.Api;
+using CN.Jpush.Android.Service;
+using Shared;
+using static Shared.Common.SendDataToServer;
+
+namespace GateWay.Droid.JPush
+{
+    [BroadcastReceiver(Enabled = true, Exported = false)]
+    [IntentFilter(new string[]
+    {
+        "cn.jpush.android.intent.RECEIVE_MESSAGE"
+    },
+    Categories = new string[]
+    {
+        "com.evoyo.home"
+    })]
+    public class JpushNotificationReceiver : JPushMessageReceiver
+    {
+        private static string TAG = "JpushNotificationReceiver";
+        private NotificationManager nm;
+        static string ACTION = "android.intent.action.BOOT_COMPLETED";
+
+        /// <summary>
+        /// 鐢ㄦ埛鐐瑰嚮鎵撳紑浜嗛�氱煡
+        /// 鐐瑰嚮閫氱煡鍥炶皟
+        /// </summary>
+        /// <param name="context"></param>
+        /// <param name="notificationMessage"></param>
+        public override void OnNotifyMessageOpened(Context context, NotificationMessage notificationMessage)
+        {
+            //2020-12-23 瑙e喅鐐瑰嚮閫氱煡鏍忔墦寮�涓嶄簡APP闂
+            var pushMes = new JPushMessageInfo()
+            {
+                Title = notificationMessage.NotificationTitle,
+                Content = notificationMessage.NotificationContent,
+                Extras = notificationMessage.NotificationExtras
+            };
+            OpenNotification(context, pushMes.Extras);
+        }
+
+        /// <summary>
+        /// 鏀跺埌閫氱煡鍥炶皟
+        /// </summary>
+        /// <param name="p0"></param>
+        /// <param name="p1"></param>
+        public override void OnNotifyMessageArrived(Context context, NotificationMessage notificationMessage)
+        {
+            base.OnNotifyMessageArrived(context, notificationMessage);
+
+            var pushMes = new JPushMessageInfo()
+            {
+                Title = notificationMessage.NotificationTitle,
+                Content = notificationMessage.NotificationContent,
+                Extras = notificationMessage.NotificationExtras
+            };
+
+            var jpushExpandData = GetJPushExpandData(pushMes);
+            if (jpushExpandData != null && jpushExpandData.messageType != null)
+            {
+                pushMes.messageType = jpushExpandData.messageType;
+                pushMes.expantContent = jpushExpandData.expantContent;
+                pushMes.HomeId = jpushExpandData.homeId;
+            }
+
+            ReceivingNotification(context, pushMes.Title, pushMes.Content, pushMes.Extras);
+        }
+
+        /// <summary>
+        /// 鑷畾涔夐�氱煡
+        /// </summary>
+        /// <param name="p0"></param>
+        /// <param name="p1"></param>
+        public override void OnMessage(Context p0, CustomMessage p1)
+        {
+            base.OnMessage(p0, p1);
+        }
+
+        /// <summary>
+        /// 娉ㄥ唽鎴愬姛鍥炶皟
+        /// </summary>
+        /// <param name="p0"></param>
+        /// <param name="p1"></param>
+        public override void OnRegister(Context context, string regId)
+        {
+            base.OnRegister(context, regId);
+            Shared.Common.Config.Instance.RegistrationID = regId;
+            Shared.Common.Config.Instance.Save();
+            Shared.Phone.UserCenter.HdlLogLogic.Current.WriteOtherText(Shared.Phone.UserCenter.DirNameResourse.JiguangFile, "receive2:" + regId, false, true);
+        }
+
+        /// <summary>
+        /// 
+        /// </summary>
+        /// <param name="pushMes"></param>
+        /// <returns></returns>
+        static ExpandData GetJPushExpandData(JPushMessageInfo pushMes)
+        {
+            try
+            {
+                if (pushMes.Extras != null)
+                {
+                    var jpushExpandData = Newtonsoft.Json.JsonConvert.DeserializeObject<JPushExpandData>(pushMes.Extras.ToString());
+                    return Newtonsoft.Json.JsonConvert.DeserializeObject<ExpandData>(jpushExpandData.expandData);
+                }
+                return null;
+            }
+            catch
+            {
+                return null;
+            }
+        }
+
+        /// <summary>
+        /// 鎺ユ敹娑堟伅閫氱煡
+        /// </summary>
+        /// <param name="context">Context.</param>
+        /// <param name="bundle">Bundle.</param>
+        private static void ReceivingNotification(Context context, string title, string message, string extras)
+        {
+            System.Console.WriteLine(TAG, " title : " + title);
+            System.Console.WriteLine(TAG, "message : " + message);
+            System.Console.WriteLine(TAG, "extras : " + extras);
+
+            //澶勭悊鏋佸厜娑堟伅鎺ㄩ�佺殑閫昏緫鍑芥暟
+            Shared.Phone.UserCenter.HdlJiguangMsgPushLogic.Current.AdjustJiguangMsgPush(title, message, extras);
+        }
+
+        /// <summary>
+        /// 鎵撳紑娑堟伅鏄剧ず鐣岄潰
+        /// </summary>
+        /// <param name="context">Context.</param>
+        /// <param name="bundle">Bundle.</param>
+        public static void OpenNotification(Context context, string extras)
+        {
+            Intent i = new Intent(context, typeof(BaseActivity));//Intent intent=new Intent( 璧峰缁勪欢瀵硅薄 , 鐩爣 Service.class);
+            i.SetFlags(ActivityFlags.NewTask);
+            context.StartActivity(i);
+            try
+            {
+                VideoMethod(extras);
+            }
+            catch (Exception e)
+            {
+                System.Console.WriteLine(TAG, "Unexpected: extras is not a valid json", e);
+                return;
+            }
+        }
+
+        /// <summary>
+        /// android閫氱煡鏍忕偣鍑绘墦寮�鍙瀵硅鐨勬柟娉�
+        /// </summary>
+        /// <param name="hiddenJson">浜戠鎺ㄨ繃鏉ョ殑鏁版嵁</param>
+        private static void VideoMethod(string hiddenJson)
+        {
+            Com.Evoyohome.Sphonelibs.Global.Global.OpenCallActivity(null);
+        }
+
+       
+    }
+}
diff --git a/ZigbeeApp/GateWay.Droid/Properties/AndroidManifest.xml b/ZigbeeApp/GateWay.Droid/Properties/AndroidManifest.xml
index 969d77b..d69f35b 100644
--- a/ZigbeeApp/GateWay.Droid/Properties/AndroidManifest.xml
+++ b/ZigbeeApp/GateWay.Droid/Properties/AndroidManifest.xml
@@ -1,6 +1,6 @@
 锘�<?xml version="1.0" encoding="utf-8"?>
-<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.evoyo.home" android:versionCode="0121011401" android:installLocation="auto" android:versionName="1.1.0121011401">
-	<uses-sdk android:minSdkVersion="23" android:targetSdkVersion="26" />
+<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.evoyo.home" android:versionCode="0122082601" android:installLocation="auto" android:versionName="1.1.0122082601">
+	<uses-sdk android:minSdkVersion="21" android:targetSdkVersion="26" />
 	<permission android:name="com.evoyo.home.permission.JPUSH_MESSAGE" android:protectionLevel="signature" />
 	<uses-permission android:name="android.permission.WAKE_LOCK" />
 	<!--8.0鏉冮檺-->
@@ -97,22 +97,22 @@
 	<uses-permission android:name="android.permission.GET_TASKS" />
 	<uses-permission android:name="android.permission.AUTHENTICATE_ACCOUNTS" />
 	<!-- 鏋佸厜鎺ㄩ�佺粨鏉� -->
-	<application android:allowBackup="true" android:largeHeap="true" android:persistent="true" android:label="Evoyo Home" android:icon="@drawable/Icon">
+	<application android:allowBackup="true" android:largeHeap="true" android:persistent="true" android:label="Evoyo Home" android:icon="@drawable/Icon" android:networkSecurityConfig="@xml/network_security_config">
 		<!-- 鑷姩鏇存柊 -->
 		<provider android:name="android.support.v4.content.FileProvider" android:authorities="com.evoyo.home.fileProvider" android:grantUriPermissions="true" android:exported="false">
 			<meta-data android:name="android.support.FILE_PROVIDER_PATHS" android:resource="@xml/file_paths" />
 		</provider>
 		<!--鑷姩鏇存柊缁撴潫-->
+		<!-- 璁剧疆楂樺痉鍦板浘key -->
+		<meta-data android:name="com.amap.api.v2.apikey" android:value="9901dd06e30b229efdd4c5bf5e076224" />
+		<!--  </>鍊兼潵鑷紑鍙戣�呭钩鍙板彇寰楃殑AppKey-->
+		<!-- 璁剧疆楂樺痉鍦板浘key -->
+		<meta-data android:name="com.amap.api.v2.apikey" android:value="f78f951092602db3962811e736758559" />
 		<!--鏋佸厜鎺ㄩ��-->
-		<activity android:name="cn.jpush.android.ui.PopWinActivity" android:exported="false" />
-		<activity android:name="cn.jpush.android.ui.PushActivity" android:configChanges="orientation|keyboardHidden" android:theme="@android:style/Theme.NoTitleBar" android:exported="false">
-			<intent-filter>
-				<action android:name="cn.jpush.android.ui.PushActivity" />
-				<category android:name="android.intent.category.DEFAULT" />
-				<category android:name="com.evoyo.home" />
-			</intent-filter>
-		</activity>
-		<service android:name="cn.jpush.android.service.PushService" android:process=":mult">
+		<provider android:name="Shared.Droid.JPush.HmsContentProvider" android:authorities="${applicationId}.hmspushprovider" android:exported="false"></provider>
+		<!-- Required SDK 鏍稿績鍔熻兘-->
+		<!-- 鍙厤缃� android:process 鍙傛暟灏� PushService 鏀惧湪鍏朵粬杩涚▼涓� -->
+		<service android:name="cn.jpush.android.service.PushService" android:enabled="true" android:exported="false">
 			<intent-filter>
 				<action android:name="cn.jpush.android.intent.REGISTER" />
 				<action android:name="cn.jpush.android.intent.REPORT" />
@@ -121,8 +121,10 @@
 			</intent-filter>
 		</service>
 		<!-- since 3.0.9 Required SDK 鏍稿績鍔熻兘-->
-		<provider android:authorities="com.evoyo.home.DataProvider" android:name="cn.jpush.android.service.DataProvider" android:process=":pushcore" android:exported="false" />
-		<service android:name="cn.jpush.android.service.DaemonService" android:enabled="true" android:exported="true">
+		<provider android:authorities="com.evoyo.home.DataProvider" android:name="cn.jpush.android.service.DataProvider" android:exported="true" />
+		<!-- since 1.8.0 option 鍙�夐」銆傜敤浜庡悓涓�璁惧涓笉鍚屽簲鐢ㄧ殑 JPush 鏈嶅姟鐩镐簰鎷夎捣鐨勫姛鑳姐�� -->
+		<!-- 鑻ヤ笉鍚敤璇ュ姛鑳藉彲鍒犻櫎璇ョ粍浠讹紝鎴栨妸 enabled 璁剧疆鎴� false 锛汚pp 涓嶄細琚叾浠� App 鎷夎捣锛屼絾浼氭媺璧峰叾浠栫殑 App銆� -->
+		<service android:name="cn.jpush.android.service.DaemonService" android:enabled="false" android:exported="true">
 			<intent-filter>
 				<action android:name="cn.jpush.android.intent.DaemonService" />
 				<category android:name="com.evoyo.home" />
@@ -130,6 +132,7 @@
 		</service>
 		<!-- since 3.1.0 Required SDK 鏍稿績鍔熻兘-->
 		<provider android:authorities="com.evoyo.home.DownloadProvider" android:name="cn.jpush.android.service.DownloadProvider" android:exported="true" />
+		<!-- Required SDK 鏍稿績鍔熻兘-->
 		<receiver android:name="cn.jpush.android.service.PushReceiver" android:enabled="true">
 			<intent-filter android:priority="1000">
 				<action android:name="cn.jpush.android.intent.NOTIFICATION_RECEIVED_PROXY" />
@@ -146,14 +149,58 @@
 				<data android:scheme="package" />
 			</intent-filter>
 		</receiver>
-		<receiver android:name="cn.jpush.android.service.AlarmReceiver" android:exported="false" />
-		<!-- User defined.  For test only  鐢ㄦ埛鑷畾涔夌殑骞挎挱鎺ユ敹鍣�-->
-		<!-- Required  . Enable it you can get statistics data with channel -->
+		<!-- Required SDK 鏍稿績鍔熻兘-->
+		<!-- 鑻ユ偍鐨勪笟鍔′腑鏈変娇鐢ㄦ瀬鍏夊瘜濯掍綋鍔熻兘锛屾垨鑰呮瀬鍏夋棭涓婂ソ鍔熻兘锛岄渶瑕佹妸姝� Activity 鐨� exported 璁剧疆鎴� true銆� -->
+		<activity android:name="cn.jpush.android.ui.PushActivity" android:configChanges="orientation|keyboardHidden" android:theme="@android:style/Theme.NoTitleBar" android:exported="false">
+			<intent-filter>
+				<action android:name="cn.jpush.android.ui.PushActivity" />
+				<category android:name="android.intent.category.DEFAULT" />
+				<category android:name="com.evoyo.home" />
+			</intent-filter>
+		</activity>
+		<!-- SDK 鏍稿績鍔熻兘-->
+		<!-- 鑻ユ偍鐨勪笟鍔′腑鏈変娇鐢ㄦ瀬鍏夊瘜濯掍綋鍔熻兘锛屾垨鑰呮瀬鍏夋棭涓婂ソ鍔熻兘锛岄渶瑕佹妸姝� Activity 鐨� exported 璁剧疆鎴� true銆� -->
+		<activity android:name="cn.jpush.android.ui.PopWinActivity" android:configChanges="orientation|keyboardHidden" android:exported="false" android:theme="@style/DialogTheme">
+			<intent-filter>
+				<category android:name="android.intent.category.DEFAULT" />
+				<category android:name="com.evoyo.home" />
+			</intent-filter>
+		</activity>
+		<!-- since 3.6.0 -->
+		<activity android:name="cn.jpush.android.service.DActivity" android:enabled="true" android:exported="true" android:theme="@android:style/Theme.Translucent.NoTitleBar" android:taskAffinity="jpush.custom">
+			<intent-filter>
+				<action android:name="cn.jpush.android.intent.DActivity" />
+				<category android:name="com.evoyo.home" />
+			</intent-filter>
+		</activity>
+		<!-- Required SDK 鏍稿績鍔熻兘-->
+		<receiver android:name="cn.jpush.android.service.AlarmReceiver" />
+		<!-- 3.5.0鏂板锛岀敤浜庡畾鏃跺睍绀哄姛鑳� -->
+		<receiver android:name="cn.jpush.android.service.SchedulerReceiver" android:exported="false" />
+		<!--Required SDK鏍稿績鍔熻兘 since 3.3.0-->
+		<activity android:name="cn.jpush.android.service.JNotifyActivity" android:exported="true" 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.evoyo.home" />
+			</intent-filter>
+		</activity>
+		<!-- Required. For publish channel feature -->
+		<!-- JPUSH_CHANNEL 鏄负浜嗘柟渚垮紑鍙戣�呯粺璁� APK 鍒嗗彂娓犻亾銆�-->
+		<!-- 渚嬪: -->
+		<!-- 鍙戝埌 Google Play 鐨� APK 鍙互璁剧疆涓� google-play; -->
+		<!-- 鍙戝埌鍏朵粬甯傚満鐨� APK 鍙互璁剧疆涓� xxx-market銆� -->
 		<meta-data android:name="JPUSH_CHANNEL" android:value="developer-default" />
+		<!-- Required. AppKey copied from Portal -->
 		<meta-data android:name="JPUSH_APPKEY" android:value="07cfd3177490173e7c072f49" />
-		<!--  </>鍊兼潵鑷紑鍙戣�呭钩鍙板彇寰楃殑AppKey-->
+		<!--灏忕背-->
+		<meta-data android:name="XIAOMI_APPID" android:value="MI-2882303761518736008" />
+		<meta-data android:name="XIAOMI_APPKEY" android:value="MI-5261873610008" />
+		<meta-data android:name="XIAOMI_AppSecret" android:value="MI-mlKUjKABHKs0P7SZsRggiQ==" />
+		<!--OPPO-->
+		<meta-data android:name="OPPO_APPID" android:value="OP-30396771" />
+		<meta-data android:name="OPPO_APPSECRET" android:value="OP-b7d4d96584164fda88dc53c5aaa58132" />
+		<meta-data android:name="OPPO_APPKEY" android:value="OP-c75e887071964eb3967fc9b3a0e4fab9" />
+		<meta-data android:name="OPPO_MasterSecret" android:value="ffde26276e604358a5c605d2d06b7ce3" />
 		<!-- 鏋佸厜鎺ㄩ�佺粨鏉� -->
-		<!-- 璁剧疆楂樺痉鍦板浘key -->
-		<meta-data android:name="com.amap.api.v2.apikey" android:value="f78f951092602db3962811e736758559" />
 	</application>
 </manifest>
\ No newline at end of file
diff --git a/ZigbeeApp/GateWay.Droid/Resources/Resource.designer.cs b/ZigbeeApp/GateWay.Droid/Resources/Resource.designer.cs
index c920323..71ec8ca 100644
--- a/ZigbeeApp/GateWay.Droid/Resources/Resource.designer.cs
+++ b/ZigbeeApp/GateWay.Droid/Resources/Resource.designer.cs
@@ -14,7 +14,7 @@
 {
 	
 	
-	[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Xamarin.Android.Build.Tasks", "12.2.4.160")]
+	[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Xamarin.Android.Build.Tasks", "12.2.8.165")]
 	public partial class Resource
 	{
 		
@@ -25,6 +25,9 @@
 		
 		public static void UpdateIdValues()
 		{
+			global::ZXing.Mobile.Resource.Id.contentFrame = global::GateWay.Droid.Resource.Id.contentFrame;
+			global::ZXing.Mobile.Resource.Layout.zxingscanneractivitylayout = global::GateWay.Droid.Resource.Layout.zxingscanneractivitylayout;
+			global::ZXing.Mobile.Resource.Layout.zxingscannerfragmentlayout = global::GateWay.Droid.Resource.Layout.zxingscannerfragmentlayout;
 		}
 		
 		public partial class Animation
@@ -287,8 +290,11 @@
 		public partial class Array
 		{
 			
+			// aapt resource value: 0x7f0f0001
+			public const int arc_colors_default = 2131689473;
+			
 			// aapt resource value: 0x7f0f0000
-			public const int arc_colors_default = 2131689472;
+			public const int sc_tunnel_mode_entry_values = 2131689472;
 			
 			static Array()
 			{
@@ -426,56 +432,56 @@
 			// aapt resource value: 0x7f0100c1
 			public const int alphabeticModifiers = 2130772161;
 			
-			// aapt resource value: 0x7f0101a3
-			public const int arc_border_color = 2130772387;
-			
-			// aapt resource value: 0x7f0101a2
-			public const int arc_border_width = 2130772386;
-			
-			// aapt resource value: 0x7f0101a1
-			public const int arc_colors = 2130772385;
-			
-			// aapt resource value: 0x7f0101a4
-			public const int arc_max = 2130772388;
-			
-			// aapt resource value: 0x7f0101a5
-			public const int arc_min = 2130772389;
-			
-			// aapt resource value: 0x7f01019f
-			public const int arc_open_angle = 2130772383;
-			
-			// aapt resource value: 0x7f0101a6
-			public const int arc_progress = 2130772390;
+			// aapt resource value: 0x7f0101af
+			public const int arc_border_color = 2130772399;
 			
 			// aapt resource value: 0x7f0101ae
-			public const int arc_progress_bar_color = 2130772398;
-			
-			// aapt resource value: 0x7f0101af
-			public const int arc_progress_bar_text_unit = 2130772399;
-			
-			// aapt resource value: 0x7f0101a0
-			public const int arc_rotate_angle = 2130772384;
+			public const int arc_border_width = 2130772398;
 			
 			// aapt resource value: 0x7f0101ad
-			public const int arc_shadow_radius = 2130772397;
+			public const int arc_colors = 2130772397;
 			
-			// aapt resource value: 0x7f0101a8
-			public const int arc_thumb_color = 2130772392;
+			// aapt resource value: 0x7f0101b0
+			public const int arc_max = 2130772400;
 			
-			// aapt resource value: 0x7f0101a9
-			public const int arc_thumb_radius = 2130772393;
+			// aapt resource value: 0x7f0101b1
+			public const int arc_min = 2130772401;
 			
 			// aapt resource value: 0x7f0101ab
-			public const int arc_thumb_shadow_color = 2130772395;
+			public const int arc_open_angle = 2130772395;
+			
+			// aapt resource value: 0x7f0101b2
+			public const int arc_progress = 2130772402;
+			
+			// aapt resource value: 0x7f0101ba
+			public const int arc_progress_bar_color = 2130772410;
+			
+			// aapt resource value: 0x7f0101bb
+			public const int arc_progress_bar_text_unit = 2130772411;
+			
+			// aapt resource value: 0x7f0101ac
+			public const int arc_rotate_angle = 2130772396;
+			
+			// aapt resource value: 0x7f0101b9
+			public const int arc_shadow_radius = 2130772409;
+			
+			// aapt resource value: 0x7f0101b4
+			public const int arc_thumb_color = 2130772404;
+			
+			// aapt resource value: 0x7f0101b5
+			public const int arc_thumb_radius = 2130772405;
+			
+			// aapt resource value: 0x7f0101b7
+			public const int arc_thumb_shadow_color = 2130772407;
+			
+			// aapt resource value: 0x7f0101b6
+			public const int arc_thumb_shadow_radius = 2130772406;
+			
+			// aapt resource value: 0x7f0101b3
+			public const int arc_thumb_width = 2130772403;
 			
 			// aapt resource value: 0x7f0101aa
-			public const int arc_thumb_shadow_radius = 2130772394;
-			
-			// aapt resource value: 0x7f0101a7
-			public const int arc_thumb_width = 2130772391;
-			
-			// aapt resource value: 0x7f01019e
-			public const int arc_width = 2130772382;
+			public const int arc_width = 2130772394;
 			
 			// aapt resource value: 0x7f0100ba
 			public const int arrowHeadLength = 2130772154;
@@ -534,11 +540,17 @@
 			// aapt resource value: 0x7f010106
 			public const int behavior_skipCollapsed = 2130772230;
 			
-			// aapt resource value: 0x7f01015a
-			public const int biometricPromptDialogTheme = 2130772314;
+			// aapt resource value: 0x7f010166
+			public const int biometricPromptDialogTheme = 2130772326;
 			
 			// aapt resource value: 0x7f010126
 			public const int borderWidth = 2130772262;
+			
+			// aapt resource value: 0x7f010162
+			public const int border_color = 2130772322;
+			
+			// aapt resource value: 0x7f010161
+			public const int border_width = 2130772321;
 			
 			// aapt resource value: 0x7f010072
 			public const int borderlessButtonStyle = 2130772082;
@@ -669,6 +681,21 @@
 			// aapt resource value: 0x7f010097
 			public const int controlBackground = 2130772119;
 			
+			// aapt resource value: 0x7f01015f
+			public const int corner_bottom_left_radius = 2130772319;
+			
+			// aapt resource value: 0x7f010160
+			public const int corner_bottom_right_radius = 2130772320;
+			
+			// aapt resource value: 0x7f01015c
+			public const int corner_radius = 2130772316;
+			
+			// aapt resource value: 0x7f01015d
+			public const int corner_top_left_radius = 2130772317;
+			
+			// aapt resource value: 0x7f01015e
+			public const int corner_top_right_radius = 2130772318;
+			
 			// aapt resource value: 0x7f010147
 			public const int counterEnabled = 2130772295;
 			
@@ -681,20 +708,20 @@
 			// aapt resource value: 0x7f010149
 			public const int counterTextAppearance = 2130772297;
 			
-			// aapt resource value: 0x7f0101b2
-			public const int curtain_bar_bg_color = 2130772402;
+			// aapt resource value: 0x7f0101be
+			public const int curtain_bar_bg_color = 2130772414;
 			
-			// aapt resource value: 0x7f0101b3
-			public const int curtain_bar_border_color = 2130772403;
+			// aapt resource value: 0x7f0101bf
+			public const int curtain_bar_border_color = 2130772415;
 			
-			// aapt resource value: 0x7f0101b0
-			public const int curtain_bar_color = 2130772400;
+			// aapt resource value: 0x7f0101bc
+			public const int curtain_bar_color = 2130772412;
 			
-			// aapt resource value: 0x7f0101b5
-			public const int curtain_bar_height = 2130772405;
+			// aapt resource value: 0x7f0101c1
+			public const int curtain_bar_height = 2130772417;
 			
-			// aapt resource value: 0x7f0101b4
-			public const int curtain_bar_width = 2130772404;
+			// aapt resource value: 0x7f0101c0
+			public const int curtain_bar_width = 2130772416;
 			
 			// aapt resource value: 0x7f010018
 			public const int customNavigationLayout = 2130771992;
@@ -837,8 +864,8 @@
 			// aapt resource value: 0x7f0100d6
 			public const int goIcon = 2130772182;
 			
-			// aapt resource value: 0x7f0101ac
-			public const int hdl_arc_thumb_mode = 2130772396;
+			// aapt resource value: 0x7f0101b8
+			public const int hdl_arc_thumb_mode = 2130772408;
 			
 			// aapt resource value: 0x7f01012f
 			public const int headerLayout = 2130772271;
@@ -885,11 +912,23 @@
 			// aapt resource value: 0x7f010028
 			public const int initialActivityCount = 2130772008;
 			
+			// aapt resource value: 0x7f010164
+			public const int inner_border_color = 2130772324;
+			
+			// aapt resource value: 0x7f010163
+			public const int inner_border_width = 2130772323;
+			
 			// aapt resource value: 0x7f010130
 			public const int insetForeground = 2130772272;
 			
 			// aapt resource value: 0x7f01000b
 			public const int isLightTheme = 2130771979;
+			
+			// aapt resource value: 0x7f01015a
+			public const int is_circle = 2130772314;
+			
+			// aapt resource value: 0x7f01015b
+			public const int is_cover_src = 2130772315;
 			
 			// aapt resource value: 0x7f01012d
 			public const int itemBackground = 2130772269;
@@ -945,11 +984,11 @@
 			// aapt resource value: 0x7f010103
 			public const int layout_scrollInterpolator = 2130772227;
 			
-			// aapt resource value: 0x7f010197
-			public const int layout_srlBackgroundColor = 2130772375;
+			// aapt resource value: 0x7f0101a3
+			public const int layout_srlBackgroundColor = 2130772387;
 			
-			// aapt resource value: 0x7f01015b
-			public const int layout_srlSpinnerStyle = 2130772315;
+			// aapt resource value: 0x7f010167
+			public const int layout_srlSpinnerStyle = 2130772327;
 			
 			// aapt resource value: 0x7f01008e
 			public const int listChoiceBackgroundIndicator = 2130772110;
@@ -989,6 +1028,9 @@
 			
 			// aapt resource value: 0x7f0100f7
 			public const int logoDescription = 2130772215;
+			
+			// aapt resource value: 0x7f010165
+			public const int mask_color = 2130772325;
 			
 			// aapt resource value: 0x7f010132
 			public const int maxActionInlineWidth = 2130772274;
@@ -1116,11 +1158,11 @@
 			// aapt resource value: 0x7f010080
 			public const int searchViewStyle = 2130772096;
 			
-			// aapt resource value: 0x7f0101b1
-			public const int second_curtain_bar_color = 2130772401;
+			// aapt resource value: 0x7f0101bd
+			public const int second_curtain_bar_color = 2130772413;
 			
-			// aapt resource value: 0x7f0101b7
-			public const int second_wave_color = 2130772407;
+			// aapt resource value: 0x7f0101c3
+			public const int second_wave_color = 2130772419;
 			
 			// aapt resource value: 0x7f0100ab
 			public const int seekBarStyle = 2130772139;
@@ -1164,200 +1206,200 @@
 			// aapt resource value: 0x7f010030
 			public const int srcCompat = 2130772016;
 			
-			// aapt resource value: 0x7f01015c
-			public const int srlAccentColor = 2130772316;
-			
-			// aapt resource value: 0x7f010172
-			public const int srlAnimatingColor = 2130772338;
-			
-			// aapt resource value: 0x7f01015d
-			public const int srlClassicsSpinnerStyle = 2130772317;
-			
-			// aapt resource value: 0x7f010194
-			public const int srlDisableContentWhenLoading = 2130772372;
-			
-			// aapt resource value: 0x7f010193
-			public const int srlDisableContentWhenRefresh = 2130772371;
-			
-			// aapt resource value: 0x7f01017b
-			public const int srlDragRate = 2130772347;
-			
-			// aapt resource value: 0x7f01015e
-			public const int srlDrawableArrow = 2130772318;
-			
-			// aapt resource value: 0x7f01015f
-			public const int srlDrawableArrowSize = 2130772319;
-			
-			// aapt resource value: 0x7f010160
-			public const int srlDrawableMarginRight = 2130772320;
-			
-			// aapt resource value: 0x7f010161
-			public const int srlDrawableProgress = 2130772321;
-			
-			// aapt resource value: 0x7f010162
-			public const int srlDrawableProgressSize = 2130772322;
-			
-			// aapt resource value: 0x7f010163
-			public const int srlDrawableSize = 2130772323;
-			
-			// aapt resource value: 0x7f010187
-			public const int srlEnableAutoLoadMore = 2130772359;
-			
-			// aapt resource value: 0x7f010191
-			public const int srlEnableClipFooterWhenFixedBehind = 2130772369;
-			
-			// aapt resource value: 0x7f010190
-			public const int srlEnableClipHeaderWhenFixedBehind = 2130772368;
-			
-			// aapt resource value: 0x7f01018e
-			public const int srlEnableFooterFollowWhenLoadFinished = 2130772366;
-			
-			// aapt resource value: 0x7f01018f
-			public const int srlEnableFooterFollowWhenNoMoreData = 2130772367;
-			
-			// aapt resource value: 0x7f010183
-			public const int srlEnableFooterTranslationContent = 2130772355;
-			
-			// aapt resource value: 0x7f010182
-			public const int srlEnableHeaderTranslationContent = 2130772354;
-			
-			// aapt resource value: 0x7f010164
-			public const int srlEnableHorizontalDrag = 2130772324;
-			
-			// aapt resource value: 0x7f010175
-			public const int srlEnableLastTime = 2130772341;
-			
-			// aapt resource value: 0x7f010181
-			public const int srlEnableLoadMore = 2130772353;
-			
-			// aapt resource value: 0x7f01018d
-			public const int srlEnableLoadMoreWhenContentNotFull = 2130772365;
-			
-			// aapt resource value: 0x7f01018a
-			public const int srlEnableNestedScrolling = 2130772362;
-			
-			// aapt resource value: 0x7f010188
-			public const int srlEnableOverScrollBounce = 2130772360;
-			
-			// aapt resource value: 0x7f010192
-			public const int srlEnableOverScrollDrag = 2130772370;
-			
-			// aapt resource value: 0x7f010186
-			public const int srlEnablePreviewInEditMode = 2130772358;
-			
-			// aapt resource value: 0x7f01019d
-			public const int srlEnablePullToCloseTwoLevel = 2130772381;
-			
-			// aapt resource value: 0x7f010189
-			public const int srlEnablePureScrollMode = 2130772361;
-			
-			// aapt resource value: 0x7f010180
-			public const int srlEnableRefresh = 2130772352;
-			
-			// aapt resource value: 0x7f01018b
-			public const int srlEnableScrollContentWhenLoaded = 2130772363;
-			
-			// aapt resource value: 0x7f01018c
-			public const int srlEnableScrollContentWhenRefreshed = 2130772364;
-			
-			// aapt resource value: 0x7f01019c
-			public const int srlEnableTwoLevel = 2130772380;
-			
-			// aapt resource value: 0x7f010165
-			public const int srlFinishDuration = 2130772325;
-			
-			// aapt resource value: 0x7f010196
-			public const int srlFixedFooterViewId = 2130772374;
-			
-			// aapt resource value: 0x7f010195
-			public const int srlFixedHeaderViewId = 2130772373;
-			
-			// aapt resource value: 0x7f01019b
-			public const int srlFloorDuration = 2130772379;
-			
-			// aapt resource value: 0x7f010199
-			public const int srlFloorRage = 2130772377;
-			
-			// aapt resource value: 0x7f010178
-			public const int srlFooterHeight = 2130772344;
-			
-			// aapt resource value: 0x7f01017a
-			public const int srlFooterInsetStart = 2130772346;
-			
-			// aapt resource value: 0x7f01017d
-			public const int srlFooterMaxDragRate = 2130772349;
-			
-			// aapt resource value: 0x7f010185
-			public const int srlFooterTranslationViewId = 2130772357;
-			
-			// aapt resource value: 0x7f01017f
-			public const int srlFooterTriggerRate = 2130772351;
-			
-			// aapt resource value: 0x7f010177
-			public const int srlHeaderHeight = 2130772343;
-			
-			// aapt resource value: 0x7f010179
-			public const int srlHeaderInsetStart = 2130772345;
-			
-			// aapt resource value: 0x7f01017c
-			public const int srlHeaderMaxDragRate = 2130772348;
-			
-			// aapt resource value: 0x7f010184
-			public const int srlHeaderTranslationViewId = 2130772356;
+			// aapt resource value: 0x7f010168
+			public const int srlAccentColor = 2130772328;
 			
 			// aapt resource value: 0x7f01017e
-			public const int srlHeaderTriggerRate = 2130772350;
-			
-			// aapt resource value: 0x7f010198
-			public const int srlMaxRage = 2130772376;
-			
-			// aapt resource value: 0x7f010173
-			public const int srlNormalColor = 2130772339;
-			
-			// aapt resource value: 0x7f010166
-			public const int srlPrimaryColor = 2130772326;
-			
-			// aapt resource value: 0x7f010176
-			public const int srlReboundDuration = 2130772342;
-			
-			// aapt resource value: 0x7f01019a
-			public const int srlRefreshRage = 2130772378;
-			
-			// aapt resource value: 0x7f010167
-			public const int srlTextFailed = 2130772327;
-			
-			// aapt resource value: 0x7f010168
-			public const int srlTextFinish = 2130772328;
+			public const int srlAnimatingColor = 2130772350;
 			
 			// aapt resource value: 0x7f010169
-			public const int srlTextLoading = 2130772329;
+			public const int srlClassicsSpinnerStyle = 2130772329;
+			
+			// aapt resource value: 0x7f0101a0
+			public const int srlDisableContentWhenLoading = 2130772384;
+			
+			// aapt resource value: 0x7f01019f
+			public const int srlDisableContentWhenRefresh = 2130772383;
+			
+			// aapt resource value: 0x7f010187
+			public const int srlDragRate = 2130772359;
 			
 			// aapt resource value: 0x7f01016a
-			public const int srlTextNothing = 2130772330;
+			public const int srlDrawableArrow = 2130772330;
 			
 			// aapt resource value: 0x7f01016b
-			public const int srlTextPulling = 2130772331;
+			public const int srlDrawableArrowSize = 2130772331;
 			
 			// aapt resource value: 0x7f01016c
-			public const int srlTextRefreshing = 2130772332;
+			public const int srlDrawableMarginRight = 2130772332;
 			
 			// aapt resource value: 0x7f01016d
-			public const int srlTextRelease = 2130772333;
+			public const int srlDrawableProgress = 2130772333;
 			
 			// aapt resource value: 0x7f01016e
-			public const int srlTextSecondary = 2130772334;
+			public const int srlDrawableProgressSize = 2130772334;
 			
 			// aapt resource value: 0x7f01016f
-			public const int srlTextSizeTime = 2130772335;
+			public const int srlDrawableSize = 2130772335;
+			
+			// aapt resource value: 0x7f010193
+			public const int srlEnableAutoLoadMore = 2130772371;
+			
+			// aapt resource value: 0x7f01019d
+			public const int srlEnableClipFooterWhenFixedBehind = 2130772381;
+			
+			// aapt resource value: 0x7f01019c
+			public const int srlEnableClipHeaderWhenFixedBehind = 2130772380;
+			
+			// aapt resource value: 0x7f01019a
+			public const int srlEnableFooterFollowWhenLoadFinished = 2130772378;
+			
+			// aapt resource value: 0x7f01019b
+			public const int srlEnableFooterFollowWhenNoMoreData = 2130772379;
+			
+			// aapt resource value: 0x7f01018f
+			public const int srlEnableFooterTranslationContent = 2130772367;
+			
+			// aapt resource value: 0x7f01018e
+			public const int srlEnableHeaderTranslationContent = 2130772366;
 			
 			// aapt resource value: 0x7f010170
-			public const int srlTextSizeTitle = 2130772336;
+			public const int srlEnableHorizontalDrag = 2130772336;
 			
-			// aapt resource value: 0x7f010174
-			public const int srlTextTimeMarginTop = 2130772340;
+			// aapt resource value: 0x7f010181
+			public const int srlEnableLastTime = 2130772353;
+			
+			// aapt resource value: 0x7f01018d
+			public const int srlEnableLoadMore = 2130772365;
+			
+			// aapt resource value: 0x7f010199
+			public const int srlEnableLoadMoreWhenContentNotFull = 2130772377;
+			
+			// aapt resource value: 0x7f010196
+			public const int srlEnableNestedScrolling = 2130772374;
+			
+			// aapt resource value: 0x7f010194
+			public const int srlEnableOverScrollBounce = 2130772372;
+			
+			// aapt resource value: 0x7f01019e
+			public const int srlEnableOverScrollDrag = 2130772382;
+			
+			// aapt resource value: 0x7f010192
+			public const int srlEnablePreviewInEditMode = 2130772370;
+			
+			// aapt resource value: 0x7f0101a9
+			public const int srlEnablePullToCloseTwoLevel = 2130772393;
+			
+			// aapt resource value: 0x7f010195
+			public const int srlEnablePureScrollMode = 2130772373;
+			
+			// aapt resource value: 0x7f01018c
+			public const int srlEnableRefresh = 2130772364;
+			
+			// aapt resource value: 0x7f010197
+			public const int srlEnableScrollContentWhenLoaded = 2130772375;
+			
+			// aapt resource value: 0x7f010198
+			public const int srlEnableScrollContentWhenRefreshed = 2130772376;
+			
+			// aapt resource value: 0x7f0101a8
+			public const int srlEnableTwoLevel = 2130772392;
 			
 			// aapt resource value: 0x7f010171
-			public const int srlTextUpdate = 2130772337;
+			public const int srlFinishDuration = 2130772337;
+			
+			// aapt resource value: 0x7f0101a2
+			public const int srlFixedFooterViewId = 2130772386;
+			
+			// aapt resource value: 0x7f0101a1
+			public const int srlFixedHeaderViewId = 2130772385;
+			
+			// aapt resource value: 0x7f0101a7
+			public const int srlFloorDuration = 2130772391;
+			
+			// aapt resource value: 0x7f0101a5
+			public const int srlFloorRage = 2130772389;
+			
+			// aapt resource value: 0x7f010184
+			public const int srlFooterHeight = 2130772356;
+			
+			// aapt resource value: 0x7f010186
+			public const int srlFooterInsetStart = 2130772358;
+			
+			// aapt resource value: 0x7f010189
+			public const int srlFooterMaxDragRate = 2130772361;
+			
+			// aapt resource value: 0x7f010191
+			public const int srlFooterTranslationViewId = 2130772369;
+			
+			// aapt resource value: 0x7f01018b
+			public const int srlFooterTriggerRate = 2130772363;
+			
+			// aapt resource value: 0x7f010183
+			public const int srlHeaderHeight = 2130772355;
+			
+			// aapt resource value: 0x7f010185
+			public const int srlHeaderInsetStart = 2130772357;
+			
+			// aapt resource value: 0x7f010188
+			public const int srlHeaderMaxDragRate = 2130772360;
+			
+			// aapt resource value: 0x7f010190
+			public const int srlHeaderTranslationViewId = 2130772368;
+			
+			// aapt resource value: 0x7f01018a
+			public const int srlHeaderTriggerRate = 2130772362;
+			
+			// aapt resource value: 0x7f0101a4
+			public const int srlMaxRage = 2130772388;
+			
+			// aapt resource value: 0x7f01017f
+			public const int srlNormalColor = 2130772351;
+			
+			// aapt resource value: 0x7f010172
+			public const int srlPrimaryColor = 2130772338;
+			
+			// aapt resource value: 0x7f010182
+			public const int srlReboundDuration = 2130772354;
+			
+			// aapt resource value: 0x7f0101a6
+			public const int srlRefreshRage = 2130772390;
+			
+			// aapt resource value: 0x7f010173
+			public const int srlTextFailed = 2130772339;
+			
+			// aapt resource value: 0x7f010174
+			public const int srlTextFinish = 2130772340;
+			
+			// aapt resource value: 0x7f010175
+			public const int srlTextLoading = 2130772341;
+			
+			// aapt resource value: 0x7f010176
+			public const int srlTextNothing = 2130772342;
+			
+			// aapt resource value: 0x7f010177
+			public const int srlTextPulling = 2130772343;
+			
+			// aapt resource value: 0x7f010178
+			public const int srlTextRefreshing = 2130772344;
+			
+			// aapt resource value: 0x7f010179
+			public const int srlTextRelease = 2130772345;
+			
+			// aapt resource value: 0x7f01017a
+			public const int srlTextSecondary = 2130772346;
+			
+			// aapt resource value: 0x7f01017b
+			public const int srlTextSizeTime = 2130772347;
+			
+			// aapt resource value: 0x7f01017c
+			public const int srlTextSizeTitle = 2130772348;
+			
+			// aapt resource value: 0x7f010180
+			public const int srlTextTimeMarginTop = 2130772352;
+			
+			// aapt resource value: 0x7f01017d
+			public const int srlTextUpdate = 2130772349;
 			
 			// aapt resource value: 0x7f010003
 			public const int stackFromEnd = 2130771971;
@@ -1590,38 +1632,38 @@
 			// aapt resource value: 0x7f0100d9
 			public const int voiceIcon = 2130772185;
 			
-			// aapt resource value: 0x7f0101b8
-			public const int wave_bg_color = 2130772408;
+			// aapt resource value: 0x7f0101c4
+			public const int wave_bg_color = 2130772420;
 			
-			// aapt resource value: 0x7f0101b9
-			public const int wave_border_color = 2130772409;
+			// aapt resource value: 0x7f0101c5
+			public const int wave_border_color = 2130772421;
 			
-			// aapt resource value: 0x7f0101b6
-			public const int wave_color = 2130772406;
+			// aapt resource value: 0x7f0101c2
+			public const int wave_color = 2130772418;
 			
-			// aapt resource value: 0x7f0101bb
-			public const int wave_height = 2130772411;
+			// aapt resource value: 0x7f0101c7
+			public const int wave_height = 2130772423;
 			
-			// aapt resource value: 0x7f0101ba
-			public const int wave_width = 2130772410;
+			// aapt resource value: 0x7f0101c6
+			public const int wave_width = 2130772422;
 			
-			// aapt resource value: 0x7f0101c0
-			public const int wheelview_dividerColor = 2130772416;
+			// aapt resource value: 0x7f0101cc
+			public const int wheelview_dividerColor = 2130772428;
 			
-			// aapt resource value: 0x7f0101bc
-			public const int wheelview_gravity = 2130772412;
+			// aapt resource value: 0x7f0101c8
+			public const int wheelview_gravity = 2130772424;
 			
-			// aapt resource value: 0x7f0101c1
-			public const int wheelview_lineSpacingMultiplier = 2130772417;
+			// aapt resource value: 0x7f0101cd
+			public const int wheelview_lineSpacingMultiplier = 2130772429;
 			
-			// aapt resource value: 0x7f0101bf
-			public const int wheelview_textColorCenter = 2130772415;
+			// aapt resource value: 0x7f0101cb
+			public const int wheelview_textColorCenter = 2130772427;
 			
-			// aapt resource value: 0x7f0101be
-			public const int wheelview_textColorOut = 2130772414;
+			// aapt resource value: 0x7f0101ca
+			public const int wheelview_textColorOut = 2130772426;
 			
-			// aapt resource value: 0x7f0101bd
-			public const int wheelview_textSize = 2130772413;
+			// aapt resource value: 0x7f0101c9
+			public const int wheelview_textSize = 2130772425;
 			
 			// aapt resource value: 0x7f01003d
 			public const int windowActionBar = 2130772029;
@@ -1681,6 +1723,42 @@
 			// aapt resource value: 0x7f0c0004
 			public const int abc_config_showMenuShortcutsWhenKeyboardPresent = 2131492868;
 			
+			// aapt resource value: 0x7f0c0005
+			public const int disable_chat = 2131492869;
+			
+			// aapt resource value: 0x7f0c0006
+			public const int isTablet = 2131492870;
+			
+			// aapt resource value: 0x7f0c0007
+			public const int sc_allow_ringing_while_early_media = 2131492871;
+			
+			// aapt resource value: 0x7f0c0008
+			public const int sc_disable_chat_message_notification = 2131492872;
+			
+			// aapt resource value: 0x7f0c0009
+			public const int sc_display_contact_organization = 2131492873;
+			
+			// aapt resource value: 0x7f0c000a
+			public const int sc_enable_call_notification = 2131492874;
+			
+			// aapt resource value: 0x7f0c000b
+			public const int sc_enable_missed_call_notification = 2131492875;
+			
+			// aapt resource value: 0x7f0c000c
+			public const int sc_enable_push_id = 2131492876;
+			
+			// aapt resource value: 0x7f0c000d
+			public const int sc_forbid_self_call = 2131492877;
+			
+			// aapt resource value: 0x7f0c000e
+			public const int sc_force_use_of_linphone_friends = 2131492878;
+			
+			// aapt resource value: 0x7f0c000f
+			public const int sc_kill_service_with_task_manager = 2131492879;
+			
+			// aapt resource value: 0x7f0c0010
+			public const int sc_use_linphone_tag = 2131492880;
+			
 			static Boolean()
 			{
 				global::Android.Runtime.ResourceIdManager.UpdateIdValues();
@@ -1694,44 +1772,44 @@
 		public partial class Color
 		{
 			
-			// aapt resource value: 0x7f0d0059
-			public const int abc_background_cache_hint_selector_material_dark = 2131558489;
+			// aapt resource value: 0x7f0d0071
+			public const int abc_background_cache_hint_selector_material_dark = 2131558513;
 			
-			// aapt resource value: 0x7f0d005a
-			public const int abc_background_cache_hint_selector_material_light = 2131558490;
+			// aapt resource value: 0x7f0d0072
+			public const int abc_background_cache_hint_selector_material_light = 2131558514;
 			
-			// aapt resource value: 0x7f0d005b
-			public const int abc_btn_colored_borderless_text_material = 2131558491;
+			// aapt resource value: 0x7f0d0073
+			public const int abc_btn_colored_borderless_text_material = 2131558515;
 			
-			// aapt resource value: 0x7f0d005c
-			public const int abc_btn_colored_text_material = 2131558492;
+			// aapt resource value: 0x7f0d0074
+			public const int abc_btn_colored_text_material = 2131558516;
 			
-			// aapt resource value: 0x7f0d005d
-			public const int abc_color_highlight_material = 2131558493;
+			// aapt resource value: 0x7f0d0075
+			public const int abc_color_highlight_material = 2131558517;
 			
-			// aapt resource value: 0x7f0d005e
-			public const int abc_hint_foreground_material_dark = 2131558494;
+			// aapt resource value: 0x7f0d0076
+			public const int abc_hint_foreground_material_dark = 2131558518;
 			
-			// aapt resource value: 0x7f0d005f
-			public const int abc_hint_foreground_material_light = 2131558495;
+			// aapt resource value: 0x7f0d0077
+			public const int abc_hint_foreground_material_light = 2131558519;
 			
 			// aapt resource value: 0x7f0d0000
 			public const int abc_input_method_navigation_guard = 2131558400;
 			
-			// aapt resource value: 0x7f0d0060
-			public const int abc_primary_text_disable_only_material_dark = 2131558496;
+			// aapt resource value: 0x7f0d0078
+			public const int abc_primary_text_disable_only_material_dark = 2131558520;
 			
-			// aapt resource value: 0x7f0d0061
-			public const int abc_primary_text_disable_only_material_light = 2131558497;
+			// aapt resource value: 0x7f0d0079
+			public const int abc_primary_text_disable_only_material_light = 2131558521;
 			
-			// aapt resource value: 0x7f0d0062
-			public const int abc_primary_text_material_dark = 2131558498;
+			// aapt resource value: 0x7f0d007a
+			public const int abc_primary_text_material_dark = 2131558522;
 			
-			// aapt resource value: 0x7f0d0063
-			public const int abc_primary_text_material_light = 2131558499;
+			// aapt resource value: 0x7f0d007b
+			public const int abc_primary_text_material_light = 2131558523;
 			
-			// aapt resource value: 0x7f0d0064
-			public const int abc_search_url_text = 2131558500;
+			// aapt resource value: 0x7f0d007c
+			public const int abc_search_url_text = 2131558524;
 			
 			// aapt resource value: 0x7f0d0001
 			public const int abc_search_url_text_normal = 2131558401;
@@ -1742,29 +1820,29 @@
 			// aapt resource value: 0x7f0d0003
 			public const int abc_search_url_text_selected = 2131558403;
 			
-			// aapt resource value: 0x7f0d0065
-			public const int abc_secondary_text_material_dark = 2131558501;
+			// aapt resource value: 0x7f0d007d
+			public const int abc_secondary_text_material_dark = 2131558525;
 			
-			// aapt resource value: 0x7f0d0066
-			public const int abc_secondary_text_material_light = 2131558502;
+			// aapt resource value: 0x7f0d007e
+			public const int abc_secondary_text_material_light = 2131558526;
 			
-			// aapt resource value: 0x7f0d0067
-			public const int abc_tint_btn_checkable = 2131558503;
+			// aapt resource value: 0x7f0d007f
+			public const int abc_tint_btn_checkable = 2131558527;
 			
-			// aapt resource value: 0x7f0d0068
-			public const int abc_tint_default = 2131558504;
+			// aapt resource value: 0x7f0d0080
+			public const int abc_tint_default = 2131558528;
 			
-			// aapt resource value: 0x7f0d0069
-			public const int abc_tint_edittext = 2131558505;
+			// aapt resource value: 0x7f0d0081
+			public const int abc_tint_edittext = 2131558529;
 			
-			// aapt resource value: 0x7f0d006a
-			public const int abc_tint_seek_thumb = 2131558506;
+			// aapt resource value: 0x7f0d0082
+			public const int abc_tint_seek_thumb = 2131558530;
 			
-			// aapt resource value: 0x7f0d006b
-			public const int abc_tint_spinner = 2131558507;
+			// aapt resource value: 0x7f0d0083
+			public const int abc_tint_spinner = 2131558531;
 			
-			// aapt resource value: 0x7f0d006c
-			public const int abc_tint_switch_track = 2131558508;
+			// aapt resource value: 0x7f0d0084
+			public const int abc_tint_switch_track = 2131558532;
 			
 			// aapt resource value: 0x7f0d0004
 			public const int accent_material_dark = 2131558404;
@@ -1783,6 +1861,9 @@
 			
 			// aapt resource value: 0x7f0d0009
 			public const int background_material_light = 2131558409;
+			
+			// aapt resource value: 0x7f0d0047
+			public const int black = 2131558471;
 			
 			// aapt resource value: 0x7f0d000a
 			public const int bright_foreground_disabled_material_dark = 2131558410;
@@ -1808,32 +1889,23 @@
 			// aapt resource value: 0x7f0d0011
 			public const int button_material_light = 2131558417;
 			
-			// aapt resource value: 0x7f0d0047
-			public const int colorAccent = 2131558471;
+			// aapt resource value: 0x7f0d0070
+			public const int color_default = 2131558512;
 			
-			// aapt resource value: 0x7f0d0048
-			public const int colorPrimary = 2131558472;
+			// aapt resource value: 0x7f0d006e
+			public const int color_disable = 2131558510;
 			
-			// aapt resource value: 0x7f0d0049
-			public const int colorPrimaryDark = 2131558473;
+			// aapt resource value: 0x7f0d006f
+			public const int color_select = 2131558511;
 			
-			// aapt resource value: 0x7f0d0058
-			public const int color_default = 2131558488;
-			
-			// aapt resource value: 0x7f0d0056
-			public const int color_disable = 2131558486;
-			
-			// aapt resource value: 0x7f0d0057
-			public const int color_select = 2131558487;
-			
-			// aapt resource value: 0x7f0d0055
-			public const int color_white = 2131558485;
+			// aapt resource value: 0x7f0d006d
+			public const int color_white = 2131558509;
 			
 			// aapt resource value: 0x7f0d003c
 			public const int design_bottom_navigation_shadow_color = 2131558460;
 			
-			// aapt resource value: 0x7f0d006d
-			public const int design_error = 2131558509;
+			// aapt resource value: 0x7f0d0085
+			public const int design_error = 2131558533;
 			
 			// aapt resource value: 0x7f0d003d
 			public const int design_fab_shadow_end_color = 2131558461;
@@ -1859,8 +1931,8 @@
 			// aapt resource value: 0x7f0d0044
 			public const int design_snackbar_background_color = 2131558468;
 			
-			// aapt resource value: 0x7f0d006e
-			public const int design_tint_password_toggle = 2131558510;
+			// aapt resource value: 0x7f0d0086
+			public const int design_tint_password_toggle = 2131558534;
 			
 			// aapt resource value: 0x7f0d0012
 			public const int dim_foreground_disabled_material_dark = 2131558418;
@@ -1883,8 +1955,8 @@
 			// aapt resource value: 0x7f0d0018
 			public const int foreground_material_light = 2131558424;
 			
-			// aapt resource value: 0x7f0d004b
-			public const int gd_top_view = 2131558475;
+			// aapt resource value: 0x7f0d0063
+			public const int gd_top_view = 2131558499;
 			
 			// aapt resource value: 0x7f0d0019
 			public const int highlighted_text_material_dark = 2131558425;
@@ -1928,8 +2000,8 @@
 			// aapt resource value: 0x7f0d0026
 			public const int material_grey_900 = 2131558438;
 			
-			// aapt resource value: 0x7f0d004a
-			public const int material_red_500 = 2131558474;
+			// aapt resource value: 0x7f0d005f
+			public const int material_red_500 = 2131558495;
 			
 			// aapt resource value: 0x7f0d0045
 			public const int notification_action_color_filter = 2131558469;
@@ -1940,32 +2012,32 @@
 			// aapt resource value: 0x7f0d003b
 			public const int notification_material_background_media_default_color = 2131558459;
 			
-			// aapt resource value: 0x7f0d004c
-			public const int pickerview_bgColor_default = 2131558476;
+			// aapt resource value: 0x7f0d0064
+			public const int pickerview_bgColor_default = 2131558500;
 			
-			// aapt resource value: 0x7f0d004d
-			public const int pickerview_bgColor_overlay = 2131558477;
+			// aapt resource value: 0x7f0d0065
+			public const int pickerview_bgColor_overlay = 2131558501;
 			
-			// aapt resource value: 0x7f0d004e
-			public const int pickerview_bg_topbar = 2131558478;
+			// aapt resource value: 0x7f0d0066
+			public const int pickerview_bg_topbar = 2131558502;
 			
-			// aapt resource value: 0x7f0d004f
-			public const int pickerview_timebtn_nor = 2131558479;
+			// aapt resource value: 0x7f0d0067
+			public const int pickerview_timebtn_nor = 2131558503;
 			
-			// aapt resource value: 0x7f0d0050
-			public const int pickerview_timebtn_pre = 2131558480;
+			// aapt resource value: 0x7f0d0068
+			public const int pickerview_timebtn_pre = 2131558504;
 			
-			// aapt resource value: 0x7f0d0051
-			public const int pickerview_topbar_title = 2131558481;
+			// aapt resource value: 0x7f0d0069
+			public const int pickerview_topbar_title = 2131558505;
 			
-			// aapt resource value: 0x7f0d0052
-			public const int pickerview_wheelview_textcolor_center = 2131558482;
+			// aapt resource value: 0x7f0d006a
+			public const int pickerview_wheelview_textcolor_center = 2131558506;
 			
-			// aapt resource value: 0x7f0d0053
-			public const int pickerview_wheelview_textcolor_divider = 2131558483;
+			// aapt resource value: 0x7f0d006b
+			public const int pickerview_wheelview_textcolor_divider = 2131558507;
 			
-			// aapt resource value: 0x7f0d0054
-			public const int pickerview_wheelview_textcolor_out = 2131558484;
+			// aapt resource value: 0x7f0d006c
+			public const int pickerview_wheelview_textcolor_out = 2131558508;
 			
 			// aapt resource value: 0x7f0d0027
 			public const int primary_dark_material_dark = 2131558439;
@@ -1991,11 +2063,62 @@
 			// aapt resource value: 0x7f0d002e
 			public const int primary_text_disabled_material_light = 2131558446;
 			
+			// aapt resource value: 0x7f0d0048
+			public const int purple_200 = 2131558472;
+			
+			// aapt resource value: 0x7f0d0049
+			public const int purple_500 = 2131558473;
+			
+			// aapt resource value: 0x7f0d004a
+			public const int purple_700 = 2131558474;
+			
 			// aapt resource value: 0x7f0d002f
 			public const int ripple_material_dark = 2131558447;
 			
 			// aapt resource value: 0x7f0d0030
 			public const int ripple_material_light = 2131558448;
+			
+			// aapt resource value: 0x7f0d004b
+			public const int sc_colorA = 2131558475;
+			
+			// aapt resource value: 0x7f0d004c
+			public const int sc_colorB = 2131558476;
+			
+			// aapt resource value: 0x7f0d004d
+			public const int sc_colorC = 2131558477;
+			
+			// aapt resource value: 0x7f0d004e
+			public const int sc_colorD = 2131558478;
+			
+			// aapt resource value: 0x7f0d004f
+			public const int sc_colorE = 2131558479;
+			
+			// aapt resource value: 0x7f0d0050
+			public const int sc_colorF = 2131558480;
+			
+			// aapt resource value: 0x7f0d0051
+			public const int sc_colorG = 2131558481;
+			
+			// aapt resource value: 0x7f0d0052
+			public const int sc_colorH = 2131558482;
+			
+			// aapt resource value: 0x7f0d0053
+			public const int sc_colorI = 2131558483;
+			
+			// aapt resource value: 0x7f0d0054
+			public const int sc_colorJ = 2131558484;
+			
+			// aapt resource value: 0x7f0d0055
+			public const int sc_colorK = 2131558485;
+			
+			// aapt resource value: 0x7f0d0056
+			public const int sc_colorL = 2131558486;
+			
+			// aapt resource value: 0x7f0d0057
+			public const int sc_notification_color_led = 2131558487;
+			
+			// aapt resource value: 0x7f0d0058
+			public const int sc_transparent = 2131558488;
 			
 			// aapt resource value: 0x7f0d0031
 			public const int secondary_text_default_material_dark = 2131558449;
@@ -2015,11 +2138,11 @@
 			// aapt resource value: 0x7f0d0036
 			public const int switch_thumb_disabled_material_light = 2131558454;
 			
-			// aapt resource value: 0x7f0d006f
-			public const int switch_thumb_material_dark = 2131558511;
+			// aapt resource value: 0x7f0d0087
+			public const int switch_thumb_material_dark = 2131558535;
 			
-			// aapt resource value: 0x7f0d0070
-			public const int switch_thumb_material_light = 2131558512;
+			// aapt resource value: 0x7f0d0088
+			public const int switch_thumb_material_light = 2131558536;
 			
 			// aapt resource value: 0x7f0d0037
 			public const int switch_thumb_normal_material_dark = 2131558455;
@@ -2027,14 +2150,41 @@
 			// aapt resource value: 0x7f0d0038
 			public const int switch_thumb_normal_material_light = 2131558456;
 			
-			// aapt resource value: 0x7f0d0071
-			public const int text_color = 2131558513;
+			// aapt resource value: 0x7f0d0059
+			public const int teal_200 = 2131558489;
+			
+			// aapt resource value: 0x7f0d005a
+			public const int teal_700 = 2131558490;
+			
+			// aapt resource value: 0x7f0d0089
+			public const int text_color = 2131558537;
+			
+			// aapt resource value: 0x7f0d005b
+			public const int text_default_color = 2131558491;
+			
+			// aapt resource value: 0x7f0d005c
+			public const int text_select_color = 2131558492;
 			
 			// aapt resource value: 0x7f0d0039
 			public const int tooltip_background_dark = 2131558457;
 			
 			// aapt resource value: 0x7f0d003a
 			public const int tooltip_background_light = 2131558458;
+			
+			// aapt resource value: 0x7f0d005d
+			public const int transparent = 2131558493;
+			
+			// aapt resource value: 0x7f0d0060
+			public const int upsdk_color_gray_1 = 2131558496;
+			
+			// aapt resource value: 0x7f0d0061
+			public const int upsdk_color_gray_10 = 2131558497;
+			
+			// aapt resource value: 0x7f0d0062
+			public const int upsdk_color_gray_7 = 2131558498;
+			
+			// aapt resource value: 0x7f0d005e
+			public const int white = 2131558494;
 			
 			static Color()
 			{
@@ -2496,20 +2646,20 @@
 			// aapt resource value: 0x7f08009a
 			public const int notification_top_pad_large_text = 2131230874;
 			
-			// aapt resource value: 0x7f08009d
-			public const int pickerview_textsize = 2131230877;
+			// aapt resource value: 0x7f0800a2
+			public const int pickerview_textsize = 2131230882;
 			
-			// aapt resource value: 0x7f08009e
-			public const int pickerview_topbar_btn_textsize = 2131230878;
+			// aapt resource value: 0x7f0800a3
+			public const int pickerview_topbar_btn_textsize = 2131230883;
 			
-			// aapt resource value: 0x7f08009f
-			public const int pickerview_topbar_height = 2131230879;
+			// aapt resource value: 0x7f0800a4
+			public const int pickerview_topbar_height = 2131230884;
 			
-			// aapt resource value: 0x7f0800a0
-			public const int pickerview_topbar_padding = 2131230880;
+			// aapt resource value: 0x7f0800a5
+			public const int pickerview_topbar_padding = 2131230885;
 			
-			// aapt resource value: 0x7f0800a1
-			public const int pickerview_topbar_title_textsize = 2131230881;
+			// aapt resource value: 0x7f0800a6
+			public const int pickerview_topbar_title_textsize = 2131230886;
 			
 			// aapt resource value: 0x7f080059
 			public const int tooltip_corner_radius = 2131230809;
@@ -2534,6 +2684,21 @@
 			
 			// aapt resource value: 0x7f080060
 			public const int tooltip_y_offset_touch = 2131230816;
+			
+			// aapt resource value: 0x7f08009d
+			public const int upsdk_margin_l = 2131230877;
+			
+			// aapt resource value: 0x7f08009e
+			public const int upsdk_margin_m = 2131230878;
+			
+			// aapt resource value: 0x7f08009f
+			public const int upsdk_margin_xs = 2131230879;
+			
+			// aapt resource value: 0x7f0800a0
+			public const int upsdk_master_body_2 = 2131230880;
+			
+			// aapt resource value: 0x7f0800a1
+			public const int upsdk_master_subtitle = 2131230881;
 			
 			static Dimension()
 			{
@@ -2800,26 +2965,26 @@
 			// aapt resource value: 0x7f020053
 			public const int avd_hide_password = 2130837587;
 			
-			// aapt resource value: 0x7f0200b3
-			public const int avd_hide_password_1 = 2130837683;
+			// aapt resource value: 0x7f0200e7
+			public const int avd_hide_password_1 = 2130837735;
 			
-			// aapt resource value: 0x7f0200b4
-			public const int avd_hide_password_2 = 2130837684;
+			// aapt resource value: 0x7f0200e8
+			public const int avd_hide_password_2 = 2130837736;
 			
-			// aapt resource value: 0x7f0200b5
-			public const int avd_hide_password_3 = 2130837685;
+			// aapt resource value: 0x7f0200e9
+			public const int avd_hide_password_3 = 2130837737;
 			
 			// aapt resource value: 0x7f020054
 			public const int avd_show_password = 2130837588;
 			
-			// aapt resource value: 0x7f0200b6
-			public const int avd_show_password_1 = 2130837686;
+			// aapt resource value: 0x7f0200ea
+			public const int avd_show_password_1 = 2130837738;
 			
-			// aapt resource value: 0x7f0200b7
-			public const int avd_show_password_2 = 2130837687;
+			// aapt resource value: 0x7f0200eb
+			public const int avd_show_password_2 = 2130837739;
 			
-			// aapt resource value: 0x7f0200b8
-			public const int avd_show_password_3 = 2130837688;
+			// aapt resource value: 0x7f0200ec
+			public const int avd_show_password_3 = 2130837740;
 			
 			// aapt resource value: 0x7f020055
 			public const int back = 2130837589;
@@ -2942,169 +3107,322 @@
 			public const int ic_launcher_background = 2130837628;
 			
 			// aapt resource value: 0x7f02007d
-			public const int ic_launcher_foreground = 2130837629;
-			
-			// aapt resource value: 0x7f0200b9
-			public const int ic_launcher_foreground_1 = 2130837689;
+			public const int ic_wd_arc_scale_bg = 2130837629;
 			
 			// aapt resource value: 0x7f02007e
-			public const int ic_wd_arc_scale_bg = 2130837630;
+			public const int ic_wd_curtain_bg_top = 2130837630;
 			
 			// aapt resource value: 0x7f02007f
-			public const int ic_wd_curtain_bg_top = 2130837631;
+			public const int ic_wd_curtain_h_bg = 2130837631;
 			
 			// aapt resource value: 0x7f020080
-			public const int ic_wd_curtain_h_bg = 2130837632;
+			public const int ic_wd_curtain_h_open = 2130837632;
 			
 			// aapt resource value: 0x7f020081
-			public const int ic_wd_curtain_h_open = 2130837633;
+			public const int ic_wd_curtain_h_progress = 2130837633;
 			
 			// aapt resource value: 0x7f020082
-			public const int ic_wd_curtain_h_progress = 2130837634;
+			public const int ic_wd_curtain_h_top = 2130837634;
 			
 			// aapt resource value: 0x7f020083
-			public const int ic_wd_curtain_h_top = 2130837635;
+			public const int ic_wd_curtain_open = 2130837635;
 			
 			// aapt resource value: 0x7f020084
-			public const int ic_wd_curtain_open = 2130837636;
+			public const int ic_wd_curtain_roll_bg = 2130837636;
 			
 			// aapt resource value: 0x7f020085
-			public const int ic_wd_curtain_roll_bg = 2130837637;
+			public const int ic_wd_curtain_roll_progress = 2130837637;
 			
 			// aapt resource value: 0x7f020086
-			public const int ic_wd_curtain_roll_progress = 2130837638;
+			public const int ic_wd_on_curtain_blinds_progress = 2130837638;
 			
 			// aapt resource value: 0x7f020087
-			public const int ic_wd_on_curtain_blinds_progress = 2130837639;
+			public const int ic_wd_on_curtain_blinds_progress2 = 2130837639;
 			
 			// aapt resource value: 0x7f020088
-			public const int ic_wd_on_curtain_blinds_progress2 = 2130837640;
+			public const int ic_wd_on_curtain_blinds_progress_close = 2130837640;
 			
 			// aapt resource value: 0x7f020089
-			public const int ic_wd_on_curtain_blinds_progress_close = 2130837641;
+			public const int ic_wd_on_curtain_blinds_progress_close2 = 2130837641;
 			
 			// aapt resource value: 0x7f02008a
-			public const int ic_wd_on_curtain_blinds_progress_close2 = 2130837642;
+			public const int ic_wd_on_curtain_h_bg = 2130837642;
 			
 			// aapt resource value: 0x7f02008b
-			public const int ic_wd_on_curtain_h_bg = 2130837643;
+			public const int ic_wd_on_curtain_h_open = 2130837643;
 			
 			// aapt resource value: 0x7f02008c
-			public const int ic_wd_on_curtain_h_open = 2130837644;
+			public const int ic_wd_on_curtain_h_progress = 2130837644;
 			
 			// aapt resource value: 0x7f02008d
-			public const int ic_wd_on_curtain_h_progress = 2130837645;
+			public const int ic_wd_on_curtain_h_progress_close = 2130837645;
 			
 			// aapt resource value: 0x7f02008e
-			public const int ic_wd_on_curtain_h_progress_close = 2130837646;
+			public const int ic_wd_on_curtain_open = 2130837646;
 			
 			// aapt resource value: 0x7f02008f
-			public const int ic_wd_on_curtain_open = 2130837647;
+			public const int ic_wd_on_curtain_roll_bg = 2130837647;
 			
 			// aapt resource value: 0x7f020090
-			public const int ic_wd_on_curtain_roll_bg = 2130837648;
+			public const int ic_wd_on_curtain_roll_progress = 2130837648;
 			
 			// aapt resource value: 0x7f020091
-			public const int ic_wd_on_curtain_roll_progress = 2130837649;
+			public const int ic_wd_on_curtain_roll_progress_close = 2130837649;
 			
 			// aapt resource value: 0x7f020092
-			public const int ic_wd_on_curtain_roll_progress_close = 2130837650;
+			public const int Icon = 2130837650;
 			
 			// aapt resource value: 0x7f020093
-			public const int Icon = 2130837651;
+			public const int linphone_logo = 2130837651;
 			
 			// aapt resource value: 0x7f020094
-			public const int leak_canary_icon = 2130837652;
+			public const int linphone_notification_icon = 2130837652;
 			
 			// aapt resource value: 0x7f020095
-			public const int leak_canary_notification = 2130837653;
+			public const int Loading = 2130837653;
 			
 			// aapt resource value: 0x7f020096
-			public const int leak_canary_toast_background = 2130837654;
+			public const int navigation_empty_icon = 2130837654;
 			
 			// aapt resource value: 0x7f020097
-			public const int Loading = 2130837655;
+			public const int notification_action_background = 2130837655;
 			
 			// aapt resource value: 0x7f020098
-			public const int navigation_empty_icon = 2130837656;
+			public const int notification_bg = 2130837656;
 			
 			// aapt resource value: 0x7f020099
-			public const int notification_action_background = 2130837657;
+			public const int notification_bg_low = 2130837657;
 			
 			// aapt resource value: 0x7f02009a
-			public const int notification_bg = 2130837658;
+			public const int notification_bg_low_normal = 2130837658;
 			
 			// aapt resource value: 0x7f02009b
-			public const int notification_bg_low = 2130837659;
+			public const int notification_bg_low_pressed = 2130837659;
 			
 			// aapt resource value: 0x7f02009c
-			public const int notification_bg_low_normal = 2130837660;
+			public const int notification_bg_normal = 2130837660;
 			
 			// aapt resource value: 0x7f02009d
-			public const int notification_bg_low_pressed = 2130837661;
+			public const int notification_bg_normal_pressed = 2130837661;
 			
 			// aapt resource value: 0x7f02009e
-			public const int notification_bg_normal = 2130837662;
+			public const int notification_icon_background = 2130837662;
+			
+			// aapt resource value: 0x7f0200e5
+			public const int notification_template_icon_bg = 2130837733;
+			
+			// aapt resource value: 0x7f0200e6
+			public const int notification_template_icon_low_bg = 2130837734;
 			
 			// aapt resource value: 0x7f02009f
-			public const int notification_bg_normal_pressed = 2130837663;
+			public const int notification_tile_bg = 2130837663;
 			
 			// aapt resource value: 0x7f0200a0
-			public const int notification_icon_background = 2130837664;
-			
-			// aapt resource value: 0x7f0200b1
-			public const int notification_template_icon_bg = 2130837681;
-			
-			// aapt resource value: 0x7f0200b2
-			public const int notification_template_icon_low_bg = 2130837682;
+			public const int notify_panel_notification_icon_bg = 2130837664;
 			
 			// aapt resource value: 0x7f0200a1
-			public const int notification_tile_bg = 2130837665;
+			public const int phone_color_white_rounded_20 = 2130837665;
 			
 			// aapt resource value: 0x7f0200a2
-			public const int notify_panel_notification_icon_bg = 2130837666;
+			public const int phone_face_add_btn_background = 2130837666;
 			
 			// aapt resource value: 0x7f0200a3
-			public const int screenshot = 2130837667;
+			public const int phone_face_add_btn_background_def = 2130837667;
 			
 			// aapt resource value: 0x7f0200a4
-			public const int screenshot_def = 2130837668;
+			public const int phone_face_add_btn_background_sel = 2130837668;
 			
 			// aapt resource value: 0x7f0200a5
-			public const int screenshot_sel = 2130837669;
+			public const int phone_ic_back = 2130837669;
 			
 			// aapt resource value: 0x7f0200a6
-			public const int selector_pickerview_btn = 2130837670;
+			public const int phone_icon_call_answer = 2130837670;
 			
 			// aapt resource value: 0x7f0200a7
-			public const int sure_background_def = 2130837671;
+			public const int phone_icon_call_hangup = 2130837671;
 			
 			// aapt resource value: 0x7f0200a8
-			public const int sure_background_sel = 2130837672;
+			public const int phone_icon_call_screenshot = 2130837672;
 			
 			// aapt resource value: 0x7f0200a9
-			public const int tip_background = 2130837673;
+			public const int phone_icon_call_screenshot_def = 2130837673;
 			
 			// aapt resource value: 0x7f0200aa
-			public const int tooltip_frame_dark = 2130837674;
+			public const int phone_icon_call_screenshot_sel = 2130837674;
 			
 			// aapt resource value: 0x7f0200ab
-			public const int tooltip_frame_light = 2130837675;
+			public const int phone_icon_call_unlock = 2130837675;
 			
 			// aapt resource value: 0x7f0200ac
-			public const int unlock = 2130837676;
+			public const int phone_icon_call_unlock_def = 2130837676;
 			
 			// aapt resource value: 0x7f0200ad
-			public const int unlock_def = 2130837677;
+			public const int phone_icon_call_unlock_sel = 2130837677;
 			
 			// aapt resource value: 0x7f0200ae
-			public const int unlock_disable = 2130837678;
+			public const int phone_icon_cover = 2130837678;
 			
 			// aapt resource value: 0x7f0200af
-			public const int unlock_sel = 2130837679;
+			public const int phone_icon_eyes = 2130837679;
 			
 			// aapt resource value: 0x7f0200b0
-			public const int video_background = 2130837680;
+			public const int phone_icon_eyes_close = 2130837680;
+			
+			// aapt resource value: 0x7f0200b1
+			public const int phone_icon_eyes_open = 2130837681;
+			
+			// aapt resource value: 0x7f0200b2
+			public const int phone_icon_face_add = 2130837682;
+			
+			// aapt resource value: 0x7f0200b3
+			public const int phone_icon_face_default = 2130837683;
+			
+			// aapt resource value: 0x7f0200b4
+			public const int phone_icon_face_del = 2130837684;
+			
+			// aapt resource value: 0x7f0200b5
+			public const int phone_icon_face_replace = 2130837685;
+			
+			// aapt resource value: 0x7f0200b6
+			public const int phone_icon_house = 2130837686;
+			
+			// aapt resource value: 0x7f0200b7
+			public const int phone_icon_monitor_screenshot = 2130837687;
+			
+			// aapt resource value: 0x7f0200b8
+			public const int phone_icon_monitor_screenshot_def = 2130837688;
+			
+			// aapt resource value: 0x7f0200b9
+			public const int phone_icon_monitor_screenshot_sel = 2130837689;
+			
+			// aapt resource value: 0x7f0200ba
+			public const int phone_icon_monitor_unlock = 2130837690;
+			
+			// aapt resource value: 0x7f0200bb
+			public const int phone_icon_monitor_unlock_def = 2130837691;
+			
+			// aapt resource value: 0x7f0200bc
+			public const int phone_icon_monitor_unlock_sel = 2130837692;
+			
+			// aapt resource value: 0x7f0200bd
+			public const int phone_icon_more = 2130837693;
+			
+			// aapt resource value: 0x7f0200be
+			public const int phone_icon_portrait = 2130837694;
+			
+			// aapt resource value: 0x7f0200bf
+			public const int phone_icon_qr = 2130837695;
+			
+			// aapt resource value: 0x7f0200c0
+			public const int phone_icon_right = 2130837696;
+			
+			// aapt resource value: 0x7f0200c1
+			public const int phone_qr_code_background = 2130837697;
+			
+			// aapt resource value: 0x7f0200c2
+			public const int phone_temp_password_background = 2130837698;
+			
+			// aapt resource value: 0x7f0200c3
+			public const int phone_tip_background = 2130837699;
+			
+			// aapt resource value: 0x7f0200c4
+			public const int phone_tip_cancel_background = 2130837700;
+			
+			// aapt resource value: 0x7f0200c5
+			public const int phone_tip_confirm_background = 2130837701;
+			
+			// aapt resource value: 0x7f0200c6
+			public const int push_pure_close = 2130837702;
+			
+			// aapt resource value: 0x7f0200c7
+			public const int sc_avatar = 2130837703;
+			
+			// aapt resource value: 0x7f0200c8
+			public const int sc_call_status_incoming = 2130837704;
+			
+			// aapt resource value: 0x7f0200c9
+			public const int sc_call_status_missed = 2130837705;
+			
+			// aapt resource value: 0x7f0200ca
+			public const int sc_call_status_outgoing = 2130837706;
+			
+			// aapt resource value: 0x7f0200cb
+			public const int sc_chat = 2130837707;
+			
+			// aapt resource value: 0x7f0200cc
+			public const int sc_sip_sdk_logo = 2130837708;
+			
+			// aapt resource value: 0x7f0200cd
+			public const int sc_status_level = 2130837709;
+			
+			// aapt resource value: 0x7f0200ce
+			public const int sc_topbar_avatar = 2130837710;
+			
+			// aapt resource value: 0x7f0200cf
+			public const int sc_topbar_call_notification = 2130837711;
+			
+			// aapt resource value: 0x7f0200d0
+			public const int sc_topbar_chat_notification = 2130837712;
+			
+			// aapt resource value: 0x7f0200d1
+			public const int sc_topbar_videocall_notification = 2130837713;
+			
+			// aapt resource value: 0x7f0200d2
+			public const int screenshot = 2130837714;
+			
+			// aapt resource value: 0x7f0200d3
+			public const int screenshot_def = 2130837715;
+			
+			// aapt resource value: 0x7f0200d4
+			public const int screenshot_sel = 2130837716;
+			
+			// aapt resource value: 0x7f0200d5
+			public const int selector_pickerview_btn = 2130837717;
+			
+			// aapt resource value: 0x7f0200d6
+			public const int stat_sys_third_app_notify = 2130837718;
+			
+			// aapt resource value: 0x7f0200d7
+			public const int sure_background_def = 2130837719;
+			
+			// aapt resource value: 0x7f0200d8
+			public const int sure_background_sel = 2130837720;
+			
+			// aapt resource value: 0x7f0200d9
+			public const int tip_background = 2130837721;
+			
+			// aapt resource value: 0x7f0200da
+			public const int tooltip_frame_dark = 2130837722;
+			
+			// aapt resource value: 0x7f0200db
+			public const int tooltip_frame_light = 2130837723;
+			
+			// aapt resource value: 0x7f0200dc
+			public const int unlock = 2130837724;
+			
+			// aapt resource value: 0x7f0200dd
+			public const int unlock_def = 2130837725;
+			
+			// aapt resource value: 0x7f0200de
+			public const int unlock_disable = 2130837726;
+			
+			// aapt resource value: 0x7f0200df
+			public const int unlock_sel = 2130837727;
+			
+			// aapt resource value: 0x7f0200e0
+			public const int upsdk_cancel_bg = 2130837728;
+			
+			// aapt resource value: 0x7f0200e1
+			public const int upsdk_cancel_normal = 2130837729;
+			
+			// aapt resource value: 0x7f0200e2
+			public const int upsdk_cancel_pressed_bg = 2130837730;
+			
+			// aapt resource value: 0x7f0200e3
+			public const int upsdk_third_download_bg = 2130837731;
+			
+			// aapt resource value: 0x7f0200e4
+			public const int video_background = 2130837732;
 			
 			static Drawable()
 			{
@@ -3182,8 +3500,11 @@
 			// aapt resource value: 0x7f090053
 			public const int Translate = 2131296339;
 			
-			// aapt resource value: 0x7f0900ec
-			public const int action0 = 2131296492;
+			// aapt resource value: 0x7f09014d
+			public const int action = 2131296589;
+			
+			// aapt resource value: 0x7f0900e6
+			public const int action0 = 2131296486;
 			
 			// aapt resource value: 0x7f090079
 			public const int action_bar = 2131296377;
@@ -3206,17 +3527,17 @@
 			// aapt resource value: 0x7f090057
 			public const int action_bar_title = 2131296343;
 			
-			// aapt resource value: 0x7f0900e9
-			public const int action_container = 2131296489;
+			// aapt resource value: 0x7f0900e3
+			public const int action_container = 2131296483;
 			
 			// aapt resource value: 0x7f09007a
 			public const int action_context_bar = 2131296378;
 			
-			// aapt resource value: 0x7f0900f0
-			public const int action_divider = 2131296496;
-			
 			// aapt resource value: 0x7f0900ea
-			public const int action_image = 2131296490;
+			public const int action_divider = 2131296490;
+			
+			// aapt resource value: 0x7f0900e4
+			public const int action_image = 2131296484;
 			
 			// aapt resource value: 0x7f090003
 			public const int action_menu_divider = 2131296259;
@@ -3233,11 +3554,11 @@
 			// aapt resource value: 0x7f090059
 			public const int action_mode_close_button = 2131296345;
 			
-			// aapt resource value: 0x7f0900eb
-			public const int action_text = 2131296491;
+			// aapt resource value: 0x7f0900e5
+			public const int action_text = 2131296485;
 			
-			// aapt resource value: 0x7f0900f9
-			public const int actions = 2131296505;
+			// aapt resource value: 0x7f0900f3
+			public const int actions = 2131296499;
 			
 			// aapt resource value: 0x7f09005a
 			public const int activity_chooser_view_content = 2131296346;
@@ -3245,14 +3566,32 @@
 			// aapt resource value: 0x7f090021
 			public const int add = 2131296289;
 			
+			// aapt resource value: 0x7f090127
+			public const int agreement_cancel_tv = 2131296551;
+			
+			// aapt resource value: 0x7f090128
+			public const int agreement_confirm_tv = 2131296552;
+			
+			// aapt resource value: 0x7f090126
+			public const int agreement_tv = 2131296550;
+			
+			// aapt resource value: 0x7f0900f6
+			public const int agreement_wv = 2131296502;
+			
 			// aapt resource value: 0x7f09006d
 			public const int alertTitle = 2131296365;
 			
 			// aapt resource value: 0x7f090047
 			public const int all = 2131296327;
 			
+			// aapt resource value: 0x7f09015b
+			public const int allsize_textview = 2131296603;
+			
 			// aapt resource value: 0x7f09002d
 			public const int always = 2131296301;
+			
+			// aapt resource value: 0x7f09015a
+			public const int appsize_textview = 2131296602;
 			
 			// aapt resource value: 0x7f09004b
 			public const int async = 2131296331;
@@ -3260,11 +3599,11 @@
 			// aapt resource value: 0x7f090039
 			public const int auto = 2131296313;
 			
-			// aapt resource value: 0x7f090102
-			public const int autoAccept = 2131296514;
+			// aapt resource value: 0x7f090135
+			public const int back_ll = 2131296565;
 			
-			// aapt resource value: 0x7f090103
-			public const int autoTest = 2131296515;
+			// aapt resource value: 0x7f090106
+			public const int bar_layout = 2131296518;
 			
 			// aapt resource value: 0x7f090024
 			public const int beginning = 2131296292;
@@ -3275,26 +3614,62 @@
 			// aapt resource value: 0x7f090032
 			public const int bottom = 2131296306;
 			
-			// aapt resource value: 0x7f0900cd
-			public const int btnCancel = 2131296461;
+			// aapt resource value: 0x7f0900ca
+			public const int btnCancel = 2131296458;
 			
-			// aapt resource value: 0x7f0900cf
-			public const int btnSubmit = 2131296463;
+			// aapt resource value: 0x7f0900cc
+			public const int btnSubmit = 2131296460;
 			
 			// aapt resource value: 0x7f090060
 			public const int buttonPanel = 2131296352;
 			
 			// aapt resource value: 0x7f090104
-			public const int call_accept = 2131296516;
+			public const int call_answer_iv = 2131296516;
 			
-			// aapt resource value: 0x7f090128
-			public const int camera0 = 2131296552;
+			// aapt resource value: 0x7f090103
+			public const int call_answer_ll = 2131296515;
 			
-			// aapt resource value: 0x7f090129
-			public const int camera1 = 2131296553;
+			// aapt resource value: 0x7f090102
+			public const int call_answer_parent_ll = 2131296514;
 			
-			// aapt resource value: 0x7f0900ed
-			public const int cancel_action = 2131296493;
+			// aapt resource value: 0x7f090105
+			public const int call_answer_tv = 2131296517;
+			
+			// aapt resource value: 0x7f0900ff
+			public const int call_hangup_iv = 2131296511;
+			
+			// aapt resource value: 0x7f0900fe
+			public const int call_hangup_ll = 2131296510;
+			
+			// aapt resource value: 0x7f090100
+			public const int call_hangup_tv = 2131296512;
+			
+			// aapt resource value: 0x7f0900fb
+			public const int call_house_code_tv = 2131296507;
+			
+			// aapt resource value: 0x7f0900f7
+			public const int call_name_tv = 2131296503;
+			
+			// aapt resource value: 0x7f0900fc
+			public const int call_screenshot_iv = 2131296508;
+			
+			// aapt resource value: 0x7f0900fd
+			public const int call_unlock_iv = 2131296509;
+			
+			// aapt resource value: 0x7f0900f9
+			public const int call_video_capture_surface = 2131296505;
+			
+			// aapt resource value: 0x7f0900f8
+			public const int call_video_surface = 2131296504;
+			
+			// aapt resource value: 0x7f0900e7
+			public const int cancel_action = 2131296487;
+			
+			// aapt resource value: 0x7f090150
+			public const int cancel_bg = 2131296592;
+			
+			// aapt resource value: 0x7f090151
+			public const int cancel_imageview = 2131296593;
 			
 			// aapt resource value: 0x7f09003a
 			public const int center = 2131296314;
@@ -3308,8 +3683,8 @@
 			// aapt resource value: 0x7f090070
 			public const int checkbox = 2131296368;
 			
-			// aapt resource value: 0x7f0900f5
-			public const int chronometer = 2131296501;
+			// aapt resource value: 0x7f0900ef
+			public const int chronometer = 2131296495;
 			
 			// aapt resource value: 0x7f090043
 			public const int clip_horizontal = 2131296323;
@@ -3320,23 +3695,29 @@
 			// aapt resource value: 0x7f09002e
 			public const int collapseActionView = 2131296302;
 			
-			// aapt resource value: 0x7f09011e
-			public const int configAVMsg = 2131296542;
+			// aapt resource value: 0x7f0900a0
+			public const int container = 2131296416;
 			
-			// aapt resource value: 0x7f0900a3
-			public const int container = 2131296419;
+			// aapt resource value: 0x7f090099
+			public const int content = 2131296409;
 			
-			// aapt resource value: 0x7f09009c
-			public const int content = 2131296412;
+			// aapt resource value: 0x7f090161
+			public const int contentFrame = 2131296609;
 			
 			// aapt resource value: 0x7f090063
 			public const int contentPanel = 2131296355;
 			
-			// aapt resource value: 0x7f0900d1
-			public const int content_container = 2131296465;
+			// aapt resource value: 0x7f0900ce
+			public const int content_container = 2131296462;
 			
-			// aapt resource value: 0x7f0900a4
-			public const int coordinator = 2131296420;
+			// aapt resource value: 0x7f09015c
+			public const int content_layout = 2131296604;
+			
+			// aapt resource value: 0x7f09015d
+			public const int content_textview = 2131296605;
+			
+			// aapt resource value: 0x7f0900a1
+			public const int coordinator = 2131296417;
 			
 			// aapt resource value: 0x7f09006a
 			public const int custom = 2131296362;
@@ -3344,8 +3725,8 @@
 			// aapt resource value: 0x7f090069
 			public const int customPanel = 2131296361;
 			
-			// aapt resource value: 0x7f0900dd
-			public const int day = 2131296477;
+			// aapt resource value: 0x7f0900da
+			public const int day = 2131296474;
 			
 			// aapt resource value: 0x7f090077
 			public const int decor_content_parent = 2131296375;
@@ -3353,41 +3734,53 @@
 			// aapt resource value: 0x7f09005d
 			public const int default_activity_button = 2131296349;
 			
-			// aapt resource value: 0x7f09009e
-			public const int description = 2131296414;
+			// aapt resource value: 0x7f09009b
+			public const int description = 2131296411;
 			
-			// aapt resource value: 0x7f0900a6
-			public const int design_bottom_sheet = 2131296422;
-			
-			// aapt resource value: 0x7f0900ad
-			public const int design_menu_item_action_area = 2131296429;
-			
-			// aapt resource value: 0x7f0900ac
-			public const int design_menu_item_action_area_stub = 2131296428;
-			
-			// aapt resource value: 0x7f0900ab
-			public const int design_menu_item_text = 2131296427;
+			// aapt resource value: 0x7f0900a3
+			public const int design_bottom_sheet = 2131296419;
 			
 			// aapt resource value: 0x7f0900aa
-			public const int design_navigation_view = 2131296426;
+			public const int design_menu_item_action_area = 2131296426;
+			
+			// aapt resource value: 0x7f0900a9
+			public const int design_menu_item_action_area_stub = 2131296425;
+			
+			// aapt resource value: 0x7f0900a8
+			public const int design_menu_item_text = 2131296424;
+			
+			// aapt resource value: 0x7f0900a7
+			public const int design_navigation_view = 2131296423;
+			
+			// aapt resource value: 0x7f09012f
+			public const int device_icon_iv = 2131296559;
+			
+			// aapt resource value: 0x7f090130
+			public const int device_name_tv = 2131296560;
+			
+			// aapt resource value: 0x7f090131
+			public const int device_space_tv = 2131296561;
 			
 			// aapt resource value: 0x7f090015
 			public const int disableHome = 2131296277;
 			
-			// aapt resource value: 0x7f09011d
-			public const int disableReportBytes = 2131296541;
+			// aapt resource value: 0x7f090154
+			public const int divider = 2131296596;
+			
+			// aapt resource value: 0x7f0900e1
+			public const int download_info_progress = 2131296481;
 			
 			// aapt resource value: 0x7f09007b
 			public const int edit_query = 2131296379;
 			
-			// aapt resource value: 0x7f09011c
-			public const int enableReportBytes = 2131296540;
+			// aapt resource value: 0x7f090093
+			public const int enable_service_text = 2131296403;
 			
 			// aapt resource value: 0x7f090025
 			public const int end = 2131296293;
 			
-			// aapt resource value: 0x7f0900fb
-			public const int end_padder = 2131296507;
+			// aapt resource value: 0x7f0900f5
+			public const int end_padder = 2131296501;
 			
 			// aapt resource value: 0x7f090034
 			public const int enterAlways = 2131296308;
@@ -3404,6 +3797,21 @@
 			// aapt resource value: 0x7f09006f
 			public const int expanded_menu = 2131296367;
 			
+			// aapt resource value: 0x7f09010d
+			public const int face_add_iv = 2131296525;
+			
+			// aapt resource value: 0x7f09010f
+			public const int face_add_tv = 2131296527;
+			
+			// aapt resource value: 0x7f090110
+			public const int face_gv = 2131296528;
+			
+			// aapt resource value: 0x7f090112
+			public const int face_loading_pb = 2131296530;
+			
+			// aapt resource value: 0x7f09010e
+			public const int face_replace = 2131296526;
+			
 			// aapt resource value: 0x7f090045
 			public const int fill = 2131296325;
 			
@@ -3413,8 +3821,8 @@
 			// aapt resource value: 0x7f09003d
 			public const int fill_vertical = 2131296317;
 			
-			// aapt resource value: 0x7f09009f
-			public const int fingerprint_icon = 2131296415;
+			// aapt resource value: 0x7f09009c
+			public const int fingerprint_icon = 2131296412;
 			
 			// aapt resource value: 0x7f090049
 			public const int @fixed = 2131296329;
@@ -3422,65 +3830,65 @@
 			// aapt resource value: 0x7f09004d
 			public const int forever = 2131296333;
 			
-			// aapt resource value: 0x7f0900c2
-			public const int gd_btn_back = 2131296450;
-			
-			// aapt resource value: 0x7f0900cb
-			public const int gd_btn_myLocation = 2131296459;
-			
-			// aapt resource value: 0x7f0900ca
-			public const int gd_btn_save = 2131296458;
-			
-			// aapt resource value: 0x7f0900c7
-			public const int gd_img_search_delete = 2131296455;
-			
-			// aapt resource value: 0x7f0900c9
-			public const int gd_ll_myhome = 2131296457;
-			
-			// aapt resource value: 0x7f0900c5
-			public const int gd_ll_search = 2131296453;
-			
-			// aapt resource value: 0x7f0900c4
-			public const int gd_mapView = 2131296452;
-			
-			// aapt resource value: 0x7f0900c1
-			public const int gd_rl_topview = 2131296449;
-			
-			// aapt resource value: 0x7f0900c3
-			public const int gd_tv_activity_title = 2131296451;
+			// aapt resource value: 0x7f0900bf
+			public const int gd_btn_back = 2131296447;
 			
 			// aapt resource value: 0x7f0900c8
-			public const int gd_tv_radius = 2131296456;
+			public const int gd_btn_myLocation = 2131296456;
+			
+			// aapt resource value: 0x7f0900c7
+			public const int gd_btn_save = 2131296455;
+			
+			// aapt resource value: 0x7f0900c4
+			public const int gd_img_search_delete = 2131296452;
 			
 			// aapt resource value: 0x7f0900c6
-			public const int gd_tv_search_title = 2131296454;
+			public const int gd_ll_myhome = 2131296454;
 			
-			// aapt resource value: 0x7f090106
-			public const int hangup = 2131296518;
+			// aapt resource value: 0x7f0900c2
+			public const int gd_ll_search = 2131296450;
 			
-			// aapt resource value: 0x7f090108
-			public const int hangupMonitorIn = 2131296520;
+			// aapt resource value: 0x7f0900c1
+			public const int gd_mapView = 2131296449;
 			
-			// aapt resource value: 0x7f0900bf
-			public const int hdl_gallery_rootView = 2131296447;
+			// aapt resource value: 0x7f0900be
+			public const int gd_rl_topview = 2131296446;
 			
 			// aapt resource value: 0x7f0900c0
-			public const int hdl_gallery_viewPager = 2131296448;
+			public const int gd_tv_activity_title = 2131296448;
 			
-			// aapt resource value: 0x7f0900d3
-			public const int hdl_options1 = 2131296467;
+			// aapt resource value: 0x7f0900c5
+			public const int gd_tv_radius = 2131296453;
 			
-			// aapt resource value: 0x7f0900d4
-			public const int hdl_options2 = 2131296468;
+			// aapt resource value: 0x7f0900c3
+			public const int gd_tv_search_title = 2131296451;
 			
-			// aapt resource value: 0x7f0900d5
-			public const int hdl_options3 = 2131296469;
+			// aapt resource value: 0x7f0900bc
+			public const int hdl_gallery_rootView = 2131296444;
+			
+			// aapt resource value: 0x7f0900bd
+			public const int hdl_gallery_viewPager = 2131296445;
+			
+			// aapt resource value: 0x7f0900d0
+			public const int hdl_options1 = 2131296464;
+			
+			// aapt resource value: 0x7f0900d1
+			public const int hdl_options2 = 2131296465;
 			
 			// aapt resource value: 0x7f0900d2
-			public const int hdl_pickerview_ll = 2131296466;
+			public const int hdl_options3 = 2131296466;
 			
-			// aapt resource value: 0x7f090094
-			public const int hide = 2131296404;
+			// aapt resource value: 0x7f0900cf
+			public const int hdl_pickerview_ll = 2131296463;
+			
+			// aapt resource value: 0x7f0900de
+			public const int hms_message_text = 2131296478;
+			
+			// aapt resource value: 0x7f0900e0
+			public const int hms_progress_bar = 2131296480;
+			
+			// aapt resource value: 0x7f0900df
+			public const int hms_progress_text = 2131296479;
 			
 			// aapt resource value: 0x7f090005
 			public const int home = 2131296261;
@@ -3488,23 +3896,23 @@
 			// aapt resource value: 0x7f090016
 			public const int homeAsUp = 2131296278;
 			
-			// aapt resource value: 0x7f0900de
-			public const int hour = 2131296478;
+			// aapt resource value: 0x7f0900db
+			public const int hour = 2131296475;
 			
 			// aapt resource value: 0x7f09005f
 			public const int icon = 2131296351;
 			
-			// aapt resource value: 0x7f090098
-			public const int icon_back = 2131296408;
+			// aapt resource value: 0x7f090094
+			public const int icon_back = 2131296404;
 			
-			// aapt resource value: 0x7f0900fa
-			public const int icon_group = 2131296506;
+			// aapt resource value: 0x7f0900f4
+			public const int icon_group = 2131296500;
 			
-			// aapt resource value: 0x7f0900b2
-			public const int icon_screenshot = 2131296434;
+			// aapt resource value: 0x7f0900af
+			public const int icon_screenshot = 2131296431;
 			
-			// aapt resource value: 0x7f0900b3
-			public const int icon_unlock = 2131296435;
+			// aapt resource value: 0x7f0900b0
+			public const int icon_unlock = 2131296432;
 			
 			// aapt resource value: 0x7f09002f
 			public const int ifRoom = 2131296303;
@@ -3512,14 +3920,17 @@
 			// aapt resource value: 0x7f09005c
 			public const int image = 2131296348;
 			
-			// aapt resource value: 0x7f0900b9
-			public const int img_call = 2131296441;
+			// aapt resource value: 0x7f0900fa
+			public const int img = 2131296506;
 			
 			// aapt resource value: 0x7f0900b6
-			public const int img_hangup = 2131296438;
+			public const int img_call = 2131296438;
 			
-			// aapt resource value: 0x7f0900f6
-			public const int info = 2131296502;
+			// aapt resource value: 0x7f0900b3
+			public const int img_hangup = 2131296435;
+			
+			// aapt resource value: 0x7f0900f0
+			public const int info = 2131296496;
 			
 			// aapt resource value: 0x7f09004e
 			public const int italic = 2131296334;
@@ -3527,29 +3938,8 @@
 			// aapt resource value: 0x7f090000
 			public const int item_touch_helper_previous_elevation = 2131296256;
 			
-			// aapt resource value: 0x7f0900a2
-			public const int largeLabel = 2131296418;
-			
-			// aapt resource value: 0x7f0900e3
-			public const int leak_canary_action = 2131296483;
-			
-			// aapt resource value: 0x7f0900e2
-			public const int leak_canary_display_leak_failure = 2131296482;
-			
-			// aapt resource value: 0x7f0900e1
-			public const int leak_canary_display_leak_list = 2131296481;
-			
-			// aapt resource value: 0x7f0900e6
-			public const int leak_canary_row_connector = 2131296486;
-			
-			// aapt resource value: 0x7f0900e7
-			public const int leak_canary_row_more = 2131296487;
-			
-			// aapt resource value: 0x7f0900e4
-			public const int leak_canary_row_text = 2131296484;
-			
-			// aapt resource value: 0x7f0900e5
-			public const int leak_canary_row_time = 2131296485;
+			// aapt resource value: 0x7f09009f
+			public const int largeLabel = 2131296415;
 			
 			// aapt resource value: 0x7f09003e
 			public const int left = 2131296318;
@@ -3566,44 +3956,95 @@
 			// aapt resource value: 0x7f09005e
 			public const int list_item = 2131296350;
 			
-			// aapt resource value: 0x7f09011a
-			public const int localDoorUnlock = 2131296538;
+			// aapt resource value: 0x7f090096
+			public const int localVideo = 2131296406;
 			
-			// aapt resource value: 0x7f09009a
-			public const int localVideo = 2131296410;
+			// aapt resource value: 0x7f090163
+			public const int masked = 2131296611;
 			
-			// aapt resource value: 0x7f090131
-			public const int masked = 2131296561;
+			// aapt resource value: 0x7f0900e9
+			public const int media_actions = 2131296489;
 			
-			// aapt resource value: 0x7f0900ef
-			public const int media_actions = 2131296495;
-			
-			// aapt resource value: 0x7f090126
-			public const int message = 2131296550;
+			// aapt resource value: 0x7f09014c
+			public const int message = 2131296588;
 			
 			// aapt resource value: 0x7f090026
 			public const int middle = 2131296294;
 			
-			// aapt resource value: 0x7f0900df
-			public const int min = 2131296479;
+			// aapt resource value: 0x7f0900dc
+			public const int min = 2131296476;
 			
 			// aapt resource value: 0x7f090048
 			public const int mini = 2131296328;
 			
-			// aapt resource value: 0x7f090107
-			public const int monitor = 2131296519;
+			// aapt resource value: 0x7f090115
+			public const int monitor_back_ll = 2131296533;
 			
-			// aapt resource value: 0x7f0900dc
-			public const int month = 2131296476;
+			// aapt resource value: 0x7f09011a
+			public const int monitor_house_code_tv = 2131296538;
+			
+			// aapt resource value: 0x7f090116
+			public const int monitor_more_ll = 2131296534;
+			
+			// aapt resource value: 0x7f090117
+			public const int monitor_name_tv = 2131296535;
+			
+			// aapt resource value: 0x7f09011c
+			public const int monitor_screenshot_iv = 2131296540;
+			
+			// aapt resource value: 0x7f09011b
+			public const int monitor_screenshot_ll = 2131296539;
+			
+			// aapt resource value: 0x7f09011d
+			public const int monitor_screenshot_tv = 2131296541;
+			
+			// aapt resource value: 0x7f09011f
+			public const int monitor_unlock_iv = 2131296543;
+			
+			// aapt resource value: 0x7f09011e
+			public const int monitor_unlock_ll = 2131296542;
+			
+			// aapt resource value: 0x7f090120
+			public const int monitor_unlock_tv = 2131296544;
+			
+			// aapt resource value: 0x7f090119
+			public const int monitor_video_capture_surface = 2131296537;
+			
+			// aapt resource value: 0x7f090118
+			public const int monitor_video_surface = 2131296536;
+			
+			// aapt resource value: 0x7f0900d9
+			public const int month = 2131296473;
+			
+			// aapt resource value: 0x7f090137
+			public const int more_ll = 2131296567;
+			
+			// aapt resource value: 0x7f090138
+			public const int more_tv = 2131296568;
 			
 			// aapt resource value: 0x7f09001c
 			public const int multiply = 2131296284;
 			
-			// aapt resource value: 0x7f0900e8
-			public const int myButton = 2131296488;
+			// aapt resource value: 0x7f0900e2
+			public const int myButton = 2131296482;
 			
-			// aapt resource value: 0x7f0900a9
-			public const int navigation_header_container = 2131296425;
+			// aapt resource value: 0x7f090109
+			public const int name_et = 2131296521;
+			
+			// aapt resource value: 0x7f090155
+			public const int name_layout = 2131296597;
+			
+			// aapt resource value: 0x7f090107
+			public const int name_rl = 2131296519;
+			
+			// aapt resource value: 0x7f090156
+			public const int name_textview = 2131296598;
+			
+			// aapt resource value: 0x7f090108
+			public const int name_tv = 2131296520;
+			
+			// aapt resource value: 0x7f0900a6
+			public const int navigation_header_container = 2131296422;
 			
 			// aapt resource value: 0x7f090030
 			public const int never = 2131296304;
@@ -3614,29 +4055,29 @@
 			// aapt resource value: 0x7f090013
 			public const int normal = 2131296275;
 			
-			// aapt resource value: 0x7f0900f8
-			public const int notification_background = 2131296504;
-			
 			// aapt resource value: 0x7f0900f2
-			public const int notification_main_column = 2131296498;
+			public const int notification_background = 2131296498;
 			
-			// aapt resource value: 0x7f0900f1
-			public const int notification_main_column_container = 2131296497;
+			// aapt resource value: 0x7f0900ec
+			public const int notification_main_column = 2131296492;
 			
-			// aapt resource value: 0x7f0900d7
-			public const int options1 = 2131296471;
+			// aapt resource value: 0x7f0900eb
+			public const int notification_main_column_container = 2131296491;
 			
-			// aapt resource value: 0x7f0900d8
-			public const int options2 = 2131296472;
+			// aapt resource value: 0x7f0900d4
+			public const int options1 = 2131296468;
 			
-			// aapt resource value: 0x7f0900d9
-			public const int options3 = 2131296473;
+			// aapt resource value: 0x7f0900d5
+			public const int options2 = 2131296469;
 			
 			// aapt resource value: 0x7f0900d6
-			public const int optionspicker = 2131296470;
+			public const int options3 = 2131296470;
 			
-			// aapt resource value: 0x7f0900d0
-			public const int outmost_container = 2131296464;
+			// aapt resource value: 0x7f0900d3
+			public const int optionspicker = 2131296467;
+			
+			// aapt resource value: 0x7f0900cd
+			public const int outmost_container = 2131296461;
 			
 			// aapt resource value: 0x7f090041
 			public const int parallax = 2131296321;
@@ -3644,8 +4085,44 @@
 			// aapt resource value: 0x7f090062
 			public const int parentPanel = 2131296354;
 			
-			// aapt resource value: 0x7f090105
-			public const int peerAddress = 2131296517;
+			// aapt resource value: 0x7f090101
+			public const int phone_chronometer = 2131296513;
+			
+			// aapt resource value: 0x7f09012d
+			public const int phone_dialog_cancel_tv = 2131296557;
+			
+			// aapt resource value: 0x7f09012e
+			public const int phone_dialog_confirm_tv = 2131296558;
+			
+			// aapt resource value: 0x7f090133
+			public const int phone_face_del_ll = 2131296563;
+			
+			// aapt resource value: 0x7f090134
+			public const int phone_face_tv = 2131296564;
+			
+			// aapt resource value: 0x7f090132
+			public const int phone_face_wiv = 2131296562;
+			
+			// aapt resource value: 0x7f09010c
+			public const int phone_number_et = 2131296524;
+			
+			// aapt resource value: 0x7f09010a
+			public const int phone_number_rl = 2131296522;
+			
+			// aapt resource value: 0x7f09010b
+			public const int phone_number_tv = 2131296523;
+			
+			// aapt resource value: 0x7f09012c
+			public const int phone_title_tv = 2131296556;
+			
+			// aapt resource value: 0x7f09012b
+			public const int photo_cancel_tv = 2131296555;
+			
+			// aapt resource value: 0x7f09012a
+			public const int photo_select_tv = 2131296554;
+			
+			// aapt resource value: 0x7f090129
+			public const int photograph_tv = 2131296553;
 			
 			// aapt resource value: 0x7f090042
 			public const int pin = 2131296322;
@@ -3656,59 +4133,80 @@
 			// aapt resource value: 0x7f090007
 			public const int progress_horizontal = 2131296263;
 			
+			// aapt resource value: 0x7f090111
+			public const int progress_ll = 2131296529;
+			
+			// aapt resource value: 0x7f090142
+			public const int push_big_bigtext_defaultView = 2131296578;
+			
+			// aapt resource value: 0x7f090143
+			public const int push_big_bigview_defaultView = 2131296579;
+			
+			// aapt resource value: 0x7f09013a
+			public const int push_big_defaultView = 2131296570;
+			
+			// aapt resource value: 0x7f09013d
+			public const int push_big_notification = 2131296573;
+			
+			// aapt resource value: 0x7f090140
+			public const int push_big_notification_content = 2131296576;
+			
+			// aapt resource value: 0x7f09013e
+			public const int push_big_notification_date = 2131296574;
+			
+			// aapt resource value: 0x7f09013b
+			public const int push_big_notification_icon = 2131296571;
+			
+			// aapt resource value: 0x7f09013c
+			public const int push_big_notification_icon2 = 2131296572;
+			
+			// aapt resource value: 0x7f09013f
+			public const int push_big_notification_title = 2131296575;
+			
+			// aapt resource value: 0x7f090139
+			public const int push_big_pic_default_Content = 2131296569;
+			
+			// aapt resource value: 0x7f090141
+			public const int push_big_text_notification_area = 2131296577;
+			
+			// aapt resource value: 0x7f090145
+			public const int push_pure_bigview_banner = 2131296581;
+			
+			// aapt resource value: 0x7f090144
+			public const int push_pure_bigview_expanded = 2131296580;
+			
+			// aapt resource value: 0x7f090146
+			public const int push_pure_close = 2131296582;
+			
 			// aapt resource value: 0x7f090072
 			public const int radio = 2131296370;
 			
-			// aapt resource value: 0x7f090096
-			public const int remoteFrame = 2131296406;
-			
-			// aapt resource value: 0x7f090095
-			public const int remoteFrameContainer = 2131296405;
-			
 			// aapt resource value: 0x7f090097
-			public const int remoteVideo = 2131296407;
-			
-			// aapt resource value: 0x7f0900fe
-			public const int requestA = 2131296510;
-			
-			// aapt resource value: 0x7f090113
-			public const int requestMasterAudio = 2131296531;
-			
-			// aapt resource value: 0x7f090114
-			public const int requestMasterVideo = 2131296532;
-			
-			// aapt resource value: 0x7f0900ff
-			public const int requestV = 2131296511;
-			
-			// aapt resource value: 0x7f090115
-			public const int reverseCall = 2131296533;
-			
-			// aapt resource value: 0x7f090116
-			public const int reverseCallInfo = 2131296534;
+			public const int remoteFrame = 2131296407;
 			
 			// aapt resource value: 0x7f09003f
 			public const int right = 2131296319;
 			
-			// aapt resource value: 0x7f0900f7
-			public const int right_icon = 2131296503;
+			// aapt resource value: 0x7f0900f1
+			public const int right_icon = 2131296497;
 			
-			// aapt resource value: 0x7f0900f3
-			public const int right_side = 2131296499;
-			
-			// aapt resource value: 0x7f0900b8
-			public const int rl_call = 2131296440;
+			// aapt resource value: 0x7f0900ed
+			public const int right_side = 2131296493;
 			
 			// aapt resource value: 0x7f0900b5
-			public const int rl_hangup = 2131296437;
+			public const int rl_call = 2131296437;
 			
-			// aapt resource value: 0x7f0900bb
-			public const int rl_sceenshot = 2131296443;
+			// aapt resource value: 0x7f0900b2
+			public const int rl_hangup = 2131296434;
 			
-			// aapt resource value: 0x7f0900bd
-			public const int rl_unlock = 2131296445;
+			// aapt resource value: 0x7f0900b8
+			public const int rl_sceenshot = 2131296440;
 			
-			// aapt resource value: 0x7f0900cc
-			public const int rv_topbar = 2131296460;
+			// aapt resource value: 0x7f0900ba
+			public const int rl_unlock = 2131296442;
+			
+			// aapt resource value: 0x7f0900c9
+			public const int rv_topbar = 2131296457;
 			
 			// aapt resource value: 0x7f09001d
 			public const int screen = 2131296285;
@@ -3724,6 +4222,9 @@
 			
 			// aapt resource value: 0x7f090065
 			public const int scrollView = 2131296357;
+			
+			// aapt resource value: 0x7f090153
+			public const int scroll_layout = 2131296595;
 			
 			// aapt resource value: 0x7f09004a
 			public const int scrollable = 2131296330;
@@ -3758,26 +4259,14 @@
 			// aapt resource value: 0x7f090086
 			public const int search_voice_btn = 2131296390;
 			
-			// aapt resource value: 0x7f0900e0
-			public const int second = 2131296480;
+			// aapt resource value: 0x7f0900dd
+			public const int second = 2131296477;
 			
 			// aapt resource value: 0x7f090087
 			public const int select_dialog_listview = 2131296391;
 			
-			// aapt resource value: 0x7f090100
-			public const int sendA = 2131296512;
-			
-			// aapt resource value: 0x7f090112
-			public const int sendCustomData = 2131296530;
-			
-			// aapt resource value: 0x7f090101
-			public const int sendV = 2131296513;
-			
 			// aapt resource value: 0x7f090071
 			public const int shortcut = 2131296369;
-			
-			// aapt resource value: 0x7f090093
-			public const int show = 2131296403;
 			
 			// aapt resource value: 0x7f090018
 			public const int showCustom = 2131296280;
@@ -3788,20 +4277,20 @@
 			// aapt resource value: 0x7f09001a
 			public const int showTitle = 2131296282;
 			
-			// aapt resource value: 0x7f0900a1
-			public const int smallLabel = 2131296417;
+			// aapt resource value: 0x7f090159
+			public const int size_layout = 2131296601;
 			
-			// aapt resource value: 0x7f0900a8
-			public const int snackbar_action = 2131296424;
+			// aapt resource value: 0x7f09009e
+			public const int smallLabel = 2131296414;
 			
-			// aapt resource value: 0x7f0900a7
-			public const int snackbar_text = 2131296423;
+			// aapt resource value: 0x7f0900a5
+			public const int snackbar_action = 2131296421;
+			
+			// aapt resource value: 0x7f0900a4
+			public const int snackbar_text = 2131296420;
 			
 			// aapt resource value: 0x7f090038
 			public const int snap = 2131296312;
-			
-			// aapt resource value: 0x7f090111
-			public const int snapshot = 2131296529;
 			
 			// aapt resource value: 0x7f090061
 			public const int spacer = 2131296353;
@@ -3818,47 +4307,23 @@
 			// aapt resource value: 0x7f090020
 			public const int src_over = 2131296288;
 			
-			// aapt resource value: 0x7f090121
-			public const int srl_classics_arrow = 2131296545;
+			// aapt resource value: 0x7f090147
+			public const int srl_classics_arrow = 2131296583;
 			
-			// aapt resource value: 0x7f090124
-			public const int srl_classics_center = 2131296548;
+			// aapt resource value: 0x7f09014a
+			public const int srl_classics_center = 2131296586;
 			
-			// aapt resource value: 0x7f090123
-			public const int srl_classics_progress = 2131296547;
+			// aapt resource value: 0x7f090149
+			public const int srl_classics_progress = 2131296585;
 			
-			// aapt resource value: 0x7f090122
-			public const int srl_classics_title = 2131296546;
+			// aapt resource value: 0x7f090148
+			public const int srl_classics_title = 2131296584;
 			
-			// aapt resource value: 0x7f090125
-			public const int srl_classics_update = 2131296549;
+			// aapt resource value: 0x7f09014b
+			public const int srl_classics_update = 2131296587;
 			
 			// aapt resource value: 0x7f090040
 			public const int start = 2131296320;
-			
-			// aapt resource value: 0x7f09011f
-			public const int startAVMsg = 2131296543;
-			
-			// aapt resource value: 0x7f090119
-			public const int startDoorKey = 2131296537;
-			
-			// aapt resource value: 0x7f09010d
-			public const int startLocalRecord = 2131296525;
-			
-			// aapt resource value: 0x7f090117
-			public const int startReadCard = 2131296535;
-			
-			// aapt resource value: 0x7f09010b
-			public const int startRecord = 2131296523;
-			
-			// aapt resource value: 0x7f09010f
-			public const int startRecordLocalAudio = 2131296527;
-			
-			// aapt resource value: 0x7f090109
-			public const int startRecordPeerAudio = 2131296521;
-			
-			// aapt resource value: 0x7f09012b
-			public const int startStream = 2131296555;
 			
 			// aapt resource value: 0x7f09008f
 			public const int startV1 = 2131296399;
@@ -3869,44 +4334,14 @@
 			// aapt resource value: 0x7f090090
 			public const int startV4 = 2131296400;
 			
-			// aapt resource value: 0x7f0900fc
-			public const int start_stop = 2131296508;
+			// aapt resource value: 0x7f09009d
+			public const int status = 2131296413;
 			
-			// aapt resource value: 0x7f0900fd
-			public const int start_stop_stream = 2131296509;
-			
-			// aapt resource value: 0x7f0900a0
-			public const int status = 2131296416;
-			
-			// aapt resource value: 0x7f0900ee
-			public const int status_bar_latest_event_content = 2131296494;
+			// aapt resource value: 0x7f0900e8
+			public const int status_bar_latest_event_content = 2131296488;
 			
 			// aapt resource value: 0x7f090092
 			public const int stop = 2131296402;
-			
-			// aapt resource value: 0x7f090120
-			public const int stopAVMsg = 2131296544;
-			
-			// aapt resource value: 0x7f09011b
-			public const int stopDoorKey = 2131296539;
-			
-			// aapt resource value: 0x7f09010e
-			public const int stopLocalRecord = 2131296526;
-			
-			// aapt resource value: 0x7f090118
-			public const int stopReadCard = 2131296536;
-			
-			// aapt resource value: 0x7f09010c
-			public const int stopRecord = 2131296524;
-			
-			// aapt resource value: 0x7f090110
-			public const int stopRecordLocalAudio = 2131296528;
-			
-			// aapt resource value: 0x7f09010a
-			public const int stopRecordPeerAudio = 2131296522;
-			
-			// aapt resource value: 0x7f09012c
-			public const int stopStream = 2131296556;
 			
 			// aapt resource value: 0x7f090073
 			public const int submenuarrow = 2131296371;
@@ -3914,11 +4349,26 @@
 			// aapt resource value: 0x7f090084
 			public const int submit_area = 2131296388;
 			
-			// aapt resource value: 0x7f09009d
-			public const int subtitle = 2131296413;
+			// aapt resource value: 0x7f09009a
+			public const int subtitle = 2131296410;
 			
 			// aapt resource value: 0x7f090014
 			public const int tabMode = 2131296276;
+			
+			// aapt resource value: 0x7f090121
+			public const int temp_pwd_bar_rl = 2131296545;
+			
+			// aapt resource value: 0x7f090124
+			public const int temp_pwd_eyes_iv = 2131296548;
+			
+			// aapt resource value: 0x7f090125
+			public const int temp_pwd_qr_code_iv = 2131296549;
+			
+			// aapt resource value: 0x7f090122
+			public const int temp_pwd_table_tv = 2131296546;
+			
+			// aapt resource value: 0x7f090123
+			public const int temp_pwd_tv = 2131296547;
 			
 			// aapt resource value: 0x7f09000f
 			public const int text = 2131296271;
@@ -3932,8 +4382,8 @@
 			// aapt resource value: 0x7f090066
 			public const int textSpacerNoTitle = 2131296358;
 			
-			// aapt resource value: 0x7f0900ae
-			public const int text_input_password_toggle = 2131296430;
+			// aapt resource value: 0x7f0900ab
+			public const int text_input_password_toggle = 2131296427;
 			
 			// aapt resource value: 0x7f09000a
 			public const int textinput_counter = 2131296266;
@@ -3941,11 +4391,20 @@
 			// aapt resource value: 0x7f09000b
 			public const int textinput_error = 2131296267;
 			
-			// aapt resource value: 0x7f0900f4
-			public const int time = 2131296500;
+			// aapt resource value: 0x7f09014e
+			public const int third_app_dl_progress_text = 2131296590;
 			
-			// aapt resource value: 0x7f0900da
-			public const int timepicker = 2131296474;
+			// aapt resource value: 0x7f090152
+			public const int third_app_dl_progressbar = 2131296594;
+			
+			// aapt resource value: 0x7f09014f
+			public const int third_app_warn_text = 2131296591;
+			
+			// aapt resource value: 0x7f0900ee
+			public const int time = 2131296494;
+			
+			// aapt resource value: 0x7f0900d7
+			public const int timepicker = 2131296471;
 			
 			// aapt resource value: 0x7f090011
 			public const int title = 2131296273;
@@ -3956,56 +4415,59 @@
 			// aapt resource value: 0x7f09006c
 			public const int title_template = 2131296364;
 			
+			// aapt resource value: 0x7f090136
+			public const int title_tv = 2131296566;
+			
 			// aapt resource value: 0x7f090033
 			public const int top = 2131296307;
 			
 			// aapt resource value: 0x7f09006b
 			public const int topPanel = 2131296363;
 			
-			// aapt resource value: 0x7f0900a5
-			public const int touch_outside = 2131296421;
+			// aapt resource value: 0x7f0900a2
+			public const int touch_outside = 2131296418;
 			
-			// aapt resource value: 0x7f0900ce
-			public const int tvTitle = 2131296462;
-			
-			// aapt resource value: 0x7f0900ba
-			public const int tv_call = 2131296442;
-			
-			// aapt resource value: 0x7f0900b0
-			public const int tv_content = 2131296432;
+			// aapt resource value: 0x7f0900cb
+			public const int tvTitle = 2131296459;
 			
 			// aapt resource value: 0x7f0900b7
-			public const int tv_hangup = 2131296439;
+			public const int tv_call = 2131296439;
 			
-			// aapt resource value: 0x7f090099
-			public const int tv_name = 2131296409;
-			
-			// aapt resource value: 0x7f0900b1
-			public const int tv_ok = 2131296433;
-			
-			// aapt resource value: 0x7f09009b
-			public const int tv_roomName = 2131296411;
-			
-			// aapt resource value: 0x7f0900bc
-			public const int tv_screenshot = 2131296444;
+			// aapt resource value: 0x7f0900ad
+			public const int tv_content = 2131296429;
 			
 			// aapt resource value: 0x7f0900b4
-			public const int tv_tip = 2131296436;
+			public const int tv_hangup = 2131296436;
 			
-			// aapt resource value: 0x7f0900af
-			public const int tv_title = 2131296431;
+			// aapt resource value: 0x7f090095
+			public const int tv_name = 2131296405;
 			
-			// aapt resource value: 0x7f0900be
-			public const int tv_unlock = 2131296446;
+			// aapt resource value: 0x7f0900ae
+			public const int tv_ok = 2131296430;
 			
-			// aapt resource value: 0x7f09012e
-			public const int tv_zxing_back = 2131296558;
+			// aapt resource value: 0x7f090098
+			public const int tv_roomName = 2131296408;
 			
-			// aapt resource value: 0x7f09012f
-			public const int tv_zxing_flash = 2131296559;
+			// aapt resource value: 0x7f0900b9
+			public const int tv_screenshot = 2131296441;
 			
-			// aapt resource value: 0x7f09012d
-			public const int tv_zxing_scan = 2131296557;
+			// aapt resource value: 0x7f0900b1
+			public const int tv_tip = 2131296433;
+			
+			// aapt resource value: 0x7f0900ac
+			public const int tv_title = 2131296428;
+			
+			// aapt resource value: 0x7f0900bb
+			public const int tv_unlock = 2131296443;
+			
+			// aapt resource value: 0x7f09015f
+			public const int tv_zxing_back = 2131296607;
+			
+			// aapt resource value: 0x7f090160
+			public const int tv_zxing_flash = 2131296608;
+			
+			// aapt resource value: 0x7f09015e
+			public const int tv_zxing_scan = 2131296606;
 			
 			// aapt resource value: 0x7f090022
 			public const int uniform = 2131296290;
@@ -4016,17 +4478,23 @@
 			// aapt resource value: 0x7f09001b
 			public const int useLogo = 2131296283;
 			
-			// aapt resource value: 0x7f09012a
-			public const int uvc = 2131296554;
+			// aapt resource value: 0x7f090157
+			public const int version_layout = 2131296599;
 			
-			// aapt resource value: 0x7f090127
-			public const int videoParent = 2131296551;
+			// aapt resource value: 0x7f090158
+			public const int version_textview = 2131296600;
+			
+			// aapt resource value: 0x7f090113
+			public const int video_device_lv = 2131296531;
+			
+			// aapt resource value: 0x7f090114
+			public const int video_progress_ll = 2131296532;
 			
 			// aapt resource value: 0x7f09000c
 			public const int view_offset_helper = 2131296268;
 			
-			// aapt resource value: 0x7f090130
-			public const int visible = 2131296560;
+			// aapt resource value: 0x7f090162
+			public const int visible = 2131296610;
 			
 			// aapt resource value: 0x7f090031
 			public const int withText = 2131296305;
@@ -4034,8 +4502,8 @@
 			// aapt resource value: 0x7f090023
 			public const int wrap_content = 2131296291;
 			
-			// aapt resource value: 0x7f0900db
-			public const int year = 2131296475;
+			// aapt resource value: 0x7f0900d8
+			public const int year = 2131296472;
 			
 			static Id()
 			{
@@ -4056,8 +4524,8 @@
 			// aapt resource value: 0x7f0e0001
 			public const int abc_config_activityShortDur = 2131623937;
 			
-			// aapt resource value: 0x7f0e000a
-			public const int animation_default_duration = 2131623946;
+			// aapt resource value: 0x7f0e000c
+			public const int animation_default_duration = 2131623948;
 			
 			// aapt resource value: 0x7f0e0005
 			public const int app_bar_elevation_anim_duration = 2131623941;
@@ -4076,6 +4544,12 @@
 			
 			// aapt resource value: 0x7f0e0007
 			public const int hide_password_duration = 2131623943;
+			
+			// aapt resource value: 0x7f0e000a
+			public const int sc_notification_ms_off = 2131623946;
+			
+			// aapt resource value: 0x7f0e000b
+			public const int sc_notification_ms_on = 2131623947;
 			
 			// aapt resource value: 0x7f0e0008
 			public const int show_password_duration = 2131623944;
@@ -4181,7 +4655,7 @@
 			public const int activity_elian = 2130968603;
 			
 			// aapt resource value: 0x7f04001c
-			public const int activity_main = 2130968604;
+			public const int activity_endisable_service = 2130968604;
 			
 			// aapt resource value: 0x7f04001d
 			public const int activity_video_phone = 2130968605;
@@ -4268,100 +4742,151 @@
 			public const int hdl_widget_pickerview_time = 2130968632;
 			
 			// aapt resource value: 0x7f040039
-			public const int leak_canary_display_leak = 2130968633;
+			public const int hms_download_progress = 2130968633;
 			
 			// aapt resource value: 0x7f04003a
-			public const int leak_canary_heap_dump_toast = 2130968634;
+			public const int Main = 2130968634;
 			
 			// aapt resource value: 0x7f04003b
-			public const int leak_canary_leak_row = 2130968635;
+			public const int notification_action = 2130968635;
 			
 			// aapt resource value: 0x7f04003c
-			public const int leak_canary_ref_row = 2130968636;
+			public const int notification_action_tombstone = 2130968636;
 			
 			// aapt resource value: 0x7f04003d
-			public const int leak_canary_ref_top_row = 2130968637;
+			public const int notification_media_action = 2130968637;
 			
 			// aapt resource value: 0x7f04003e
-			public const int Main = 2130968638;
+			public const int notification_media_cancel_action = 2130968638;
 			
 			// aapt resource value: 0x7f04003f
-			public const int notification_action = 2130968639;
+			public const int notification_template_big_media = 2130968639;
 			
 			// aapt resource value: 0x7f040040
-			public const int notification_action_tombstone = 2130968640;
+			public const int notification_template_big_media_custom = 2130968640;
 			
 			// aapt resource value: 0x7f040041
-			public const int notification_media_action = 2130968641;
+			public const int notification_template_big_media_narrow = 2130968641;
 			
 			// aapt resource value: 0x7f040042
-			public const int notification_media_cancel_action = 2130968642;
+			public const int notification_template_big_media_narrow_custom = 2130968642;
 			
 			// aapt resource value: 0x7f040043
-			public const int notification_template_big_media = 2130968643;
+			public const int notification_template_custom_big = 2130968643;
 			
 			// aapt resource value: 0x7f040044
-			public const int notification_template_big_media_custom = 2130968644;
+			public const int notification_template_icon_group = 2130968644;
 			
 			// aapt resource value: 0x7f040045
-			public const int notification_template_big_media_narrow = 2130968645;
+			public const int notification_template_lines_media = 2130968645;
 			
 			// aapt resource value: 0x7f040046
-			public const int notification_template_big_media_narrow_custom = 2130968646;
+			public const int notification_template_media = 2130968646;
 			
 			// aapt resource value: 0x7f040047
-			public const int notification_template_custom_big = 2130968647;
+			public const int notification_template_media_custom = 2130968647;
 			
 			// aapt resource value: 0x7f040048
-			public const int notification_template_icon_group = 2130968648;
+			public const int notification_template_part_chronometer = 2130968648;
 			
 			// aapt resource value: 0x7f040049
-			public const int notification_template_lines_media = 2130968649;
+			public const int notification_template_part_time = 2130968649;
 			
 			// aapt resource value: 0x7f04004a
-			public const int notification_template_media = 2130968650;
+			public const int phone_activity_agreement = 2130968650;
 			
 			// aapt resource value: 0x7f04004b
-			public const int notification_template_media_custom = 2130968651;
+			public const int phone_activity_call = 2130968651;
 			
 			// aapt resource value: 0x7f04004c
-			public const int notification_template_part_chronometer = 2130968652;
+			public const int phone_activity_face_add = 2130968652;
 			
 			// aapt resource value: 0x7f04004d
-			public const int notification_template_part_time = 2130968653;
+			public const int phone_activity_face_manage = 2130968653;
 			
 			// aapt resource value: 0x7f04004e
-			public const int select_dialog_item_material = 2130968654;
+			public const int phone_activity_intercom_device = 2130968654;
 			
 			// aapt resource value: 0x7f04004f
-			public const int select_dialog_multichoice_material = 2130968655;
+			public const int phone_activity_monitor = 2130968655;
 			
 			// aapt resource value: 0x7f040050
-			public const int select_dialog_singlechoice_material = 2130968656;
+			public const int phone_activity_temporary_password = 2130968656;
 			
 			// aapt resource value: 0x7f040051
-			public const int simple_demo = 2130968657;
+			public const int phone_dialog_agreement = 2130968657;
 			
 			// aapt resource value: 0x7f040052
-			public const int srl_classics_footer = 2130968658;
+			public const int phone_dialog_photo = 2130968658;
 			
 			// aapt resource value: 0x7f040053
-			public const int srl_classics_header = 2130968659;
+			public const int phone_dialog_tip = 2130968659;
 			
 			// aapt resource value: 0x7f040054
-			public const int support_simple_spinner_dropdown_item = 2130968660;
+			public const int phone_item_device = 2130968660;
 			
 			// aapt resource value: 0x7f040055
-			public const int test_surfaceview = 2130968661;
+			public const int phone_item_face = 2130968661;
 			
 			// aapt resource value: 0x7f040056
-			public const int tooltip = 2130968662;
+			public const int phone_layout_top_bar = 2130968662;
 			
 			// aapt resource value: 0x7f040057
-			public const int video_device = 2130968663;
+			public const int push_expandable_big_image_notification = 2130968663;
 			
 			// aapt resource value: 0x7f040058
-			public const int zxing_layout = 2130968664;
+			public const int push_expandable_big_text_notification = 2130968664;
+			
+			// aapt resource value: 0x7f040059
+			public const int push_pure_pic_notification_f6 = 2130968665;
+			
+			// aapt resource value: 0x7f04005a
+			public const int push_pure_pic_notification_f7 = 2130968666;
+			
+			// aapt resource value: 0x7f04005b
+			public const int push_pure_pic_notification_f8 = 2130968667;
+			
+			// aapt resource value: 0x7f04005c
+			public const int push_pure_pic_notification_f9 = 2130968668;
+			
+			// aapt resource value: 0x7f04005d
+			public const int push_pure_pic_notification_f9_275 = 2130968669;
+			
+			// aapt resource value: 0x7f04005e
+			public const int select_dialog_item_material = 2130968670;
+			
+			// aapt resource value: 0x7f04005f
+			public const int select_dialog_multichoice_material = 2130968671;
+			
+			// aapt resource value: 0x7f040060
+			public const int select_dialog_singlechoice_material = 2130968672;
+			
+			// aapt resource value: 0x7f040061
+			public const int srl_classics_footer = 2130968673;
+			
+			// aapt resource value: 0x7f040062
+			public const int srl_classics_header = 2130968674;
+			
+			// aapt resource value: 0x7f040063
+			public const int support_simple_spinner_dropdown_item = 2130968675;
+			
+			// aapt resource value: 0x7f040064
+			public const int tooltip = 2130968676;
+			
+			// aapt resource value: 0x7f040065
+			public const int upsdk_app_dl_progress_dialog = 2130968677;
+			
+			// aapt resource value: 0x7f040066
+			public const int upsdk_ota_update_view = 2130968678;
+			
+			// aapt resource value: 0x7f040067
+			public const int zxing_layout = 2130968679;
+			
+			// aapt resource value: 0x7f040068
+			public const int zxingscanneractivitylayout = 2130968680;
+			
+			// aapt resource value: 0x7f040069
+			public const int zxingscannerfragmentlayout = 2130968681;
 			
 			static Layout()
 			{
@@ -4377,13 +4902,7 @@
 		{
 			
 			// aapt resource value: 0x7f030000
-			public const int ic_launcher = 2130903040;
-			
-			// aapt resource value: 0x7f030001
-			public const int ic_launcher_round = 2130903041;
-			
-			// aapt resource value: 0x7f030002
-			public const int Icon = 2130903042;
+			public const int Icon = 2130903040;
 			
 			static Mipmap()
 			{
@@ -4503,107 +5022,116 @@
 			// aapt resource value: 0x7f0a0023
 			public const int character_counter_pattern = 2131361827;
 			
-			// aapt resource value: 0x7f0a003d
-			public const int gd_activity_title = 2131361853;
+			// aapt resource value: 0x7f0a00f1
+			public const int gd_activity_title = 2131362033;
 			
-			// aapt resource value: 0x7f0a003e
-			public const int gd_cancel = 2131361854;
+			// aapt resource value: 0x7f0a00f2
+			public const int gd_cancel = 2131362034;
 			
-			// aapt resource value: 0x7f0a003f
-			public const int gd_myhome = 2131361855;
+			// aapt resource value: 0x7f0a00f3
+			public const int gd_myhome = 2131362035;
 			
-			// aapt resource value: 0x7f0a0040
-			public const int gd_notifyMsg = 2131361856;
+			// aapt resource value: 0x7f0a00f4
+			public const int gd_notifyMsg = 2131362036;
 			
-			// aapt resource value: 0x7f0a0041
-			public const int gd_notifyTitle = 2131361857;
+			// aapt resource value: 0x7f0a00f5
+			public const int gd_notifyTitle = 2131362037;
 			
-			// aapt resource value: 0x7f0a0042
-			public const int gd_save = 2131361858;
+			// aapt resource value: 0x7f0a00f6
+			public const int gd_save = 2131362038;
 			
-			// aapt resource value: 0x7f0a0043
-			public const int gd_search_tip = 2131361859;
+			// aapt resource value: 0x7f0a00f7
+			public const int gd_search_tip = 2131362039;
 			
-			// aapt resource value: 0x7f0a0044
-			public const int gd_select_distance = 2131361860;
+			// aapt resource value: 0x7f0a00f8
+			public const int gd_select_distance = 2131362040;
 			
-			// aapt resource value: 0x7f0a0045
-			public const int gd_setting = 2131361861;
+			// aapt resource value: 0x7f0a00f9
+			public const int gd_setting = 2131362041;
 			
-			// aapt resource value: 0x7f0a0065
-			public const int hello = 2131361893;
+			// aapt resource value: 0x7f0a0102
+			public const int hello = 2131362050;
 			
-			// aapt resource value: 0x7f0a004e
-			public const int leak_canary_analysis_failed = 2131361870;
+			// aapt resource value: 0x7f0a00bd
+			public const int hms_abort = 2131361981;
 			
-			// aapt resource value: 0x7f0a004f
-			public const int leak_canary_class_has_leaked = 2131361871;
+			// aapt resource value: 0x7f0a00be
+			public const int hms_abort_message = 2131361982;
 			
-			// aapt resource value: 0x7f0a0050
-			public const int leak_canary_could_not_save_text = 2131361872;
+			// aapt resource value: 0x7f0a00bf
+			public const int hms_bindfaildlg_message = 2131361983;
 			
-			// aapt resource value: 0x7f0a0051
-			public const int leak_canary_could_not_save_title = 2131361873;
+			// aapt resource value: 0x7f0a00eb
+			public const int hms_bindfaildlg_title = 2131362027;
 			
-			// aapt resource value: 0x7f0a0052
-			public const int leak_canary_delete = 2131361874;
+			// aapt resource value: 0x7f0a00c0
+			public const int hms_cancel = 2131361984;
 			
-			// aapt resource value: 0x7f0a0053
-			public const int leak_canary_delete_all = 2131361875;
+			// aapt resource value: 0x7f0a00c1
+			public const int hms_check_failure = 2131361985;
 			
-			// aapt resource value: 0x7f0a0054
-			public const int leak_canary_delete_all_leaks_title = 2131361876;
+			// aapt resource value: 0x7f0a00c2
+			public const int hms_checking = 2131361986;
 			
-			// aapt resource value: 0x7f0a0055
-			public const int leak_canary_display_activity_label = 2131361877;
+			// aapt resource value: 0x7f0a00c3
+			public const int hms_confirm = 2131361987;
 			
-			// aapt resource value: 0x7f0a0056
-			public const int leak_canary_excluded_row = 2131361878;
+			// aapt resource value: 0x7f0a00c4
+			public const int hms_download_failure = 2131361988;
 			
-			// aapt resource value: 0x7f0a0057
-			public const int leak_canary_failure_report = 2131361879;
+			// aapt resource value: 0x7f0a00c5
+			public const int hms_download_no_space = 2131361989;
 			
-			// aapt resource value: 0x7f0a0058
-			public const int leak_canary_leak_excluded = 2131361880;
+			// aapt resource value: 0x7f0a00c6
+			public const int hms_download_retry = 2131361990;
 			
-			// aapt resource value: 0x7f0a0059
-			public const int leak_canary_leak_list_title = 2131361881;
+			// aapt resource value: 0x7f0a00c7
+			public const int hms_downloading_loading = 2131361991;
 			
-			// aapt resource value: 0x7f0a005a
-			public const int leak_canary_no_leak_text = 2131361882;
+			// aapt resource value: 0x7f0a00c8
+			public const int hms_install = 2131361992;
 			
-			// aapt resource value: 0x7f0a005b
-			public const int leak_canary_no_leak_title = 2131361883;
+			// aapt resource value: 0x7f0a00c9
+			public const int hms_install_message = 2131361993;
 			
-			// aapt resource value: 0x7f0a005c
-			public const int leak_canary_notification_message = 2131361884;
+			// aapt resource value: 0x7f0a00ca
+			public const int hms_is_spoof = 2131361994;
 			
-			// aapt resource value: 0x7f0a005d
-			public const int leak_canary_permission_not_granted = 2131361885;
+			// aapt resource value: 0x7f0a00cb
+			public const int hms_push_channel = 2131361995;
 			
-			// aapt resource value: 0x7f0a005e
-			public const int leak_canary_permission_notification_text = 2131361886;
+			// aapt resource value: 0x7f0a00ec
+			public const int hms_push_google = 2131362028;
 			
-			// aapt resource value: 0x7f0a005f
-			public const int leak_canary_permission_notification_title = 2131361887;
+			// aapt resource value: 0x7f0a00ed
+			public const int hms_push_vmall = 2131362029;
 			
-			// aapt resource value: 0x7f0a0060
-			public const int leak_canary_share_heap_dump = 2131361888;
+			// aapt resource value: 0x7f0a00cc
+			public const int hms_retry = 2131361996;
 			
-			// aapt resource value: 0x7f0a0061
-			public const int leak_canary_share_leak = 2131361889;
+			// aapt resource value: 0x7f0a00cd
+			public const int hms_spoof_hints = 2131361997;
 			
-			// aapt resource value: 0x7f0a0062
-			public const int leak_canary_share_with = 2131361890;
+			// aapt resource value: 0x7f0a00ce
+			public const int hms_update = 2131361998;
 			
-			// aapt resource value: 0x7f0a0063
-			public const int leak_canary_storage_permission_activity_label = 2131361891;
+			// aapt resource value: 0x7f0a00cf
+			public const int hms_update_continue = 2131361999;
 			
-			// aapt resource value: 0x7f0a0064
-			public const int leak_canary_toast_heap_dump = 2131361892;
+			// aapt resource value: 0x7f0a00d0
+			public const int hms_update_message = 2131362000;
 			
-			// aapt resource value: 0x7f0a002a
-			public const int not_recognized_fingerprint_hint = 2131361834;
+			// aapt resource value: 0x7f0a00d1
+			public const int hms_update_message_new = 2131362001;
+			
+			// aapt resource value: 0x7f0a00d2
+			public const int hms_update_nettype = 2131362002;
+			
+			// aapt resource value: 0x7f0a00d3
+			public const int hms_update_title = 2131362003;
+			
+			// aapt resource value: 0x7f0a00aa
+			public const int not_recognized_fingerprint_hint = 2131361962;
 			
 			// aapt resource value: 0x7f0a0024
 			public const int password_toggle_content_description = 2131361828;
@@ -4620,89 +5148,551 @@
 			// aapt resource value: 0x7f0a0028
 			public const int path_password_strike_through = 2131361832;
 			
+			// aapt resource value: 0x7f0a002a
+			public const int phone_account_login_failed = 2131361834;
+			
+			// aapt resource value: 0x7f0a002b
+			public const int phone_add_face = 2131361835;
+			
+			// aapt resource value: 0x7f0a002c
+			public const int phone_answer = 2131361836;
+			
+			// aapt resource value: 0x7f0a002d
+			public const int phone_are_you_sure_to_unlock_the_door = 2131361837;
+			
+			// aapt resource value: 0x7f0a002e
+			public const int phone_cancel = 2131361838;
+			
+			// aapt resource value: 0x7f0a002f
+			public const int phone_capture = 2131361839;
+			
+			// aapt resource value: 0x7f0a0030
+			public const int phone_confirm = 2131361840;
+			
+			// aapt resource value: 0x7f0a0031
+			public const int phone_face_management = 2131361841;
+			
+			// aapt resource value: 0x7f0a0032
+			public const int phone_face_tip = 2131361842;
+			
+			// aapt resource value: 0x7f0a0033
+			public const int phone_fail_to_create_a_temporary_password = 2131361843;
+			
+			// aapt resource value: 0x7f0a0034
+			public const int phone_fail_to_load_data = 2131361844;
+			
+			// aapt resource value: 0x7f0a0035
+			public const int phone_fail_to_unlock_the_door = 2131361845;
+			
+			// aapt resource value: 0x7f0a0036
+			public const int phone_get_pwd_failed = 2131361846;
+			
+			// aapt resource value: 0x7f0a0037
+			public const int phone_hangup = 2131361847;
+			
+			// aapt resource value: 0x7f0a0038
+			public const int phone_name = 2131361848;
+			
+			// aapt resource value: 0x7f0a0039
+			public const int phone_name_cannot_be_empty = 2131361849;
+			
+			// aapt resource value: 0x7f0a003a
+			public const int phone_no_data = 2131361850;
+			
+			// aapt resource value: 0x7f0a003b
+			public const int phone_phone_number = 2131361851;
+			
+			// aapt resource value: 0x7f0a003c
+			public const int phone_please_input = 2131361852;
+			
+			// aapt resource value: 0x7f0a003d
+			public const int phone_please_number = 2131361853;
+			
+			// aapt resource value: 0x7f0a003e
+			public const int phone_please_select_a_photo_to_add = 2131361854;
+			
+			// aapt resource value: 0x7f0a003f
+			public const int phone_qr_code = 2131361855;
+			
+			// aapt resource value: 0x7f0a0040
+			public const int phone_refuse = 2131361856;
+			
+			// aapt resource value: 0x7f0a0041
+			public const int phone_screenshot = 2131361857;
+			
+			// aapt resource value: 0x7f0a0042
+			public const int phone_success_to_add_face = 2131361858;
+			
+			// aapt resource value: 0x7f0a0043
+			public const int phone_success_to_unlock_the_door = 2131361859;
+			
+			// aapt resource value: 0x7f0a0044
+			public const int phone_sure = 2131361860;
+			
+			// aapt resource value: 0x7f0a0045
+			public const int phone_sure_to_add = 2131361861;
+			
 			// aapt resource value: 0x7f0a0046
-			public const int pickerview_cancel = 2131361862;
+			public const int phone_temporary_password = 2131361862;
 			
 			// aapt resource value: 0x7f0a0047
-			public const int pickerview_day = 2131361863;
+			public const int phone_tips = 2131361863;
 			
 			// aapt resource value: 0x7f0a0048
-			public const int pickerview_hours = 2131361864;
+			public const int phone_unit_device = 2131361864;
 			
 			// aapt resource value: 0x7f0a0049
-			public const int pickerview_minutes = 2131361865;
+			public const int phone_unit_machine = 2131361865;
 			
 			// aapt resource value: 0x7f0a004a
-			public const int pickerview_month = 2131361866;
+			public const int phone_unlock = 2131361866;
 			
 			// aapt resource value: 0x7f0a004b
-			public const int pickerview_seconds = 2131361867;
+			public const int phone_unlock_successfully = 2131361867;
 			
 			// aapt resource value: 0x7f0a004c
-			public const int pickerview_submit = 2131361868;
+			public const int phone_video_intercom = 2131361868;
+			
+			// aapt resource value: 0x7f0a00fa
+			public const int pickerview_cancel = 2131362042;
+			
+			// aapt resource value: 0x7f0a00fb
+			public const int pickerview_day = 2131362043;
+			
+			// aapt resource value: 0x7f0a00fc
+			public const int pickerview_hours = 2131362044;
+			
+			// aapt resource value: 0x7f0a00fd
+			public const int pickerview_minutes = 2131362045;
+			
+			// aapt resource value: 0x7f0a00fe
+			public const int pickerview_month = 2131362046;
+			
+			// aapt resource value: 0x7f0a00ff
+			public const int pickerview_seconds = 2131362047;
+			
+			// aapt resource value: 0x7f0a0100
+			public const int pickerview_submit = 2131362048;
+			
+			// aapt resource value: 0x7f0a0101
+			public const int pickerview_year = 2131362049;
+			
+			// aapt resource value: 0x7f0a00ee
+			public const int push_cat_body = 2131362030;
+			
+			// aapt resource value: 0x7f0a00ef
+			public const int push_cat_head = 2131362031;
 			
 			// aapt resource value: 0x7f0a004d
-			public const int pickerview_year = 2131361869;
+			public const int sc_account_already_exist = 2131361869;
+			
+			// aapt resource value: 0x7f0a004e
+			public const int sc_addressbook_label = 2131361870;
+			
+			// aapt resource value: 0x7f0a004f
+			public const int sc_assistant_error_bad_credentials = 2131361871;
+			
+			// aapt resource value: 0x7f0a0050
+			public const int sc_assistant_openh264_downloading = 2131361872;
+			
+			// aapt resource value: 0x7f0a0051
+			public const int sc_assistant_openh264_error = 2131361873;
+			
+			// aapt resource value: 0x7f0a0052
+			public const int sc_assistant_phone_number_unavailable = 2131361874;
+			
+			// aapt resource value: 0x7f0a0053
+			public const int sc_call = 2131361875;
+			
+			// aapt resource value: 0x7f0a0054
+			public const int sc_content_description_incoming_file = 2131361876;
+			
+			// aapt resource value: 0x7f0a0055
+			public const int sc_content_title_notification = 2131361877;
+			
+			// aapt resource value: 0x7f0a0056
+			public const int sc_content_title_notification_service = 2131361878;
+			
+			// aapt resource value: 0x7f0a0057
+			public const int sc_country_code_invalid = 2131361879;
+			
+			// aapt resource value: 0x7f0a0058
+			public const int sc_debug_title = 2131361880;
+			
+			// aapt resource value: 0x7f0a0059
+			public const int sc_default_domain = 2131361881;
+			
+			// aapt resource value: 0x7f0a005a
+			public const int sc_error = 2131361882;
+			
+			// aapt resource value: 0x7f0a005b
+			public const int sc_error_network_unreachable = 2131361883;
+			
+			// aapt resource value: 0x7f0a005c
+			public const int sc_image_transfert_error = 2131361884;
+			
+			// aapt resource value: 0x7f0a005d
+			public const int sc_incall_notif_active = 2131361885;
+			
+			// aapt resource value: 0x7f0a005e
+			public const int sc_incall_notif_paused = 2131361886;
+			
+			// aapt resource value: 0x7f0a005f
+			public const int sc_incall_notif_video = 2131361887;
+			
+			// aapt resource value: 0x7f0a0060
+			public const int sc_invalid_display_name = 2131361888;
+			
+			// aapt resource value: 0x7f0a0061
+			public const int sc_invalid_domain = 2131361889;
+			
+			// aapt resource value: 0x7f0a0062
+			public const int sc_invalid_email = 2131361890;
+			
+			// aapt resource value: 0x7f0a0063
+			public const int sc_invalid_route = 2131361891;
+			
+			// aapt resource value: 0x7f0a0064
+			public const int sc_invalid_username = 2131361892;
+			
+			// aapt resource value: 0x7f0a0065
+			public const int sc_later = 2131361893;
+			
+			// aapt resource value: 0x7f0a0066
+			public const int sc_link = 2131361894;
+			
+			// aapt resource value: 0x7f0a0067
+			public const int sc_link_account_popup = 2131361895;
+			
+			// aapt resource value: 0x7f0a0068
+			public const int sc_maybe_later = 2131361896;
+			
+			// aapt resource value: 0x7f0a0069
+			public const int sc_message_cant_be_decrypted = 2131361897;
+			
+			// aapt resource value: 0x7f0a006a
+			public const int sc_message_cant_be_decrypted_notif = 2131361898;
+			
+			// aapt resource value: 0x7f0a006b
+			public const int sc_message_not_encrypted = 2131361899;
+			
+			// aapt resource value: 0x7f0a006c
+			public const int sc_missed_calls_notif_body = 2131361900;
+			
+			// aapt resource value: 0x7f0a006d
+			public const int sc_missed_calls_notif_title = 2131361901;
+			
+			// aapt resource value: 0x7f0a006e
+			public const int sc_no = 2131361902;
+			
+			// aapt resource value: 0x7f0a006f
+			public const int sc_notification_channel_id = 2131361903;
+			
+			// aapt resource value: 0x7f0a0070
+			public const int sc_notification_register_failure = 2131361904;
+			
+			// aapt resource value: 0x7f0a0071
+			public const int sc_notification_registered = 2131361905;
+			
+			// aapt resource value: 0x7f0a0072
+			public const int sc_notification_service_channel_id = 2131361906;
+			
+			// aapt resource value: 0x7f0a0073
+			public const int sc_notification_started = 2131361907;
+			
+			// aapt resource value: 0x7f0a0074
+			public const int sc_ok = 2131361908;
+			
+			// aapt resource value: 0x7f0a0075
+			public const int sc_password_too_long = 2131361909;
+			
+			// aapt resource value: 0x7f0a0076
+			public const int sc_password_too_short = 2131361910;
+			
+			// aapt resource value: 0x7f0a0077
+			public const int sc_phone_number_invalid = 2131361911;
+			
+			// aapt resource value: 0x7f0a0078
+			public const int sc_phone_number_not_exist = 2131361912;
+			
+			// aapt resource value: 0x7f0a0079
+			public const int sc_phone_number_too_long = 2131361913;
+			
+			// aapt resource value: 0x7f0a007a
+			public const int sc_phone_number_too_short = 2131361914;
+			
+			// aapt resource value: 0x7f0a007b
+			public const int sc_pref_auth_userid_key = 2131361915;
+			
+			// aapt resource value: 0x7f0a007c
+			public const int sc_pref_autostart_key = 2131361916;
+			
+			// aapt resource value: 0x7f0a007d
+			public const int sc_pref_background_mode_key = 2131361917;
+			
+			// aapt resource value: 0x7f0a007e
+			public const int sc_pref_debug_key = 2131361918;
+			
+			// aapt resource value: 0x7f0a007f
+			public const int sc_pref_default_account_key = 2131361919;
+			
+			// aapt resource value: 0x7f0a0080
+			public const int sc_pref_domain_key = 2131361920;
+			
+			// aapt resource value: 0x7f0a0081
+			public const int sc_pref_enable_outbound_proxy_key = 2131361921;
+			
+			// aapt resource value: 0x7f0a0082
+			public const int sc_pref_expire_key = 2131361922;
+			
+			// aapt resource value: 0x7f0a0083
+			public const int sc_pref_extra_accounts = 2131361923;
+			
+			// aapt resource value: 0x7f0a0084
+			public const int sc_pref_image_sharing_server_key = 2131361924;
+			
+			// aapt resource value: 0x7f0a0085
+			public const int sc_pref_passwd_key = 2131361925;
+			
+			// aapt resource value: 0x7f0a0086
+			public const int sc_pref_prefix_key = 2131361926;
+			
+			// aapt resource value: 0x7f0a0087
+			public const int sc_pref_proxy_key = 2131361927;
+			
+			// aapt resource value: 0x7f0a0088
+			public const int sc_pref_push_notification_key = 2131361928;
+			
+			// aapt resource value: 0x7f0a0089
+			public const int sc_pref_remote_provisioning_key = 2131361929;
+			
+			// aapt resource value: 0x7f0a008a
+			public const int sc_pref_transport_tcp = 2131361930;
+			
+			// aapt resource value: 0x7f0a008b
+			public const int sc_pref_transport_tcp_key = 2131361931;
+			
+			// aapt resource value: 0x7f0a008c
+			public const int sc_pref_transport_tls = 2131361932;
+			
+			// aapt resource value: 0x7f0a008d
+			public const int sc_pref_transport_tls_key = 2131361933;
+			
+			// aapt resource value: 0x7f0a008e
+			public const int sc_pref_transport_udp = 2131361934;
+			
+			// aapt resource value: 0x7f0a008f
+			public const int sc_pref_transport_udp_key = 2131361935;
+			
+			// aapt resource value: 0x7f0a0090
+			public const int sc_pref_transport_use_random_ports_key = 2131361936;
+			
+			// aapt resource value: 0x7f0a0091
+			public const int sc_pref_username_key = 2131361937;
+			
+			// aapt resource value: 0x7f0a0092
+			public const int sc_pref_video_use_front_camera_key = 2131361938;
+			
+			// aapt resource value: 0x7f0a0093
+			public const int sc_pref_wifi_only_key = 2131361939;
+			
+			// aapt resource value: 0x7f0a0094
+			public const int sc_push_reg_id_key = 2131361940;
+			
+			// aapt resource value: 0x7f0a0095
+			public const int sc_push_sender_id = 2131361941;
+			
+			// aapt resource value: 0x7f0a0096
+			public const int sc_push_type = 2131361942;
+			
+			// aapt resource value: 0x7f0a0097
+			public const int sc_request_failed = 2131361943;
+			
+			// aapt resource value: 0x7f0a0098
+			public const int sc_rls_uri = 2131361944;
+			
+			// aapt resource value: 0x7f0a0099
+			public const int sc_service_name = 2131361945;
+			
+			// aapt resource value: 0x7f0a009a
+			public const int sc_sync_account_name = 2131361946;
+			
+			// aapt resource value: 0x7f0a009b
+			public const int sc_sync_account_type = 2131361947;
+			
+			// aapt resource value: 0x7f0a009c
+			public const int sc_sync_mimetype = 2131361948;
+			
+			// aapt resource value: 0x7f0a009d
+			public const int sc_today_date_format = 2131361949;
+			
+			// aapt resource value: 0x7f0a009e
+			public const int sc_transport_unsupported = 2131361950;
+			
+			// aapt resource value: 0x7f0a009f
+			public const int sc_tunnel_mode_entry_value_3G_only = 2131361951;
+			
+			// aapt resource value: 0x7f0a00a0
+			public const int sc_tunnel_mode_entry_value_always = 2131361952;
+			
+			// aapt resource value: 0x7f0a00a1
+			public const int sc_tunnel_mode_entry_value_auto = 2131361953;
+			
+			// aapt resource value: 0x7f0a00a2
+			public const int sc_tunnel_mode_entry_value_disabled = 2131361954;
+			
+			// aapt resource value: 0x7f0a00a3
+			public const int sc_unknown_incoming_call_name = 2131361955;
+			
+			// aapt resource value: 0x7f0a00a4
+			public const int sc_unread_messages = 2131361956;
+			
+			// aapt resource value: 0x7f0a00a5
+			public const int sc_username_invalid_size = 2131361957;
+			
+			// aapt resource value: 0x7f0a00a6
+			public const int sc_username_too_long = 2131361958;
+			
+			// aapt resource value: 0x7f0a00a7
+			public const int sc_username_too_short = 2131361959;
+			
+			// aapt resource value: 0x7f0a00a8
+			public const int sc_wizard_failed = 2131361960;
+			
+			// aapt resource value: 0x7f0a00a9
+			public const int sc_yes = 2131361961;
 			
 			// aapt resource value: 0x7f0a0013
 			public const int search_menu_title = 2131361811;
 			
-			// aapt resource value: 0x7f0a002c
-			public const int srl_component_falsify = 2131361836;
+			// aapt resource value: 0x7f0a00ac
+			public const int srl_component_falsify = 2131361964;
 			
-			// aapt resource value: 0x7f0a002d
-			public const int srl_content_empty = 2131361837;
+			// aapt resource value: 0x7f0a00ad
+			public const int srl_content_empty = 2131361965;
 			
-			// aapt resource value: 0x7f0a002e
-			public const int srl_footer_failed = 2131361838;
+			// aapt resource value: 0x7f0a00ae
+			public const int srl_footer_failed = 2131361966;
 			
-			// aapt resource value: 0x7f0a002f
-			public const int srl_footer_finish = 2131361839;
+			// aapt resource value: 0x7f0a00af
+			public const int srl_footer_finish = 2131361967;
 			
-			// aapt resource value: 0x7f0a0030
-			public const int srl_footer_loading = 2131361840;
+			// aapt resource value: 0x7f0a00b0
+			public const int srl_footer_loading = 2131361968;
 			
-			// aapt resource value: 0x7f0a0031
-			public const int srl_footer_nothing = 2131361841;
+			// aapt resource value: 0x7f0a00b1
+			public const int srl_footer_nothing = 2131361969;
 			
-			// aapt resource value: 0x7f0a0032
-			public const int srl_footer_pulling = 2131361842;
+			// aapt resource value: 0x7f0a00b2
+			public const int srl_footer_pulling = 2131361970;
 			
-			// aapt resource value: 0x7f0a0033
-			public const int srl_footer_refreshing = 2131361843;
+			// aapt resource value: 0x7f0a00b3
+			public const int srl_footer_refreshing = 2131361971;
 			
-			// aapt resource value: 0x7f0a0034
-			public const int srl_footer_release = 2131361844;
+			// aapt resource value: 0x7f0a00b4
+			public const int srl_footer_release = 2131361972;
 			
-			// aapt resource value: 0x7f0a0035
-			public const int srl_header_failed = 2131361845;
+			// aapt resource value: 0x7f0a00b5
+			public const int srl_header_failed = 2131361973;
 			
-			// aapt resource value: 0x7f0a0036
-			public const int srl_header_finish = 2131361846;
+			// aapt resource value: 0x7f0a00b6
+			public const int srl_header_finish = 2131361974;
 			
-			// aapt resource value: 0x7f0a0037
-			public const int srl_header_loading = 2131361847;
+			// aapt resource value: 0x7f0a00b7
+			public const int srl_header_loading = 2131361975;
 			
-			// aapt resource value: 0x7f0a0038
-			public const int srl_header_pulling = 2131361848;
+			// aapt resource value: 0x7f0a00b8
+			public const int srl_header_pulling = 2131361976;
 			
-			// aapt resource value: 0x7f0a0039
-			public const int srl_header_refreshing = 2131361849;
+			// aapt resource value: 0x7f0a00b9
+			public const int srl_header_refreshing = 2131361977;
 			
-			// aapt resource value: 0x7f0a003a
-			public const int srl_header_release = 2131361850;
+			// aapt resource value: 0x7f0a00ba
+			public const int srl_header_release = 2131361978;
 			
-			// aapt resource value: 0x7f0a003b
-			public const int srl_header_secondary = 2131361851;
+			// aapt resource value: 0x7f0a00bb
+			public const int srl_header_secondary = 2131361979;
 			
-			// aapt resource value: 0x7f0a003c
-			public const int srl_header_update = 2131361852;
+			// aapt resource value: 0x7f0a00bc
+			public const int srl_header_update = 2131361980;
 			
 			// aapt resource value: 0x7f0a0014
 			public const int status_bar_notification_info_overflow = 2131361812;
 			
-			// aapt resource value: 0x7f0a002b
-			public const int touch_fingerprint_sensor_hint = 2131361835;
+			// aapt resource value: 0x7f0a00ea
+			public const int system_default_channel = 2131362026;
+			
+			// aapt resource value: 0x7f0a00ab
+			public const int touch_fingerprint_sensor_hint = 2131361963;
+			
+			// aapt resource value: 0x7f0a00d4
+			public const int upsdk_app_download_info_new = 2131362004;
+			
+			// aapt resource value: 0x7f0a00d5
+			public const int upsdk_app_download_installing = 2131362005;
+			
+			// aapt resource value: 0x7f0a00d6
+			public const int upsdk_app_size = 2131362006;
+			
+			// aapt resource value: 0x7f0a00d7
+			public const int upsdk_app_version = 2131362007;
+			
+			// aapt resource value: 0x7f0a00d8
+			public const int upsdk_appstore_install = 2131362008;
+			
+			// aapt resource value: 0x7f0a00d9
+			public const int upsdk_cancel = 2131362009;
+			
+			// aapt resource value: 0x7f0a00da
+			public const int upsdk_checking_update_prompt = 2131362010;
+			
+			// aapt resource value: 0x7f0a00db
+			public const int upsdk_choice_update = 2131362011;
+			
+			// aapt resource value: 0x7f0a00dc
+			public const int upsdk_detail = 2131362012;
+			
+			// aapt resource value: 0x7f0a00dd
+			public const int upsdk_getting_message_fail_prompt_toast = 2131362013;
+			
+			// aapt resource value: 0x7f0a00de
+			public const int upsdk_mobile_dld_warn = 2131362014;
+			
+			// aapt resource value: 0x7f0a00df
+			public const int upsdk_no_available_network_prompt_toast = 2131362015;
+			
+			// aapt resource value: 0x7f0a00e0
+			public const int upsdk_ota_app_name = 2131362016;
+			
+			// aapt resource value: 0x7f0a00e1
+			public const int upsdk_ota_cancel = 2131362017;
+			
+			// aapt resource value: 0x7f0a00e2
+			public const int upsdk_ota_force_cancel_new = 2131362018;
+			
+			// aapt resource value: 0x7f0a00e3
+			public const int upsdk_ota_notify_updatebtn = 2131362019;
+			
+			// aapt resource value: 0x7f0a00e4
+			public const int upsdk_ota_title = 2131362020;
+			
+			// aapt resource value: 0x7f0a00e5
+			public const int upsdk_storage_utils = 2131362021;
+			
+			// aapt resource value: 0x7f0a00f0
+			public const int upsdk_store_url = 2131362032;
+			
+			// aapt resource value: 0x7f0a00e6
+			public const int upsdk_third_app_dl_cancel_download_prompt_ex = 2131362022;
+			
+			// aapt resource value: 0x7f0a00e7
+			public const int upsdk_third_app_dl_install_failed = 2131362023;
+			
+			// aapt resource value: 0x7f0a00e8
+			public const int upsdk_third_app_dl_sure_cancel_download = 2131362024;
+			
+			// aapt resource value: 0x7f0a00e9
+			public const int upsdk_update_check_no_new_version = 2131362025;
 			
 			static String()
 			{
@@ -4734,9 +5724,6 @@
 			
 			// aapt resource value: 0x7f0b0169
 			public const int Animation_Design_BottomSheetDialog = 2131427689;
-			
-			// aapt resource value: 0x7f0b018a
-			public const int AppTheme = 2131427722;
 			
 			// aapt resource value: 0x7f0b00a2
 			public const int Base_AlertDialog_AppCompat = 2131427490;
@@ -5227,17 +6214,20 @@
 			// aapt resource value: 0x7f0b016b
 			public const int Base_Widget_Design_TabLayout = 2131427691;
 			
-			// aapt resource value: 0x7f0b018b
-			public const int BottomSheetDialogAnimation = 2131427723;
+			// aapt resource value: 0x7f0b018f
+			public const int Base_Translucent = 2131427727;
 			
-			// aapt resource value: 0x7f0b0194
-			public const int DialogTheme = 2131427732;
+			// aapt resource value: 0x7f0b018d
+			public const int BottomSheetDialogAnimation = 2131427725;
 			
-			// aapt resource value: 0x7f0b0192
-			public const int MyTheme = 2131427730;
+			// aapt resource value: 0x7f0b0195
+			public const int DialogTheme = 2131427733;
 			
 			// aapt resource value: 0x7f0b0193
-			public const int MyTheme1 = 2131427731;
+			public const int MyTheme = 2131427731;
+			
+			// aapt resource value: 0x7f0b0194
+			public const int MyTheme1 = 2131427732;
 			
 			// aapt resource value: 0x7f0b001e
 			public const int Platform_AppCompat = 2131427358;
@@ -5620,8 +6610,8 @@
 			// aapt resource value: 0x7f0b0110
 			public const int Theme_AppCompat_NoActionBar = 2131427600;
 			
-			// aapt resource value: 0x7f0b018c
-			public const int Theme_BiometricPromptDialog = 2131427724;
+			// aapt resource value: 0x7f0b018e
+			public const int Theme_BiometricPromptDialog = 2131427726;
 			
 			// aapt resource value: 0x7f0b0173
 			public const int Theme_Design = 2131427699;
@@ -5640,6 +6630,9 @@
 			
 			// aapt resource value: 0x7f0b0178
 			public const int Theme_Design_NoActionBar = 2131427704;
+			
+			// aapt resource value: 0x7f0b018a
+			public const int Theme_EvoyoHomeSPhoneDemo = 2131427722;
 			
 			// aapt resource value: 0x7f0b0111
 			public const int ThemeOverlay_AppCompat = 2131427601;
@@ -5917,20 +6910,20 @@
 			// aapt resource value: 0x7f0b0182
 			public const int Widget_Design_TextInputLayout = 2131427714;
 			
-			// aapt resource value: 0x7f0b018d
-			public const int custom_dialog2 = 2131427725;
-			
 			// aapt resource value: 0x7f0b0190
-			public const int leak_canary_LeakCanary_Base = 2131427728;
+			public const int custom_dialog2 = 2131427728;
+			
+			// aapt resource value: 0x7f0b018b
+			public const int phone_activity_style = 2131427723;
 			
 			// aapt resource value: 0x7f0b0191
-			public const int leak_canary_Theme_Transparent = 2131427729;
+			public const int picker_view_scale_anim = 2131427729;
 			
-			// aapt resource value: 0x7f0b018e
-			public const int picker_view_scale_anim = 2131427726;
+			// aapt resource value: 0x7f0b0192
+			public const int picker_view_slide_anim = 2131427730;
 			
-			// aapt resource value: 0x7f0b018f
-			public const int picker_view_slide_anim = 2131427727;
+			// aapt resource value: 0x7f0b018c
+			public const int sphone_video_dialog = 2131427724;
 			
 			static Style()
 			{
@@ -5950,6 +6943,9 @@
 			
 			// aapt resource value: 0x7f070001
 			public const int hdl_filepaths = 2131165185;
+			
+			// aapt resource value: 0x7f070002
+			public const int network_security_config = 2131165186;
 			
 			static Xml()
 			{
@@ -6783,9 +7779,9 @@
 			public const int AppCompatTheme_windowNoTitle = 3;
 			
 			public static int[] BallPulseFooter = new int[] {
-					2130772317,
-					2130772338,
-					2130772339};
+					2130772329,
+					2130772350,
+					2130772351};
 			
 			// aapt resource value: 1
 			public const int BallPulseFooter_srlAnimatingColor = 1;
@@ -6797,9 +7793,9 @@
 			public const int BallPulseFooter_srlNormalColor = 2;
 			
 			public static int[] BezierRadarHeader = new int[] {
-					2130772316,
-					2130772324,
-					2130772326};
+					2130772328,
+					2130772336,
+					2130772338};
 			
 			// aapt resource value: 0
 			public const int BezierRadarHeader_srlAccentColor = 0;
@@ -6853,24 +7849,24 @@
 			public const int ButtonBarLayout_allowStacking = 0;
 			
 			public static int[] ClassicsFooter = new int[] {
-					2130772316,
-					2130772317,
-					2130772318,
-					2130772319,
-					2130772320,
-					2130772321,
-					2130772322,
-					2130772323,
-					2130772325,
-					2130772326,
-					2130772327,
 					2130772328,
 					2130772329,
 					2130772330,
 					2130772331,
 					2130772332,
 					2130772333,
-					2130772336};
+					2130772334,
+					2130772335,
+					2130772337,
+					2130772338,
+					2130772339,
+					2130772340,
+					2130772341,
+					2130772342,
+					2130772343,
+					2130772344,
+					2130772345,
+					2130772348};
 			
 			// aapt resource value: 0
 			public const int ClassicsFooter_srlAccentColor = 0;
@@ -6927,28 +7923,28 @@
 			public const int ClassicsFooter_srlTextSizeTitle = 17;
 			
 			public static int[] ClassicsHeader = new int[] {
-					2130772316,
-					2130772317,
-					2130772318,
-					2130772319,
-					2130772320,
-					2130772321,
-					2130772322,
-					2130772323,
-					2130772325,
-					2130772326,
-					2130772327,
 					2130772328,
 					2130772329,
+					2130772330,
 					2130772331,
 					2130772332,
 					2130772333,
 					2130772334,
 					2130772335,
-					2130772336,
 					2130772337,
+					2130772338,
+					2130772339,
 					2130772340,
-					2130772341};
+					2130772341,
+					2130772343,
+					2130772344,
+					2130772345,
+					2130772346,
+					2130772347,
+					2130772348,
+					2130772349,
+					2130772352,
+					2130772353};
 			
 			// aapt resource value: 0
 			public const int ClassicsHeader_srlAccentColor = 0;
@@ -7303,24 +8299,24 @@
 			public const int ForegroundLinearLayout_foregroundInsidePadding = 2;
 			
 			public static int[] HDLArcSeekBar = new int[] {
-					2130772382,
-					2130772383,
-					2130772384,
-					2130772385,
-					2130772386,
-					2130772387,
-					2130772388,
-					2130772389,
-					2130772390,
-					2130772391,
-					2130772392,
-					2130772393,
 					2130772394,
 					2130772395,
 					2130772396,
 					2130772397,
 					2130772398,
-					2130772399};
+					2130772399,
+					2130772400,
+					2130772401,
+					2130772402,
+					2130772403,
+					2130772404,
+					2130772405,
+					2130772406,
+					2130772407,
+					2130772408,
+					2130772409,
+					2130772410,
+					2130772411};
 			
 			// aapt resource value: 5
 			public const int HDLArcSeekBar_arc_border_color = 5;
@@ -7377,12 +8373,12 @@
 			public const int HDLArcSeekBar_hdl_arc_thumb_mode = 14;
 			
 			public static int[] HDLCurtainSeekBar = new int[] {
-					2130772400,
-					2130772401,
-					2130772402,
-					2130772403,
-					2130772404,
-					2130772405};
+					2130772412,
+					2130772413,
+					2130772414,
+					2130772415,
+					2130772416,
+					2130772417};
 			
 			// aapt resource value: 2
 			public const int HDLCurtainSeekBar_curtain_bar_bg_color = 2;
@@ -7403,12 +8399,12 @@
 			public const int HDLCurtainSeekBar_second_curtain_bar_color = 1;
 			
 			public static int[] HDLWaveSeekBar = new int[] {
-					2130772406,
-					2130772407,
-					2130772408,
-					2130772409,
-					2130772410,
-					2130772411};
+					2130772418,
+					2130772419,
+					2130772420,
+					2130772421,
+					2130772422,
+					2130772423};
 			
 			// aapt resource value: 1
 			public const int HDLWaveSeekBar_second_wave_color = 1;
@@ -7855,20 +8851,8 @@
 			public static int[] SmartRefreshLayout = new int[] {
 					16842986,
 					16842987,
-					2130772316,
-					2130772326,
-					2130772342,
-					2130772343,
-					2130772344,
-					2130772345,
-					2130772346,
-					2130772347,
-					2130772348,
-					2130772349,
-					2130772350,
-					2130772351,
-					2130772352,
-					2130772353,
+					2130772328,
+					2130772338,
 					2130772354,
 					2130772355,
 					2130772356,
@@ -7889,7 +8873,19 @@
 					2130772371,
 					2130772372,
 					2130772373,
-					2130772374};
+					2130772374,
+					2130772375,
+					2130772376,
+					2130772377,
+					2130772378,
+					2130772379,
+					2130772380,
+					2130772381,
+					2130772382,
+					2130772383,
+					2130772384,
+					2130772385,
+					2130772386};
 			
 			// aapt resource value: 0
 			public const int SmartRefreshLayout_android_clipChildren = 0;
@@ -8003,8 +8999,8 @@
 			public const int SmartRefreshLayout_srlReboundDuration = 4;
 			
 			public static int[] SmartRefreshLayout_Layout = new int[] {
-					2130772315,
-					2130772375};
+					2130772327,
+					2130772387};
 			
 			// aapt resource value: 1
 			public const int SmartRefreshLayout_Layout_layout_srlBackgroundColor = 1;
@@ -8425,12 +9421,12 @@
 			public const int Toolbar_titleTextColor = 27;
 			
 			public static int[] TwoLevelHeader = new int[] {
-					2130772376,
-					2130772377,
-					2130772378,
-					2130772379,
-					2130772380,
-					2130772381};
+					2130772388,
+					2130772389,
+					2130772390,
+					2130772391,
+					2130772392,
+					2130772393};
 			
 			// aapt resource value: 5
 			public const int TwoLevelHeader_srlEnablePullToCloseTwoLevel = 5;
@@ -8500,13 +9496,63 @@
 			// aapt resource value: 1
 			public const int ViewStubCompat_android_layout = 1;
 			
+			public static int[] WebImageView = new int[] {
+					2130772314,
+					2130772315,
+					2130772316,
+					2130772317,
+					2130772318,
+					2130772319,
+					2130772320,
+					2130772321,
+					2130772322,
+					2130772323,
+					2130772324,
+					2130772325};
+			
+			// aapt resource value: 8
+			public const int WebImageView_border_color = 8;
+			
+			// aapt resource value: 7
+			public const int WebImageView_border_width = 7;
+			
+			// aapt resource value: 5
+			public const int WebImageView_corner_bottom_left_radius = 5;
+			
+			// aapt resource value: 6
+			public const int WebImageView_corner_bottom_right_radius = 6;
+			
+			// aapt resource value: 2
+			public const int WebImageView_corner_radius = 2;
+			
+			// aapt resource value: 3
+			public const int WebImageView_corner_top_left_radius = 3;
+			
+			// aapt resource value: 4
+			public const int WebImageView_corner_top_right_radius = 4;
+			
+			// aapt resource value: 10
+			public const int WebImageView_inner_border_color = 10;
+			
+			// aapt resource value: 9
+			public const int WebImageView_inner_border_width = 9;
+			
+			// aapt resource value: 0
+			public const int WebImageView_is_circle = 0;
+			
+			// aapt resource value: 1
+			public const int WebImageView_is_cover_src = 1;
+			
+			// aapt resource value: 11
+			public const int WebImageView_mask_color = 11;
+			
 			public static int[] pickerview = new int[] {
-					2130772412,
-					2130772413,
-					2130772414,
-					2130772415,
-					2130772416,
-					2130772417};
+					2130772424,
+					2130772425,
+					2130772426,
+					2130772427,
+					2130772428,
+					2130772429};
 			
 			// aapt resource value: 4
 			public const int pickerview_wheelview_dividerColor = 4;
diff --git a/ZigbeeApp/GateWay.Droid/Resources/values/Styles.xml b/ZigbeeApp/GateWay.Droid/Resources/values/Styles.xml
old mode 100755
new mode 100644
diff --git a/ZigbeeApp/GateWay.Droid/Resources/xml/network_security_config.xml b/ZigbeeApp/GateWay.Droid/Resources/xml/network_security_config.xml
new file mode 100644
index 0000000..dca93c0
--- /dev/null
+++ b/ZigbeeApp/GateWay.Droid/Resources/xml/network_security_config.xml
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="utf-8"?>
+<network-security-config>
+    <base-config cleartextTrafficPermitted="true" />
+</network-security-config>
\ No newline at end of file
diff --git a/ZigbeeApp/GateWay.Droid/VideoActivity.cs b/ZigbeeApp/GateWay.Droid/VideoActivity.cs
deleted file mode 100755
index acf8255..0000000
--- a/ZigbeeApp/GateWay.Droid/VideoActivity.cs
+++ /dev/null
@@ -1,390 +0,0 @@
-锘縰sing System;
-using Android.App;
-using Android.Content.PM;
-using System.Threading;
-using Android.Content.Res;
-using Android.Graphics;
-using Android.OS;
-using Android.Runtime;
-using Android.Views;
-using Android.Widget;
-using Com.ETouchSky;
-using Com.Tool;
-using GateWay.Droid.FengLinVideo.Forms;
-using GateWay.Droid.FengLinVideo.widget;
-using Java.Text;
-using Java.Util;
-
-namespace GateWay.Droid
-{
-    //娉ㄦ剰锛� com.hdl.evoyohome ====銆媝ackcode=44492e5c51dda5e40862a4255396b741 鍖呭悕鏄浐瀹氱殑锛屾洿鏀瑰寘鍚嶄細瀵艰嚧鍙瀵硅閮ㄥ垎宸ヤ綔涓嶆甯�
-    [Activity(Name = "com.hdl.home.wxapi.VideoActivity", WindowSoftInputMode = SoftInput.AdjustResize, LaunchMode = LaunchMode.SingleInstance, ConfigurationChanges = (ConfigChanges.Keyboard | ConfigChanges.KeyboardHidden | ConfigChanges.LayoutDirection | ConfigChanges.Locale | ConfigChanges.Orientation | ConfigChanges.ScreenSize), Theme = "@style/MyTheme", ScreenOrientation = ScreenOrientation.Portrait)]
-    public class VideoActivity : Android.App.Activity, View.IOnClickListener, ISurfaceHolderCallback, VideoPhoneJni.ICallBack,TipDiaglog.OnConfirmClickListener
-    {
-        private static Activity activity;
-        private VideoPhone mPhone;
-        private ISurfaceHolder mRemoteSurfaceHolder;
-        private FrameLayout mRemoteFrameContainer;
-        private SurfaceView mSurfaceRemote;
-
-        private ImageView ivBack;
-        private TextView tvName;
-        private TextView tvRoomName;
-        private MonitorFragment monitorFragment = null;
-        private ReverseCallFragment reverseCallFragment = null;
-        
-        public string ESVideoUUID= "JJY000019VPLLF";//瀹ゅ鏈篣UID锛屼緥:JJY000007FSEYX  f5f6fa
-        public int ESRoomID = 0;//褰撳墠鐢ㄦ埛鐨勬埧闂� ID
-        public string DeviceName;//瀹ゅ鏈虹殑鍚嶇О锛屼緥锛屽澶栨満
-        public string RoomName;//鎴块棿鍛藉悕锛屼緥 8鏍�1鍗曞厓0801
-        public bool IsCollect;//鏄惁鏀惰棌
-        public int Tpye = 0;//绫诲瀷锛�0 鐩戞帶锛�1鍙嶅懠
-
-        protected override void OnCreate(Bundle savedInstanceState)
-        {
-            base.OnCreate(savedInstanceState);
-
-            try
-            {
-                activity = this;
-                ESVideoUUID = Intent.GetStringExtra("ESVideoUUID");//瀹ゅ鏈篣UID锛屼緥:JJY000007FSEYX
-                ESRoomID = Intent.GetIntExtra("ESRoomID", 0);//褰撳墠鐢ㄦ埛鐨勬埧闂� ID   101
-                DeviceName = Intent.GetStringExtra("DeviceName");//瀹ゅ鏈虹殑鍚嶇О锛屼緥锛屽澶栨満
-                RoomName = Intent.GetStringExtra("RoomName");//鎴块棿鍛藉悕锛屼緥 8鏍�1鍗曞厓0801   81
-                IsCollect = Intent.GetBooleanExtra("IsCollect", false);//鏄惁鏀惰棌
-                Tpye = Intent.GetIntExtra("Type", 0);//绫诲瀷锛�0 鐩戞帶锛�1鍙嶅懠                
-                SetContentView(Resource.Layout.activity_video_phone);
-
-                IniView();
-                IniData();
-
-                if (Tpye == 0)
-                {
-                    Monitor(ESVideoUUID); //鐩戞帶
-
-                    monitorFragment = new MonitorFragment(mPhone);
-                    FragmentManager.BeginTransaction().Replace(Resource.Id.content, monitorFragment).Commit();
-                }
-                else
-                {
-                    string param = "address=" + ESVideoUUID + ",tag=mobile://123,";
-                    reverseCallFragment = new ReverseCallFragment(mPhone, param);
-                    FragmentManager.BeginTransaction().Replace(Resource.Id.content, reverseCallFragment).Commit();
-                }
-            }
-            catch (Exception E)
-            {
-                var D=E.Message;
-            }
-        }
-
-        //鐩戞帶
-        private void Monitor(string address)
-        {
-            //鐩戣鍔熻兘 浠庡钩鍙版媺鍙栫洃瑙嗗垪琛紝璋冪敤姝ゆ帴鍙e彲浠ヤ竴鍙颁竴鍙扮洃瑙�
-            if (mPhone != null)
-            {
-                string UserData = ""; //姝ゅ弬鏁� 鍙互鍚戦棬鍙f満璁惧浼犻�掓暟鎹紝
-                //娉ㄦ剰锛歊equestAudio 璇锋眰瀵规柟闊抽锛孯equestVideo璇锋眰瀵规柟瑙嗛 SendAudio鍙戦�佹湰鍦伴煶棰� SendVideo 鍙戦�佹湰鍦拌棰� 涓�鑸棬鍙d笉鎺ユ敹鍒拌棰戯紝鎵�浠ユ渶濂借缃�0锛屽噺灏戞祦閲忔秷鑰�
-                string param = "SendAudio=0\r\n" + "SendVideo=0\r\n" + "RequestAudio=0\r\n" + "RequestVideo=0\r\n" + "UserData=" + UserData + "\r\n";
-                mPhone.Monitor(address, param);
-            }
-        }
-
-        private void IniView()
-        {
-            mRemoteFrameContainer = (FrameLayout)FindViewById(Resource.Id.remoteFrame);
-
-            ivBack = (ImageView)FindViewById(Resource.Id.icon_back);
-            tvName = (TextView)FindViewById(Resource.Id.tv_name);
-            tvRoomName = (TextView)FindViewById(Resource.Id.tv_roomName);
-
-            tvRoomName.SetText(RoomName, null);
-            tvName.SetText(DeviceName, null);
-
-            ivBack.SetOnClickListener(this);
-        }
-
-        private void IniData()
-        {
-            try
-            {
-                if (mPhone == null)
-                {
-                    string _params = "port=8554\r\n" + "packcode=cd89ae3460c8f396c748bb7d2668dfd0\r\n"; //鍒濆鍖栧璁茬鍙o紝榛樿灏卞ソ锛岃窡闂ㄥ彛鏈鸿缃鍖归厤,娉ㄦ剰鏂版帴鍙i渶瑕佸鍔爌ackcode鍙傛暟锛岄渶瑕佹妸浣犱滑鐨勫寘鍚嶅彂杩囨潵
-                    mPhone = new VideoPhone(this, this, _params);
-
-                    if (mRemoteSurfaceHolder != null)
-                    {
-                        mPhone.SetRemoteSurfaceHolder(mRemoteSurfaceHolder, "mRemoteSurfaceHolder!=null"); //璁剧疆鏉ョ數绐楀彛
-                    }
-
-                    ViewGroup v = (ViewGroup)FindViewById(Resource.Id.localVideo);
-                    mPhone.SetLocalVideoContainer(v);//璁剧疆鏈湴瑙嗛绐楀彛锛屼竴瀹氳璋冪敤锛屼笉鐒跺悗浼氬嚭鐜版病澹伴煶
-                }
-                else
-                {
-                    mPhone.StopStream();
-                    mPhone.Release();
-                    mPhone = null;
-                }
-            }
-            catch (Exception e)
-            {
-                string error = e.Message;
-            }
-        }
-
-        protected override void OnResume()
-        {
-            base.OnResume();
-
-            if (mPhone != null)
-            {
-                mPhone.OnActivityResume();
-            }
-        }
-
-        protected override void OnPause()
-        {
-            base.OnPause();
-            if (mPhone != null)
-            {
-                //mPhone.OnActivityPause();
-            }
-        }
-
-        protected override void OnDestroy()
-        {
-            base.OnDestroy();
-            if (mPhone != null)
-            {
-                mPhone.HangUp();
-                mPhone.Release();
-                mPhone = null;
-                //mPhone.OnActivityDestroy();
-            }
-        }
-
-        public override void OnBackPressed()
-        {
-            if (mPhone != null)
-                mPhone.HangUp();
-            else
-                Finish();
-        }
-
-        public void OnClick(View v)
-        {
-            if (v.Equals(ivBack))
-            {
-                if (mPhone != null)
-                    mPhone.HangUp();
-                else
-                    Finish();
-            }
-        }      
-
-        //涓嶈兘鐢╒iew.INVISIBLE鏉ュ畬鍏ㄩ殣钘�,鍚﹀垯MediaCodec.configure浼氭姤ava.lang.IllegalArgumentException: The surface has been released
-        //[Obsolete]
-        private void showRemoteVideo()
-        {
-            try
-            {
-                if (mSurfaceRemote != null)
-                {
-                    return;
-                }
-                mSurfaceRemote = new SurfaceView(this, null);
-                ISurfaceHolder holder = mSurfaceRemote.Holder;
-                holder.AddCallback(this);//ISurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS
-                holder.SetType(SurfaceType.PushBuffers);
-
-                //鍙戠幇绗竴娆how鏃朵細闂睆涓�涓嬶紝鍚庨潰hide鍐峴how鏃朵笉浼氶棯灞�
-                FrameLayout.LayoutParams lp = new FrameLayout.LayoutParams(ViewGroup.LayoutParams.MatchParent, ViewGroup.LayoutParams.MatchParent);
-                //v.setId(View.generateViewId());
-                mSurfaceRemote.LayoutParameters = lp;
-                mRemoteFrameContainer.AddView(mSurfaceRemote);
-            }
-            catch { }
-        }
-
-        private void hideRemoteVideo()
-        {
-            try
-            {
-                if (mSurfaceRemote != null)
-                {
-                    mRemoteFrameContainer.RemoveView(mSurfaceRemote);
-                    mSurfaceRemote = null;
-                }
-            }
-            catch { }
-        }
-
-        /// <summary>
-        /// 寮瑰嚭宸叉寕鏂彁绀�
-        /// </summary>
-        private void showTipDialog(string title, string text, string btnText,bool isClose)
-        {
-            try
-            {
-                TipDiaglog diaglog = new TipDiaglog(this);
-                diaglog.SetAutoClose(isClose);
-                diaglog.SetTitleText(title);//"鎻愮ず"
-                diaglog.SetContentText(text);//"宸叉寕鏂�"
-                diaglog.SetConfirmText(btnText);//"纭"
-                diaglog.SetCanceledOnTouchOutside(false);
-                diaglog.Show();
-                diaglog.Create();
-                diaglog.SetConfirmClickListener(this);
-            }
-            catch (Exception e)
-            {
-                string ss = e.Message;
-            }
-        }
-        
-        public void SurfaceChanged(ISurfaceHolder holder, [GeneratedEnum] Format format, int width, int height)
-        {
-            mRemoteSurfaceHolder = holder;
-            if (mPhone != null)
-            {
-                mPhone.SetRemoteSurfaceHolder(holder, "surfaceChanged");
-            }
-        }
-
-        public void SurfaceCreated(ISurfaceHolder holder)
-        {
-            mRemoteSurfaceHolder = holder;
-            if (mPhone != null)
-            {
-                mPhone.SetRemoteSurfaceHolder(holder, "surfaceCreated");
-            }
-        }
-
-        public void SurfaceDestroyed(ISurfaceHolder holder)
-        {
-            mRemoteSurfaceHolder = null;
-            if (mPhone != null)
-            {
-                mPhone.SetRemoteSurfaceHolder(null, "surfaceDestroyed");
-            }
-        }
-
-        //鐢变簬android妗嗘灦闄愬埗锛岃婊¤冻濡備笅鏉′欢鎵嶈兘寮�娴�:activity瑕佸湪鍓嶅彴锛屽苟涓攕urfaceview鍙敤
-        private void startStream(String reason)
-        {
-            if (mPhone != null)
-            {
-                try
-                {
-                    //寮�娴佷箣鍓嶅彲閰嶇疆瑙嗛灏哄锛岀爜鐜囷紝甯х巼 閽堝鐨勬槸鏈湴
-                    //mPhone.SetVideoSize(640, 480);//1920x1080,1280x720,640x480
-                    //mPhone.SetBps(1.5 * 1024 * 1024);
-                    //mPhone.SetFps(30);
-                    mPhone.StartStream();
-                }
-                catch (Exception e)
-                {
-                    string ss = e.Message;
-                }
-            }
-        }
-
-        //[Obsolete]
-        public void OnPhoneEvent(string msg)
-        {
-            try
-            {
-                if (monitorFragment != null)
-                {
-                    monitorFragment.onPhoneEvent(msg);
-                }
-
-                if (reverseCallFragment != null)
-                {
-                    reverseCallFragment.onPhoneEvent(msg);
-                }
-
-                TextProtocol tp = new TextProtocol();
-                tp.Parse(msg);
-                string event1 = tp.GetString("event");
-
-                switch (event1)
-                {
-                    case "EVT_Ringing":
-                        mPhone.RequestCallerSendVideo();
-                        showRemoteVideo();
-                        break;
-                    case "EVT_Connected":
-                        if (!mPhone.IsStreamRunning)
-                        {
-                            //鐢变簬android妗嗘灦闄愬埗锛岃婊¤冻濡備笅鏉′欢鎵嶈兘寮�娴�: activity瑕佸湪鍓嶅彴锛屽苟涓攕urfaceview鍙敤
-                            startStream("EVT_Connected");
-                        }
-                        showRemoteVideo();
-                        break;
-                    case "EVT_StartStream":
-                        startStream("EVT_StreamStream");
-                        break;
-                    case "EVT_StopStream":
-                        mPhone.StopStream();
-                        break;
-                    case "EVT_MonitorConnected":
-                        if (!mPhone.IsStreamRunning)
-                        {
-                            startStream("EVT_MonitorConnected");
-                        }
-                        showRemoteVideo();
-                        break;
-                    case "EVT_HangUp":
-                        hideRemoteVideo();
-                        if (mPhone != null)
-                        {
-                            mPhone.StopStream();
-                        }
-                        showTipDialog("鎻愮ず", "宸叉寕鏂�", "纭", true);
-                        break;
-                    case "EVT_RECV_CUSTOM_DATA":
-                        string data = tp.GetString("data");
-                        //updataUnlockState();
-                        break;
-                    case "EVT_SnapAck":
-                        int error = tp.GetInt("error");
-                        string filePath = tp.GetString("filePath");
-                        if (error == 0)
-                        {
-                            showTipDialog("鎻愮ず", "鎶撳浘鎴愬姛", "纭", false);
-                        }
-                        else
-                        {
-                            showTipDialog("鎻愮ず", "鎶撳浘澶辫触\n\r" + error, "纭", false);
-                        }
-                        break;
-                }
-            }
-            catch (Exception e)
-            {
-                string error = e.Message;
-            }           
-        }
-
-        public void OnRecvAudioFrame(byte[] p0)
-        {
-            //throw new NotImplementedException();
-        }
-
-        public void OnRecvVideoFrame(byte[] p0)
-        {
-            //throw new NotImplementedException();
-        }
-
-        public void onSureClick(TipDiaglog dialoog, View v, bool bol)
-        {
-            dialoog.Dismiss();
-            if (bol)
-                this.Finish();
-        }
-    }  
-}
diff --git a/ZigbeeApp/GateWay.Droid/packages.config b/ZigbeeApp/GateWay.Droid/packages.config
index 16cc72f..5b8d039 100644
--- a/ZigbeeApp/GateWay.Droid/packages.config
+++ b/ZigbeeApp/GateWay.Droid/packages.config
@@ -3,9 +3,9 @@
   <package id="BouncyCastle" version="1.8.1" targetFramework="monoandroid80" />
   <package id="FastAndroidCamera" version="2.0.0" targetFramework="monoandroid80" />
   <package id="LeakCanaryBinding" version="1.5.1.1" targetFramework="monoandroid80" />
-  <package id="Microsoft.AppCenter" version="1.14.0" targetFramework="monoandroid60" />
-  <package id="Microsoft.AppCenter.Analytics" version="1.14.0" targetFramework="monoandroid60" />
-  <package id="Microsoft.AppCenter.Crashes" version="1.14.0" targetFramework="monoandroid60" />
+  <package id="Microsoft.AppCenter" version="1.14.0" targetFramework="monoandroid80" />
+  <package id="Microsoft.AppCenter.Analytics" version="1.14.0" targetFramework="monoandroid80" />
+  <package id="Microsoft.AppCenter.Crashes" version="1.14.0" targetFramework="monoandroid80" />
   <package id="Microsoft.NETCore.Platforms" version="1.1.0" targetFramework="monoandroid60" />
   <package id="Microsoft.Win32.Primitives" version="4.3.0" targetFramework="monoandroid60" />
   <package id="MQTTnet" version="3.0.8" targetFramework="monoandroid80" />
diff --git a/ZigbeeApp/GateWay.sln b/ZigbeeApp/GateWay.sln
index 505f6f8..683673a 100644
--- a/ZigbeeApp/GateWay.sln
+++ b/ZigbeeApp/GateWay.sln
@@ -8,9 +8,15 @@
 EndProject
 Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "GateWay.Droid", "GateWay.Droid\GateWay.Droid.csproj", "{28EDE1FF-20EF-476B-8AF8-24A3EEB69F45}"
 EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Home.IOS", "Home.Ios\Home.IOS.csproj", "{F1296E2C-3777-4385-85B2-DA77617E3178}"
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SPhoneLib", "SPhoneLib\SPhoneLib.csproj", "{A6CA3387-58A7-4819-992F-C800C8839AFB}"
 EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "EzvizLib.ios", "..\..\..\HDLDemo\鍏ㄨ閫歕EzvizLib.ios\EzvizLib.ios.csproj", "{25AE4CD7-C9E2-42FE-B7D6-80E76BA13491}"
+Project("{9344BDBB-3E7F-41FC-A0DD-8665D75EE146}") = "EzvizLib.ios", "..\..\..\HDLDemo\鍏ㄨ閫歕EzvizLib.ios\EzvizLib.ios.csproj", "{91139C9E-B674-417A-B99B-1381705D83F3}"
+EndProject
+Project("{9344BDBB-3E7F-41FC-A0DD-8665D75EE146}") = "Elian.iOS", "Elian.iOS\Elian.iOS.csproj", "{1AA155B7-E058-493A-B374-CCD32DFE953F}"
+EndProject
+Project("{9344BDBB-3E7F-41FC-A0DD-8665D75EE146}") = "Home.IOS", "Home.Ios\Home.IOS.csproj", "{0E10B7DE-15DA-4F8A-9CD0-798AB174603D}"
+EndProject
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Shared.Droid.JPush", "Shared.Droid.JPush\Shared.Droid.JPush.csproj", "{06B9C874-B9B2-4417-8280-B321F966E46B}"
 EndProject
 Project("{9344BDBB-3E7F-41FC-A0DD-8665D75EE146}") = "AndriodBluetooth", "AndriodBluetooth\AndriodBluetooth.csproj", "{BCCD05A7-CC25-4541-8262-2195E27EEB6B}"
 EndProject
@@ -54,54 +60,66 @@
 		{28EDE1FF-20EF-476B-8AF8-24A3EEB69F45}.Release|iPhone.Build.0 = Release|Any CPU
 		{28EDE1FF-20EF-476B-8AF8-24A3EEB69F45}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
 		{28EDE1FF-20EF-476B-8AF8-24A3EEB69F45}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
-		{F1296E2C-3777-4385-85B2-DA77617E3178}.Debug|Any CPU.ActiveCfg = Debug|iPhoneSimulator
-		{F1296E2C-3777-4385-85B2-DA77617E3178}.Debug|Any CPU.Build.0 = Debug|iPhoneSimulator
-		{F1296E2C-3777-4385-85B2-DA77617E3178}.Debug|iPhone.ActiveCfg = Debug|iPhone
-		{F1296E2C-3777-4385-85B2-DA77617E3178}.Debug|iPhone.Build.0 = Debug|iPhone
-		{F1296E2C-3777-4385-85B2-DA77617E3178}.Debug|iPhoneSimulator.ActiveCfg = Debug|iPhoneSimulator
-		{F1296E2C-3777-4385-85B2-DA77617E3178}.Debug|iPhoneSimulator.Build.0 = Debug|iPhoneSimulator
-		{F1296E2C-3777-4385-85B2-DA77617E3178}.Release|Any CPU.ActiveCfg = Release|iPhoneSimulator
-		{F1296E2C-3777-4385-85B2-DA77617E3178}.Release|Any CPU.Build.0 = Release|iPhoneSimulator
-		{F1296E2C-3777-4385-85B2-DA77617E3178}.Release|iPhone.ActiveCfg = Release|iPhone
-		{F1296E2C-3777-4385-85B2-DA77617E3178}.Release|iPhone.Build.0 = Release|iPhone
-		{F1296E2C-3777-4385-85B2-DA77617E3178}.Release|iPhoneSimulator.ActiveCfg = Release|iPhoneSimulator
-		{F1296E2C-3777-4385-85B2-DA77617E3178}.Release|iPhoneSimulator.Build.0 = Release|iPhoneSimulator
-		{25AE4CD7-C9E2-42FE-B7D6-80E76BA13491}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{25AE4CD7-C9E2-42FE-B7D6-80E76BA13491}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{25AE4CD7-C9E2-42FE-B7D6-80E76BA13491}.Debug|iPhone.ActiveCfg = Debug|Any CPU
-		{25AE4CD7-C9E2-42FE-B7D6-80E76BA13491}.Debug|iPhone.Build.0 = Debug|Any CPU
-		{25AE4CD7-C9E2-42FE-B7D6-80E76BA13491}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
-		{25AE4CD7-C9E2-42FE-B7D6-80E76BA13491}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
-		{25AE4CD7-C9E2-42FE-B7D6-80E76BA13491}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{25AE4CD7-C9E2-42FE-B7D6-80E76BA13491}.Release|Any CPU.Build.0 = Release|Any CPU
-		{25AE4CD7-C9E2-42FE-B7D6-80E76BA13491}.Release|iPhone.ActiveCfg = Release|Any CPU
-		{25AE4CD7-C9E2-42FE-B7D6-80E76BA13491}.Release|iPhone.Build.0 = Release|Any CPU
-		{25AE4CD7-C9E2-42FE-B7D6-80E76BA13491}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
-		{25AE4CD7-C9E2-42FE-B7D6-80E76BA13491}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
-		{BCCD05A7-CC25-4541-8262-2195E27EEB6B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{BCCD05A7-CC25-4541-8262-2195E27EEB6B}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{BCCD05A7-CC25-4541-8262-2195E27EEB6B}.Debug|iPhone.ActiveCfg = Debug|Any CPU
-		{BCCD05A7-CC25-4541-8262-2195E27EEB6B}.Debug|iPhone.Build.0 = Debug|Any CPU
-		{BCCD05A7-CC25-4541-8262-2195E27EEB6B}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
-		{BCCD05A7-CC25-4541-8262-2195E27EEB6B}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
-		{BCCD05A7-CC25-4541-8262-2195E27EEB6B}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{BCCD05A7-CC25-4541-8262-2195E27EEB6B}.Release|Any CPU.Build.0 = Release|Any CPU
-		{BCCD05A7-CC25-4541-8262-2195E27EEB6B}.Release|iPhone.ActiveCfg = Release|Any CPU
-		{BCCD05A7-CC25-4541-8262-2195E27EEB6B}.Release|iPhone.Build.0 = Release|Any CPU
-		{BCCD05A7-CC25-4541-8262-2195E27EEB6B}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
-		{BCCD05A7-CC25-4541-8262-2195E27EEB6B}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
-		{897BFC2B-5945-4FBB-AC18-64496ADA2C50}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{897BFC2B-5945-4FBB-AC18-64496ADA2C50}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{897BFC2B-5945-4FBB-AC18-64496ADA2C50}.Debug|iPhone.ActiveCfg = Debug|Any CPU
-		{897BFC2B-5945-4FBB-AC18-64496ADA2C50}.Debug|iPhone.Build.0 = Debug|Any CPU
-		{897BFC2B-5945-4FBB-AC18-64496ADA2C50}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
-		{897BFC2B-5945-4FBB-AC18-64496ADA2C50}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
-		{897BFC2B-5945-4FBB-AC18-64496ADA2C50}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{897BFC2B-5945-4FBB-AC18-64496ADA2C50}.Release|Any CPU.Build.0 = Release|Any CPU
-		{897BFC2B-5945-4FBB-AC18-64496ADA2C50}.Release|iPhone.ActiveCfg = Release|Any CPU
-		{897BFC2B-5945-4FBB-AC18-64496ADA2C50}.Release|iPhone.Build.0 = Release|Any CPU
-		{897BFC2B-5945-4FBB-AC18-64496ADA2C50}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
-		{897BFC2B-5945-4FBB-AC18-64496ADA2C50}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
+		{A6CA3387-58A7-4819-992F-C800C8839AFB}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{A6CA3387-58A7-4819-992F-C800C8839AFB}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{A6CA3387-58A7-4819-992F-C800C8839AFB}.Debug|iPhone.ActiveCfg = Debug|Any CPU
+		{A6CA3387-58A7-4819-992F-C800C8839AFB}.Debug|iPhone.Build.0 = Debug|Any CPU
+		{A6CA3387-58A7-4819-992F-C800C8839AFB}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
+		{A6CA3387-58A7-4819-992F-C800C8839AFB}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
+		{A6CA3387-58A7-4819-992F-C800C8839AFB}.Release|Any CPU.ActiveCfg = Release|Any CPU
+		{A6CA3387-58A7-4819-992F-C800C8839AFB}.Release|Any CPU.Build.0 = Release|Any CPU
+		{A6CA3387-58A7-4819-992F-C800C8839AFB}.Release|iPhone.ActiveCfg = Release|Any CPU
+		{A6CA3387-58A7-4819-992F-C800C8839AFB}.Release|iPhone.Build.0 = Release|Any CPU
+		{A6CA3387-58A7-4819-992F-C800C8839AFB}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
+		{A6CA3387-58A7-4819-992F-C800C8839AFB}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
+		{91139C9E-B674-417A-B99B-1381705D83F3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{91139C9E-B674-417A-B99B-1381705D83F3}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{91139C9E-B674-417A-B99B-1381705D83F3}.Debug|iPhone.ActiveCfg = Debug|Any CPU
+		{91139C9E-B674-417A-B99B-1381705D83F3}.Debug|iPhone.Build.0 = Debug|Any CPU
+		{91139C9E-B674-417A-B99B-1381705D83F3}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
+		{91139C9E-B674-417A-B99B-1381705D83F3}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
+		{91139C9E-B674-417A-B99B-1381705D83F3}.Release|Any CPU.ActiveCfg = Release|Any CPU
+		{91139C9E-B674-417A-B99B-1381705D83F3}.Release|Any CPU.Build.0 = Release|Any CPU
+		{91139C9E-B674-417A-B99B-1381705D83F3}.Release|iPhone.ActiveCfg = Release|Any CPU
+		{91139C9E-B674-417A-B99B-1381705D83F3}.Release|iPhone.Build.0 = Release|Any CPU
+		{91139C9E-B674-417A-B99B-1381705D83F3}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
+		{91139C9E-B674-417A-B99B-1381705D83F3}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
+		{1AA155B7-E058-493A-B374-CCD32DFE953F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{1AA155B7-E058-493A-B374-CCD32DFE953F}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{1AA155B7-E058-493A-B374-CCD32DFE953F}.Debug|iPhone.ActiveCfg = Debug|Any CPU
+		{1AA155B7-E058-493A-B374-CCD32DFE953F}.Debug|iPhone.Build.0 = Debug|Any CPU
+		{1AA155B7-E058-493A-B374-CCD32DFE953F}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
+		{1AA155B7-E058-493A-B374-CCD32DFE953F}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
+		{1AA155B7-E058-493A-B374-CCD32DFE953F}.Release|Any CPU.ActiveCfg = Release|Any CPU
+		{1AA155B7-E058-493A-B374-CCD32DFE953F}.Release|Any CPU.Build.0 = Release|Any CPU
+		{1AA155B7-E058-493A-B374-CCD32DFE953F}.Release|iPhone.ActiveCfg = Release|Any CPU
+		{1AA155B7-E058-493A-B374-CCD32DFE953F}.Release|iPhone.Build.0 = Release|Any CPU
+		{1AA155B7-E058-493A-B374-CCD32DFE953F}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
+		{1AA155B7-E058-493A-B374-CCD32DFE953F}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
+		{0E10B7DE-15DA-4F8A-9CD0-798AB174603D}.Debug|Any CPU.ActiveCfg = Debug|iPhoneSimulator
+		{0E10B7DE-15DA-4F8A-9CD0-798AB174603D}.Debug|Any CPU.Build.0 = Debug|iPhoneSimulator
+		{0E10B7DE-15DA-4F8A-9CD0-798AB174603D}.Debug|iPhone.ActiveCfg = Debug|iPhone
+		{0E10B7DE-15DA-4F8A-9CD0-798AB174603D}.Debug|iPhone.Build.0 = Debug|iPhone
+		{0E10B7DE-15DA-4F8A-9CD0-798AB174603D}.Debug|iPhoneSimulator.ActiveCfg = Debug|iPhoneSimulator
+		{0E10B7DE-15DA-4F8A-9CD0-798AB174603D}.Debug|iPhoneSimulator.Build.0 = Debug|iPhoneSimulator
+		{0E10B7DE-15DA-4F8A-9CD0-798AB174603D}.Release|Any CPU.ActiveCfg = Release|iPhoneSimulator
+		{0E10B7DE-15DA-4F8A-9CD0-798AB174603D}.Release|Any CPU.Build.0 = Release|iPhoneSimulator
+		{0E10B7DE-15DA-4F8A-9CD0-798AB174603D}.Release|iPhone.ActiveCfg = Release|iPhone
+		{0E10B7DE-15DA-4F8A-9CD0-798AB174603D}.Release|iPhone.Build.0 = Release|iPhone
+		{0E10B7DE-15DA-4F8A-9CD0-798AB174603D}.Release|iPhoneSimulator.ActiveCfg = Release|iPhoneSimulator
+		{0E10B7DE-15DA-4F8A-9CD0-798AB174603D}.Release|iPhoneSimulator.Build.0 = Release|iPhoneSimulator
+		{06B9C874-B9B2-4417-8280-B321F966E46B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{06B9C874-B9B2-4417-8280-B321F966E46B}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{06B9C874-B9B2-4417-8280-B321F966E46B}.Debug|iPhone.ActiveCfg = Debug|Any CPU
+		{06B9C874-B9B2-4417-8280-B321F966E46B}.Debug|iPhone.Build.0 = Debug|Any CPU
+		{06B9C874-B9B2-4417-8280-B321F966E46B}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
+		{06B9C874-B9B2-4417-8280-B321F966E46B}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
+		{06B9C874-B9B2-4417-8280-B321F966E46B}.Release|Any CPU.ActiveCfg = Release|Any CPU
+		{06B9C874-B9B2-4417-8280-B321F966E46B}.Release|Any CPU.Build.0 = Release|Any CPU
+		{06B9C874-B9B2-4417-8280-B321F966E46B}.Release|iPhone.ActiveCfg = Release|Any CPU
+		{06B9C874-B9B2-4417-8280-B321F966E46B}.Release|iPhone.Build.0 = Release|Any CPU
+		{06B9C874-B9B2-4417-8280-B321F966E46B}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
+		{06B9C874-B9B2-4417-8280-B321F966E46B}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
 	EndGlobalSection
 	GlobalSection(SolutionProperties) = preSolution
 		HideSolutionNode = FALSE
diff --git a/ZigbeeApp/SPhoneLib/Additions/AboutAdditions.txt b/ZigbeeApp/SPhoneLib/Additions/AboutAdditions.txt
new file mode 100644
index 0000000..89cbfbb
--- /dev/null
+++ b/ZigbeeApp/SPhoneLib/Additions/AboutAdditions.txt
@@ -0,0 +1,48 @@
+锘緼dditions allow you to add arbitrary C# to the generated classes
+before they are compiled.  This can be helpful for providing convenience
+methods or adding pure C# classes.
+
+== Adding Methods to Generated Classes ==
+
+Let's say the library being bound has a Rectangle class with a constructor
+that takes an x and y position, and a width and length size.  It will look like
+this:
+
+public partial class Rectangle
+{
+    public Rectangle (int x, int y, int width, int height)
+    {
+        // JNI bindings
+    }
+}
+
+Imagine we want to add a constructor to this class that takes a Point and
+Size structure instead of 4 ints.  We can add a new file called Rectangle.cs
+with a partial class containing our new method:
+
+public partial class Rectangle
+{
+    public Rectangle (Point location, Size size) :
+        this (location.X, location.Y, size.Width, size.Height)
+    {
+    }
+}
+
+At compile time, the additions class will be added to the generated class
+and the final assembly will a Rectangle class with both constructors.
+
+
+== Adding C# Classes ==
+
+Another thing that can be done is adding fully C# managed classes to the
+generated library.  In the above example, let's assume that there isn't a
+Point class available in Java or our library.  The one we create doesn't need
+to interact with Java, so we'll create it like a normal class in C#.
+
+By adding a Point.cs file with this class, it will end up in the binding library:
+
+public class Point
+{
+    public int X { get; set; }
+    public int Y { get; set; }
+}
diff --git a/ZigbeeApp/SPhoneLib/Jars/AboutJars.txt b/ZigbeeApp/SPhoneLib/Jars/AboutJars.txt
new file mode 100644
index 0000000..404cfd9
--- /dev/null
+++ b/ZigbeeApp/SPhoneLib/Jars/AboutJars.txt
@@ -0,0 +1,24 @@
+锘縏his directory is for Android .jars.
+
+There are 2 types of jars that are supported:
+
+== Input Jar ==
+
+This is the jar that bindings should be generated for.
+
+For example, if you were binding the Google Maps library, this would
+be Google's "maps.jar".
+
+Set the build action for these jars in the properties page to "InputJar".
+
+
+== Reference Jars ==
+
+These are jars that are referenced by the input jar.  C# bindings will
+not be created for these jars.  These jars will be used to resolve
+types used by the input jar.
+
+NOTE: Do not add "android.jar" as a reference jar.  It will be added automatically
+based on the Target Framework selected.
+
+Set the build action for these jars in the properties page to "ReferenceJar".
diff --git a/ZigbeeApp/SPhoneLib/Jars/sphonelibs-release.aar b/ZigbeeApp/SPhoneLib/Jars/sphonelibs-release.aar
new file mode 100644
index 0000000..0e40846
--- /dev/null
+++ b/ZigbeeApp/SPhoneLib/Jars/sphonelibs-release.aar
Binary files differ
diff --git a/ZigbeeApp/SPhoneLib/Properties/AssemblyInfo.cs b/ZigbeeApp/SPhoneLib/Properties/AssemblyInfo.cs
new file mode 100644
index 0000000..bd81787
--- /dev/null
+++ b/ZigbeeApp/SPhoneLib/Properties/AssemblyInfo.cs
@@ -0,0 +1,26 @@
+锘縰sing System.Reflection;
+using System.Runtime.CompilerServices;
+using System.Runtime.InteropServices;
+using Android.App;
+
+// General Information about an assembly is controlled through the following 
+// set of attributes. Change these attribute values to modify the information
+// associated with an assembly.
+[assembly: AssemblyTitle("SPhoneLib")]
+[assembly: AssemblyDescription("")]
+[assembly: AssemblyConfiguration("")]
+[assembly: AssemblyCompany("")]
+[assembly: AssemblyProduct("SPhoneLib")]
+[assembly: AssemblyCopyright("Copyright 漏  2018")]
+[assembly: AssemblyTrademark("")]
+[assembly: AssemblyCulture("")]
+[assembly: ComVisible(false)]
+
+// Version information for an assembly consists of the following four values:
+//
+//      Major Version
+//      Minor Version 
+//      Build Number
+//      Revision
+[assembly: AssemblyVersion("1.0.0.0")]
+[assembly: AssemblyFileVersion("1.0.0.0")]
diff --git a/ZigbeeApp/SPhoneLib/SPhoneLib.csproj b/ZigbeeApp/SPhoneLib/SPhoneLib.csproj
new file mode 100644
index 0000000..68a4ac3
--- /dev/null
+++ b/ZigbeeApp/SPhoneLib/SPhoneLib.csproj
@@ -0,0 +1,67 @@
+锘�<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <PropertyGroup>
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+    <ProductVersion>8.0.30703</ProductVersion>
+    <SchemaVersion>2.0</SchemaVersion>
+    <ProjectGuid>{A6CA3387-58A7-4819-992F-C800C8839AFB}</ProjectGuid>
+    <ProjectTypeGuids>{10368E6C-D01B-4462-8E8B-01FC667A7035};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
+    <TemplateGuid>{77efb91c-a7e9-4b0e-a7c5-31eeec3c6d46}</TemplateGuid>
+    <OutputType>Library</OutputType>
+    <AppDesignerFolder>Properties</AppDesignerFolder>
+    <RootNamespace>SPhoneLib</RootNamespace>
+    <AssemblyName>SPhoneLib</AssemblyName>
+    <FileAlignment>512</FileAlignment>
+    <Deterministic>True</Deterministic>
+    <TargetFrameworkVersion>v8.0</TargetFrameworkVersion>
+    <AndroidClassParser>class-parse</AndroidClassParser>
+    <AndroidCodegenTarget>XAJavaInterop1</AndroidCodegenTarget>
+    <RestoreProjectStyle>PackageReference</RestoreProjectStyle>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+    <DebugSymbols>true</DebugSymbols>
+    <DebugType>portable</DebugType>
+    <Optimize>false</Optimize>
+    <OutputPath>bin\Debug\</OutputPath>
+    <DefineConstants>DEBUG;TRACE</DefineConstants>
+    <ErrorReport>prompt</ErrorReport>
+    <WarningLevel>4</WarningLevel>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+    <DebugType>portable</DebugType>
+    <Optimize>true</Optimize>
+    <OutputPath>bin\Release\</OutputPath>
+    <DefineConstants>TRACE</DefineConstants>
+    <ErrorReport>prompt</ErrorReport>
+    <WarningLevel>4</WarningLevel>
+  </PropertyGroup>
+  <ItemGroup>
+    <Reference Include="Mono.Android" />
+    <Reference Include="System" />
+    <Reference Include="System.Core" />
+  </ItemGroup>
+  <ItemGroup>
+    <Compile Include="Properties\AssemblyInfo.cs" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Jars\AboutJars.txt" />
+    <None Include="Additions\AboutAdditions.txt" />
+  </ItemGroup>
+  <ItemGroup>
+    <TransformFile Include="Transforms\Metadata.xml" />
+    <TransformFile Include="Transforms\EnumFields.xml" />
+    <TransformFile Include="Transforms\EnumMethods.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <LibraryProjectZip Include="Jars\sphonelibs-release.aar" />
+  </ItemGroup>
+  <Import Project="$(MSBuildExtensionsPath)\Xamarin\Android\Xamarin.Android.Bindings.targets" />
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. 
+       Other similar extension points exist, see Microsoft.Common.targets.
+  <Target Name="BeforeBuild">
+  </Target>
+  <Target Name="AfterBuild">
+  </Target>
+  -->
+</Project>
\ No newline at end of file
diff --git a/ZigbeeApp/SPhoneLib/Transforms/EnumFields.xml b/ZigbeeApp/SPhoneLib/Transforms/EnumFields.xml
new file mode 100644
index 0000000..f31a96e
--- /dev/null
+++ b/ZigbeeApp/SPhoneLib/Transforms/EnumFields.xml
@@ -0,0 +1,14 @@
+锘�<enum-field-mappings>
+  <!--
+  This example converts the constants Fragment_id, Fragment_name,
+  and Fragment_tag from android.support.v4.app.FragmentActivity.FragmentTag
+  to an enum called Android.Support.V4.App.FragmentTagType with values
+  Id, Name, and Tag.
+  
+  <mapping jni-class="android/support/v4/app/FragmentActivity$FragmentTag" clr-enum-type="Android.Support.V4.App.FragmentTagType">
+    <field jni-name="Fragment_name" clr-name="Name" value="0" />
+    <field jni-name="Fragment_id" clr-name="Id" value="1" />
+    <field jni-name="Fragment_tag" clr-name="Tag" value="2" />
+  </mapping>
+  -->
+</enum-field-mappings>
diff --git a/ZigbeeApp/SPhoneLib/Transforms/EnumMethods.xml b/ZigbeeApp/SPhoneLib/Transforms/EnumMethods.xml
new file mode 100644
index 0000000..f2bca37
--- /dev/null
+++ b/ZigbeeApp/SPhoneLib/Transforms/EnumMethods.xml
@@ -0,0 +1,13 @@
+锘�<enum-method-mappings>
+  <!--
+  This example changes the Java method:
+    android.support.v4.app.Fragment.SavedState.writeToParcel (int flags)
+  to be:
+    android.support.v4.app.Fragment.SavedState.writeToParcel (Android.OS.ParcelableWriteFlags flags)
+  when bound in C#.
+  
+  <mapping jni-class="android/support/v4/app/Fragment.SavedState">
+    <method jni-name="writeToParcel" parameter="flags" clr-enum-type="Android.OS.ParcelableWriteFlags" />
+  </mapping>
+  -->
+</enum-method-mappings>
diff --git a/ZigbeeApp/SPhoneLib/Transforms/Metadata.xml b/ZigbeeApp/SPhoneLib/Transforms/Metadata.xml
new file mode 100644
index 0000000..d68bda6
--- /dev/null
+++ b/ZigbeeApp/SPhoneLib/Transforms/Metadata.xml
@@ -0,0 +1,20 @@
+锘�<metadata>
+  <!--
+  This sample removes the class: android.support.v4.content.AsyncTaskLoader.LoadTask:
+  <remove-node path="/api/package[@name='android.support.v4.content']/class[@name='AsyncTaskLoader.LoadTask']" />
+  
+  This sample removes the method: android.support.v4.content.CursorLoader.loadInBackground:
+  <remove-node path="/api/package[@name='android.support.v4.content']/class[@name='CursorLoader']/method[@name='loadInBackground']" />
+  -->
+
+  <remove-node path="/api/package[@name='com.sipphone.sdk']/class[@name='LinphoneContact']/implements[@name='Java.Lang.IComparable']" />
+  <remove-node path="/api/package[starts-with(@name,'org.linphone')]"/>
+  <remove-node path="/api/package[starts-with(@name,'com.evoyohome.sphonelibs.util')]"/>
+  <remove-node path="/api/package[starts-with(@name,'com.google.gson.internal.bind')]"/>
+  <remove-node path="/api/package[starts-with(@name,'com.google.gson.internal')]"/>
+  <remove-node path="/api/package[starts-with(@name,'com.google.gson')]"/>
+  <remove-node path="/api/package[starts-with(@name,'com.google.zxing.client.result')]"/>
+  <remove-node path="/api/package[starts-with(@name,'com.google.zxing.oned.rss.expanded.decoders')]"/>
+  <remove-node path="/api/package[starts-with(@name,'com.sipphone.sdk')]"/>
+
+</metadata>
diff --git a/ZigbeeApp/Shared.Droid.JPush/Additions/AboutAdditions.txt b/ZigbeeApp/Shared.Droid.JPush/Additions/AboutAdditions.txt
new file mode 100644
index 0000000..059825a
--- /dev/null
+++ b/ZigbeeApp/Shared.Droid.JPush/Additions/AboutAdditions.txt
@@ -0,0 +1,48 @@
+锘緼dditions allow you to add arbitrary C# to the generated classes
+before they are compiled.  This can be helpful for providing convenience
+methods or adding pure C# classes.
+
+== Adding Methods to Generated Classes ==
+
+Let's say the library being bound has a Rectangle class with a constructor
+that takes an x and y position, and a width and length size.  It will look like
+this:
+
+public partial class Rectangle
+{
+    public Rectangle (int x, int y, int width, int height)
+    {
+        // JNI bindings
+    }
+}
+
+Imagine we want to add a constructor to this class that takes a Point and
+Size structure instead of 4 ints.  We can add a new file called Rectangle.cs
+with a partial class containing our new method:
+
+public partial class Rectangle
+{
+    public Rectangle (Point location, Size size) :
+        this (location.X, location.Y, size.Width, size.Height)
+    {
+    }
+}
+
+At compile time, the additions class will be added to the generated class
+and the final assembly will a Rectangle class with both constructors.
+
+
+== Adding C# Classes ==
+
+Another thing that can be done is adding fully C# managed classes to the
+generated library.  In the above example, let's assume that there isn't a
+Point class available in Java or our library.  The one we create doesn't need
+to interact with Java, so we'll create it like a normal class in C#.
+
+By adding a Point.cs file with this class, it will end up in the binding library:
+
+public class Point
+{
+    public int X { get; set; }
+    public int Y { get; set; }
+}
\ No newline at end of file
diff --git a/ZigbeeApp/Shared.Droid.JPush/HmsContentProvider.cs b/ZigbeeApp/Shared.Droid.JPush/HmsContentProvider.cs
new file mode 100644
index 0000000..2f13d5e
--- /dev/null
+++ b/ZigbeeApp/Shared.Droid.JPush/HmsContentProvider.cs
@@ -0,0 +1,58 @@
+锘�
+using Android.Content;
+using Android.Database;
+
+using System;
+using Huawei.Agconnect.Config;
+
+
+namespace Shared.Droid.JPush
+{
+    [ContentProvider(new string[] { "Shared.Droid.JPush.HmsContentProvider" },
+        Enabled = true, Exported = false,
+        Name = "Shared.Droid.JPush.HmsContentProvider")]
+    class HmsContentProvider : ContentProvider
+    {
+
+        public override int Delete(Android.Net.Uri uri, string selection, string[] selectionArgs)
+        {
+            throw new NotImplementedException();
+        }
+
+        public override string GetType(Android.Net.Uri uri)
+        {
+            throw new NotImplementedException();
+        }
+
+        public override Android.Net.Uri Insert(Android.Net.Uri uri, ContentValues values)
+        {
+            throw new NotImplementedException();
+        }
+
+        public override bool OnCreate()
+        {
+
+            try
+            {
+                AGConnectServicesConfig config = AGConnectServicesConfig.FromContext(Context);
+                config.OverlayWith(new HmsLazyInputStream(Context));
+            }
+            catch (Exception e)
+            {
+
+            }
+
+            return false;
+        }
+
+        public override ICursor Query(Android.Net.Uri uri, string[] projection, string selection, string[] selectionArgs, string sortOrder)
+        {
+            throw new NotImplementedException();
+        }
+
+        public override int Update(Android.Net.Uri uri, ContentValues values, string selection, string[] selectionArgs)
+        {
+            throw new NotImplementedException();
+        }
+    }
+}
\ No newline at end of file
diff --git a/ZigbeeApp/Shared.Droid.JPush/HmsLazyInputStream.cs b/ZigbeeApp/Shared.Droid.JPush/HmsLazyInputStream.cs
new file mode 100644
index 0000000..0d1fbc9
--- /dev/null
+++ b/ZigbeeApp/Shared.Droid.JPush/HmsLazyInputStream.cs
@@ -0,0 +1,28 @@
+锘縰sing Android.Content;
+using Android.Util;
+using System;
+using System.IO;
+using Huawei.Agconnect.Config;
+
+namespace Shared.Droid.JPush
+{
+    class HmsLazyInputStream : LazyInputStream
+    {
+        public HmsLazyInputStream(Context context) : base(context)
+        {
+        }
+
+        public override Stream Get(Context context)
+        {
+            try
+            {
+                return context.Assets.Open("agconnect-services.json");
+            }
+            catch (Exception e)
+            {
+                Log.Info(e.ToString(), "Can't open agconnect file");
+                return null;
+            }
+        }
+    }
+}
\ No newline at end of file
diff --git a/ZigbeeApp/Shared.Droid.JPush/Jars/AboutJars.txt b/ZigbeeApp/Shared.Droid.JPush/Jars/AboutJars.txt
new file mode 100644
index 0000000..4e0d4f3
--- /dev/null
+++ b/ZigbeeApp/Shared.Droid.JPush/Jars/AboutJars.txt
@@ -0,0 +1,24 @@
+锘縏his directory is for Android .jars.
+
+There are 2 types of jars that are supported:
+
+== Input Jar ==
+
+This is the jar that bindings should be generated for.
+
+For example, if you were binding the Google Maps library, this would
+be Google's "maps.jar".
+
+Set the build action for these jars in the properties page to "InputJar".
+
+
+== Reference Jars ==
+
+These are jars that are referenced by the input jar.  C# bindings will
+not be created for these jars.  These jars will be used to resolve
+types used by the input jar.
+
+NOTE: Do not add "android.jar" as a reference jar.  It will be added automatically
+based on the Target Framework selected.
+
+Set the build action for these jars in the properties page to "ReferenceJar".
\ No newline at end of file
diff --git a/ZigbeeApp/Shared.Droid.JPush/Jars/android_jpush_fcm_4.5.0.aar b/ZigbeeApp/Shared.Droid.JPush/Jars/android_jpush_fcm_4.5.0.aar
new file mode 100644
index 0000000..dbf4b53
--- /dev/null
+++ b/ZigbeeApp/Shared.Droid.JPush/Jars/android_jpush_fcm_4.5.0.aar
Binary files differ
diff --git a/ZigbeeApp/Shared.Droid.JPush/Properties/AssemblyInfo.cs b/ZigbeeApp/Shared.Droid.JPush/Properties/AssemblyInfo.cs
new file mode 100644
index 0000000..4992c57
--- /dev/null
+++ b/ZigbeeApp/Shared.Droid.JPush/Properties/AssemblyInfo.cs
@@ -0,0 +1,24 @@
+锘縰sing System.Reflection;
+using System.Runtime.InteropServices;
+
+// General Information about an assembly is controlled through the following 
+// set of attributes. Change these attribute values to modify the information
+// associated with an assembly.
+[assembly: AssemblyTitle("Shared.Droid.JPush")]
+[assembly: AssemblyDescription("")]
+[assembly: AssemblyConfiguration("")]
+[assembly: AssemblyCompany("")]
+[assembly: AssemblyProduct("Shared.Droid.JPush")]
+[assembly: AssemblyCopyright("Copyright 漏  2018")]
+[assembly: AssemblyTrademark("")]
+[assembly: AssemblyCulture("")]
+[assembly: ComVisible(false)]
+
+// Version information for an assembly consists of the following four values:
+//
+//      Major Version
+//      Minor Version 
+//      Build Number
+//      Revision
+[assembly: AssemblyVersion("1.0.0.0")]
+[assembly: AssemblyFileVersion("1.0.0.0")]
diff --git a/ZigbeeApp/Shared.Droid.JPush/Shared.Droid.JPush.csproj b/ZigbeeApp/Shared.Droid.JPush/Shared.Droid.JPush.csproj
new file mode 100644
index 0000000..d3c0b0b
--- /dev/null
+++ b/ZigbeeApp/Shared.Droid.JPush/Shared.Droid.JPush.csproj
@@ -0,0 +1,71 @@
+锘�<?xml version="1.0" encoding="utf-8"?>
+<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
+  <PropertyGroup>
+    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
+    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
+    <ProductVersion>8.0.30703</ProductVersion>
+    <SchemaVersion>2.0</SchemaVersion>
+    <ProjectGuid>{06B9C874-B9B2-4417-8280-B321F966E46B}</ProjectGuid>
+    <ProjectTypeGuids>{10368E6C-D01B-4462-8E8B-01FC667A7035};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
+    <TemplateGuid>{77efb91c-a7e9-4b0e-a7c5-31eeec3c6d46}</TemplateGuid>
+    <OutputType>Library</OutputType>
+    <AppDesignerFolder>Properties</AppDesignerFolder>
+    <RootNamespace>Shared.Droid.JPush</RootNamespace>
+    <AssemblyName>Shared.Droid.JPush</AssemblyName>
+    <FileAlignment>512</FileAlignment>
+    <Deterministic>True</Deterministic>
+    <TargetFrameworkVersion>v8.0</TargetFrameworkVersion>
+    <AndroidClassParser>class-parse</AndroidClassParser>
+    <AndroidCodegenTarget>XAJavaInterop1</AndroidCodegenTarget>
+    <RestoreProjectStyle>PackageReference</RestoreProjectStyle>
+    <ReleaseVersion>1.1</ReleaseVersion>
+    <SynchReleaseVersion>false</SynchReleaseVersion>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
+    <DebugSymbols>true</DebugSymbols>
+    <DebugType>portable</DebugType>
+    <Optimize>false</Optimize>
+    <OutputPath>bin\Debug\</OutputPath>
+    <DefineConstants>DEBUG;TRACE</DefineConstants>
+    <ErrorReport>prompt</ErrorReport>
+    <WarningLevel>4</WarningLevel>
+  </PropertyGroup>
+  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
+    <DebugType>portable</DebugType>
+    <Optimize>true</Optimize>
+    <OutputPath>bin\Release\</OutputPath>
+    <DefineConstants>TRACE</DefineConstants>
+    <ErrorReport>prompt</ErrorReport>
+    <WarningLevel>4</WarningLevel>
+  </PropertyGroup>
+  <ItemGroup>
+    <Reference Include="Mono.Android" />
+    <Reference Include="System" />
+    <Reference Include="System.Core" />
+  </ItemGroup>
+  <ItemGroup>
+    <Compile Include="HmsContentProvider.cs" />
+    <Compile Include="HmsLazyInputStream.cs" />
+    <Compile Include="Properties\AssemblyInfo.cs" />
+  </ItemGroup>
+  <ItemGroup>
+    <None Include="Jars\AboutJars.txt" />
+    <None Include="Additions\AboutAdditions.txt" />
+  </ItemGroup>
+  <ItemGroup>
+    <TransformFile Include="Transforms\Metadata.xml" />
+    <TransformFile Include="Transforms\EnumFields.xml" />
+    <TransformFile Include="Transforms\EnumMethods.xml" />
+  </ItemGroup>
+  <ItemGroup>
+    <LibraryProjectZip Include="Jars\android_jpush_fcm_4.5.0.aar" />
+  </ItemGroup>
+  <Import Project="$(MSBuildExtensionsPath)\Xamarin\Android\Xamarin.Android.Bindings.targets" />
+  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. 
+       Other similar extension points exist, see Microsoft.Common.targets.
+  <Target Name="BeforeBuild">
+  </Target>
+  <Target Name="AfterBuild">
+  </Target>
+  -->
+</Project>
\ No newline at end of file
diff --git a/ZigbeeApp/Shared.Droid.JPush/Shared.Droid.JPush.sln b/ZigbeeApp/Shared.Droid.JPush/Shared.Droid.JPush.sln
new file mode 100644
index 0000000..faf6794
--- /dev/null
+++ b/ZigbeeApp/Shared.Droid.JPush/Shared.Droid.JPush.sln
@@ -0,0 +1,25 @@
+锘�
+Microsoft Visual Studio Solution File, Format Version 12.00
+# Visual Studio Version 16
+VisualStudioVersion = 16.0.810.16
+MinimumVisualStudioVersion = 10.0.40219.1
+Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Shared.Droid.JPush", "Shared.Droid.JPush.csproj", "{06B9C874-B9B2-4417-8280-B321F966E46B}"
+EndProject
+Global
+	GlobalSection(SolutionConfigurationPlatforms) = preSolution
+		Debug|Any CPU = Debug|Any CPU
+		Release|Any CPU = Release|Any CPU
+	EndGlobalSection
+	GlobalSection(ProjectConfigurationPlatforms) = postSolution
+		{06B9C874-B9B2-4417-8280-B321F966E46B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
+		{06B9C874-B9B2-4417-8280-B321F966E46B}.Debug|Any CPU.Build.0 = Debug|Any CPU
+		{06B9C874-B9B2-4417-8280-B321F966E46B}.Release|Any CPU.ActiveCfg = Release|Any CPU
+		{06B9C874-B9B2-4417-8280-B321F966E46B}.Release|Any CPU.Build.0 = Release|Any CPU
+	EndGlobalSection
+	GlobalSection(SolutionProperties) = preSolution
+		HideSolutionNode = FALSE
+	EndGlobalSection
+	GlobalSection(ExtensibilityGlobals) = postSolution
+		SolutionGuid = {2D699278-36F8-45AF-8978-2F3B24C3BC7F}
+	EndGlobalSection
+EndGlobal
diff --git a/ZigbeeApp/Shared.Droid.JPush/Transforms/EnumFields.xml b/ZigbeeApp/Shared.Droid.JPush/Transforms/EnumFields.xml
new file mode 100644
index 0000000..304de5c
--- /dev/null
+++ b/ZigbeeApp/Shared.Droid.JPush/Transforms/EnumFields.xml
@@ -0,0 +1,14 @@
+锘�<enum-field-mappings>
+  <!--
+  This example converts the constants Fragment_id, Fragment_name,
+  and Fragment_tag from android.support.v4.app.FragmentActivity.FragmentTag
+  to an enum called Android.Support.V4.App.FragmentTagType with values
+  Id, Name, and Tag.
+  
+  <mapping jni-class="android/support/v4/app/FragmentActivity$FragmentTag" clr-enum-type="Android.Support.V4.App.FragmentTagType">
+    <field jni-name="Fragment_name" clr-name="Name" value="0" />
+    <field jni-name="Fragment_id" clr-name="Id" value="1" />
+    <field jni-name="Fragment_tag" clr-name="Tag" value="2" />
+  </mapping>
+  -->
+</enum-field-mappings>
\ No newline at end of file
diff --git a/ZigbeeApp/Shared.Droid.JPush/Transforms/EnumMethods.xml b/ZigbeeApp/Shared.Droid.JPush/Transforms/EnumMethods.xml
new file mode 100644
index 0000000..6294cff
--- /dev/null
+++ b/ZigbeeApp/Shared.Droid.JPush/Transforms/EnumMethods.xml
@@ -0,0 +1,13 @@
+锘�<enum-method-mappings>
+  <!--
+  This example changes the Java method:
+    android.support.v4.app.Fragment.SavedState.writeToParcel (int flags)
+  to be:
+    android.support.v4.app.Fragment.SavedState.writeToParcel (Android.OS.ParcelableWriteFlags flags)
+  when bound in C#.
+  
+  <mapping jni-class="android/support/v4/app/Fragment.SavedState">
+    <method jni-name="writeToParcel" parameter="flags" clr-enum-type="Android.OS.ParcelableWriteFlags" />
+  </mapping>
+  -->
+</enum-method-mappings>
\ No newline at end of file
diff --git a/ZigbeeApp/Shared.Droid.JPush/Transforms/Metadata.xml b/ZigbeeApp/Shared.Droid.JPush/Transforms/Metadata.xml
new file mode 100644
index 0000000..b3aedcf
--- /dev/null
+++ b/ZigbeeApp/Shared.Droid.JPush/Transforms/Metadata.xml
@@ -0,0 +1,188 @@
+锘�<metadata>
+  <!--
+  This sample removes the class: android.support.v4.content.AsyncTaskLoader.LoadTask:
+  <remove-node path="/api/package[@name='android.support.v4.content']/class[@name='AsyncTaskLoader.LoadTask']" />
+  
+  This sample removes the method: android.support.v4.content.CursorLoader.loadInBackground:
+  <remove-node path="/api/package[@name='android.support.v4.content']/class[@name='CursorLoader']/method[@name='loadInBackground']" />
+  -->
+	
+	
+	<!--=======鍗庝负======-->
+	<!--base-->
+	<attr path="/api/package[@name='com.huawei.hms.common.data']/class[@name='DataHolderCreator']/method[@name='createFromParcel' and count(parameter)=1 and parameter[1][@type='android.os.Parcel']]" name="managedReturn">Java.Lang.Object</attr>
+	<attr path="/api/package[@name='com.huawei.hms.common.data']/class[@name='DataHolderCreator']/method[@name='newArray' and count(parameter)=1 and parameter[1][@type='int']]" name="managedReturn">Java.Lang.Object[]</attr>
+	<attr path="/api/package[@name='com.huawei.hms.support.api']/class[@name='ResolvePendingResult']/method[@name='onComplete' and count(parameter)=1 and parameter[1][@type='T']]" name="managedReturn">Java.Lang.Object</attr>
+	<attr path="/api/package[@name='com.huawei.hms.common.internal']/class[@name='DialogRedirectImpl']/method[@name='redirect' and count(parameter)=0]" name="visibility">protected</attr>
+
+	<attr path="/api/package[@name='com.huawei.hms.common']/class[@name='FeatureCreator']/method[@name='createFromParcel' and count(parameter)=1 and parameter[1][@type='android.os.Parcel']]" name="managedReturn">Java.Lang.Object</attr>
+	<attr path="/api/package[@name='com.huawei.hms.common']/class[@name='FeatureCreator']/method[@name='newArray' and count(parameter)=1 and parameter[1][@type='int']]" name="managedReturn">Java.Lang.Object[]</attr>
+
+	<attr path="/api/package[@name='com.huawei.hms.common.webserverpic']/class[@name='WebServerPicCreator']/method[@name='createFromParcel' and count(parameter)=1 and parameter[1][@type='android.os.Parcel']]" name="managedReturn">Java.Lang.Object</attr>
+	<attr path="/api/package[@name='com.huawei.hms.common.webserverpic']/class[@name='WebServerPicCreator']/method[@name='newArray' and count(parameter)=1 and parameter[1][@type='int']]" name="managedReturn">Java.Lang.Object[]</attr>
+
+	<remove-node path="/api/package[@name='com.huawei.hms.common.internal']/class[@name='TaskApiCall']/method[@name='doExecute']" />
+	<remove-node path="/api/package[@name='com.huawei.hms.common.data']/class[@name='DataHolder']/method[@name='finalize' and count(parameter)=0]" />
+	<remove-node path="/api/package[@name='com.huawei.hms.support.api.client']/class[@name='ResolvingResultCallbacks']/method[@name='onSuccess' and count(parameter)=1 and parameter[1][@type='R']]" />
+
+	<attr path="/api/package[@name='com.huawei.hms.support.hianalytics']/class[@name='HiAnalyticsClient']" name="extends">Java.Lang.Object</attr>
+
+	<add-node path="/api/package[@name='com.huawei.hms.support.api.client']/class[@name='ResolvingResultCallbacks']">
+		<method name="onSuccess" return="void" abstract="false" native="false" synchronized="false" static="false" final="false" deprecated="not deprecated" visibility="public">
+			<parameter name="context" type="java.lang.Object" />
+		</method>
+	</add-node>
+	<add-node path="/api/package[@name='com.huawei.hms.common.data']/class[@name='DBInnerIter']">
+		<method name="remove" return="void" abstract="false" native="false" synchronized="false" static="false" final="false" deprecated="not deprecated" visibility="public" />
+	</add-node>
+
+	<!-- Renaming namespaces -->
+
+	<attr path="/api/package[@name='com.huawei.hms.actions']" name="managedName">Huawei.Hms.Actions</attr>
+	<attr path="/api/package[@name='com.huawei.hms.activity']" name="managedName">Huawei.Hms.Activity</attr>
+	<attr path="/api/package[@name='com.huawei.hms.activity.internal']" name="managedName">Huawei.Hms.Activity.Internal</attr>
+	<attr path="/api/package[@name='com.huawei.hms.adapter']" name="managedName">Huawei.Hms.Adapter</attr>
+	<attr path="/api/package[@name='com.huawei.hms.adapter.internal']" name="managedName">Huawei.Hms.Adapter.Internal</attr>
+	<attr path="/api/package[@name='com.huawei.hms.api']" name="managedName">Huawei.Hms.Api</attr>
+	<attr path="/api/package[@name='com.huawei.hms.common']" name="managedName">Huawei.Hms.Common</attr>
+	<attr path="/api/package[@name='com.huawei.hms.common.api']" name="managedName">Huawei.Hms.Common.Api</attr>
+	<attr path="/api/package[@name='com.huawei.hms.common.api.internal']" name="managedName">Huawei.Hms.Common.Api.Internal</attr>
+	<attr path="/api/package[@name='com.huawei.hms.common.data']" name="managedName">Huawei.Hms.Common.Data</attr>
+	<attr path="/api/package[@name='com.huawei.hms.common.internal']" name="managedName">Huawei.Hms.Common.Internal</attr>
+	<attr path="/api/package[@name='com.huawei.hms.common.internal.safeparcel']" name="managedName">Huawei.Hms.Common.Internal.SafeParcel</attr>
+	<attr path="/api/package[@name='com.huawei.hms.common.size']" name="managedName">Huawei.Hms.Common.Size</attr>
+	<attr path="/api/package[@name='com.huawei.hms.common.sqlite']" name="managedName">Huawei.Hms.Common.S</attr>
+	<attr path="/api/package[@name='com.huawei.hms.common.util']" name="managedName">Huawei.Hms.Common.Util</attr>
+	<attr path="/api/package[@name='com.huawei.hms.common.webserverpic']" name="managedName">Huawei.Hms.Common.WebServicePic</attr>
+	<attr path="/api/package[@name='com.huawei.hms.core.aidl']" name="managedName">Huawei.Hms.Core.Aidl</attr>
+	<attr path="/api/package[@name='com.huawei.hms.core.aidl.annotation']" name="managedName">Huawei.Hms.Core.Aidl.Annotation</attr>
+	<attr path="/api/package[@name='com.huawei.hms.security']" name="managedName">Huawei.Hms.Security</attr>
+	<attr path="/api/package[@name='com.huawei.hms.support.api']" name="managedName">Huawei.Hms.Support.Api</attr>
+	<attr path="/api/package[@name='com.huawei.hms.support.api.client']" name="managedName">Huawei.Hms.Support.Api.Client</attr>
+	<attr path="/api/package[@name='com.huawei.hms.support.api.core']" name="managedName">Huawei.Hms.Support.Api.Core</attr>
+	<attr path="/api/package[@name='com.huawei.hms.support.api.entity.auth']" name="managedName">Huawei.Hms.Support.Api.Entity.Auth</attr>
+	<attr path="/api/package[@name='com.huawei.hms.support.api.entity.core']" name="managedName">Huawei.Hms.Support.Api.Entity.Core</attr>
+	<attr path="/api/package[@name='com.huawei.hms.support.api.transport']" name="managedName">Huawei.Hms.Support.Api.Transport</attr>
+	<attr path="/api/package[@name='com.huawei.hms.support.hianalytics']" name="managedName">Huawei.Hms.Support.HiAnalytics</attr>
+	<attr path="/api/package[@name='com.huawei.hms.utils']" name="managedName">Huawei.Hms.Utils</attr>
+	
+	<!--HmsDevice-->
+	<attr path="/api/package[@name='com.huawei.hms.utils']/class[@name='IOUtils']/method[@name='closeQuietly' and count(parameter)=1 and parameter[1][@type='java.io.OutputStream']]" name="managedName">CloseQuietlyOutputStream</attr>
+	<attr path="/api/package[@name='com.huawei.hms.utils']/class[@name='IOUtils']/method[@name='closeQuietly' and count(parameter)=1 and parameter[1][@type='java.io.InputStream']]" name="managedName">CloseQuietlyInputStream</attr>
+
+	<attr path="/api/package[@name='com.huawei.hms.android']" name="managedName">Huawei.Hms.Android</attr>
+	<attr path="/api/package[@name='com.huawei.hms.base.device']" name="managedName">Huawei.Hms.Base.Device</attr>
+	<attr path="/api/package[@name='com.huawei.hms.common']" name="managedName">Huawei.Hms.Common</attr>
+	<attr path="/api/package[@name='com.huawei.hms.common.internal']" name="managedName">Huawei.Hms.Common.Internal</attr>
+	<attr path="/api/package[@name='com.huawei.hms.common.util']" name="managedName">Huawei.Hms.Common.Util</attr>
+	<attr path="/api/package[@name='com.huawei.hms.support.gentyref']" name="managedName">Huawei.Hms.Support.Gentyref</attr>
+	<attr path="/api/package[@name='com.huawei.hms.support.log.common']" name="managedName">Huawei.Hms.Support.Log.Common</attr>
+	<attr path="/api/package[@name='com.huawei.hms.utils']" name="managedName">Huawei.Hms.Utils</attr>
+	<attr path="/api/package[@name='com.huawei.hms.utils.a']" name="managedName">Huawei.Hms.Utils.A</attr>
+	
+	<!--HmsOpenDevice-->
+	<attr path="/api/package[@name='com.huawei.hms.opendevice']/class[@name='OpenDeviceHmsClientBuilder']/method[@name='buildClient']" name="managedReturn">Java.Lang.Object</attr>
+	<attr path="/api/package[@name='com.huawei.hms.aaid.task']/class[@name='PushClientBuilder']/method[@name='buildClient']" name="managedReturn">Java.Lang.Object</attr>
+	<remove-node path="/api/package[@name='com.huawei.hms.opendevice']/class[@name='OpenDeviceTaskApiCall']"/>
+
+	<attr path="/api/package[@name='com.huawei.hms.aaid']" name="managedName">Huawei.Hms.Aaid</attr>
+	<attr path="/api/package[@name='com.huawei.hms.aaid.constant']" name="managedName">Huawei.Hms.Aaid.Constant</attr>
+	<attr path="/api/package[@name='com.huawei.hms.aaid.encrypt']" name="managedName">Huawei.Hms.Aaid.Encrypt</attr>
+	<attr path="/api/package[@name='com.huawei.hms.aaid.entity']" name="managedName">Huawei.Hms.Aaid.Entity</attr>
+	<attr path="/api/package[@name='com.huawei.hms.aaid.init']" name="managedName">Huawei.Hms.Aaid.Init</attr>
+	<attr path="/api/package[@name='com.huawei.hms.aaid.plugin']" name="managedName">Huawei.Hms.Aaid.Plugin</attr>
+	<attr path="/api/package[@name='com.huawei.hms.aaid.task']" name="managedName">Huawei.Hms.Aaid.Task</attr>
+	<attr path="/api/package[@name='com.huawei.hms.aaid.utils']" name="managedName">Huawei.Hms.Aaid.Utils</attr>
+	<attr path="/api/package[@name='com.huawei.hms.opendevice']" name="managedName">Huawei.Hms.OpenDevice</attr>
+	<attr path="/api/package[@name='com.huawei.hms.support.api.entity.opendevice']" name="managedName">Huawei.Hms.Support.Api.Entity.OpenDevice</attr>
+	<attr path="/api/package[@name='com.huawei.hms.support.api.opendevice']" name="managedName">Huawei.Hms.Support.Api.OpenDevice</attr>
+	
+	<!--HmsNetworkCommon-->
+	<attr path="/api/package[@name='com.huawei.hms.framework.common']/class[@name='IoUtils']/method[@name='closeSecure' and count(parameter)=1 and parameter[1][@type='java.io.OutputStream']]" name="managedName">CloseOutputStreamSecure</attr>
+	<attr path="/api/package[@name='com.huawei.hms.framework.common']/class[@name='IoUtils']/method[@name='closeSecure' and count(parameter)=1 and parameter[1][@type='java.io.InputStream']]" name="managedName">CloseInputStreamSecure</attr>
+	<attr path="/api/package[@name='com.huawei.hms.framework.common']" name="managedName">Huawei.Hms.Framework.Common</attr>
+	<attr path="/api/package[@name='com.huawei.hms.framework.common.hianalytics']" name="managedName">Huawei.Hms.Framework.Common.HiAnalytics</attr>
+	<add-node path="/api/package[@name='com.huawei.hms.framework.common']/class[@name='RunnableScheduledFutureEnhance']">
+		<method name="compareTo" return="int" abstract="false" native="false" synchronized="false" static="false" final="false" deprecated="not deprecated" visibility="public">
+			<parameter name="context" type="java.lang.Object" />
+		</method>
+	</add-node>
+	
+	<!--HmsSecurityBase-->
+	<attr path="/api/package[@name='com.huawei.secure.android.common.util']/class[@name='IOUtil']/method[@name='closeSecure' and count(parameter)=1 and parameter[1][@type='java.io.OutputStream']]" name="managedName">CloseOutputStreamSecure</attr>
+	<attr path="/api/package[@name='com.huawei.secure.android.common.util']/class[@name='IOUtil']/method[@name='closeSecure' and count(parameter)=1 and parameter[1][@type='java.io.InputStream']]" name="managedName">CloseInputStreamSecure</attr>
+
+	<attr path="/api/package[@name='com.huawei.secure.android.common']" name="managedName">Huawei.Secure.Android.Common</attr>
+	<attr path="/api/package[@name='com.huawei.secure.android.common.anonymization']" name="managedName">Huawei.Secure.Android.Common.Anonymization</attr>
+	<attr path="/api/package[@name='com.huawei.secure.android.common.base']" name="managedName">Huawei.Secure.Android.Common.Base</attr>
+	<attr path="/api/package[@name='com.huawei.secure.android.common.exception']" name="managedName">Huawei.Secure.Android.Common.Exception</attr>
+	<attr path="/api/package[@name='com.huawei.secure.android.common.sign']" name="managedName">Huawei.Secure.Android.Common.Sign</attr>
+	<attr path="/api/package[@name='com.huawei.secure.android.common.util']" name="managedName">Huawei.Secure.Android.Common.Util</attr>
+	<attr path="/api/package[@name='com.huawei.secure.android.common.webview']" name="managedName">Huawei.Secure.Android.Common.Webview</attr>
+	<attr path="/api/package[@name='com.huawei.secure.android.common.xml']" name="managedName">Huawei.Secure.Android.Common.Xml</attr>
+	
+	<!--agconnnect-->
+	<attr path="/api/package[@name='com.huawei.agconnect.core']/class[@name='Service']" name="managedName">AgconnectService</attr>
+	<attr path="/api/package[@name='com.huawei.agconnect']" name="managedName">Huawei.Agconnect</attr>
+	<attr path="/api/package[@name='com.huawei.agconnect.annotation']" name="managedName">Huawei.Agconnect.Annotation</attr>
+	<attr path="/api/package[@name='com.huawei.agconnect.config']" name="managedName">Huawei.Agconnect.Config</attr>
+	<attr path="/api/package[@name='com.huawei.agconnect.core']" name="managedName">Huawei.Agconnect.Core</attr>
+	<attr path="/api/package[@name='com.huawei.agconnect.core.provider']" name="managedName">Huawei.Agconnect.Core.Provider</attr>
+	<attr path="/api/package[@name='com.huawei.agconnect.core.service']" name="managedName">Huawei.Agconnect.Core.Service</attr>
+	<attr path="/api/package[@name='com.huawei.agconnect.core.service.auth']" name="managedName">Huawei.Agconnect.Core.Service.Auth</attr>
+	<attr path="/api/package[@name='com.huawei.agconnect.exception']" name="managedName">Huawei.Agconnect.Exception</attr>
+
+	<!--push-->
+	<attr path="/api/package[@name='com.huawei.hms.push.task']/class[@name='IntentCallable']/method[@name='call']" name="managedReturn">Java.Lang.Object</attr>
+	<attr path="/api/package[@name='com.huawei.hms.push']" name="managedName">Huawei.Hms.Push</attr>
+	<attr path="/api/package[@name='com.huawei.hms.push.constant']" name="managedName">Huawei.Hms.Push.Constant</attr>
+	<attr path="/api/package[@name='com.huawei.hms.push.task']" name="managedName">Huawei.Hms.Push.Task</attr>
+	<attr path="/api/package[@name='com.huawei.hms.push.ups']" name="managedName">Huawei.Hms.Push.Ups</attr>
+	<attr path="/api/package[@name='com.huawei.hms.push.ups.entity']" name="managedName">Huawei.Hms.Push.Ups.Entity</attr>
+	<attr path="/api/package[@name='com.huawei.hms.push.utils']" name="managedName">Huawei.Hms.Push.Utils</attr>
+	<attr path="/api/package[@name='com.huawei.hms.push.utils.ha']" name="managedName">Huawei.Hms.Push.Utils.HA</attr>
+	<attr path="/api/package[@name='com.huawei.hms.support.api.entity.push']" name="managedName">Huawei.Hms.Support.Api.Entity.Push</attr>
+	<attr path="/api/package[@name='com.huawei.hms.support.api.push']" name="managedName">Huawei.Hms.Support.Api.Push</attr>
+	<attr path="/api/package[@name='com.huawei.hms.support.api.push.base']" name="managedName">Huawei.Hms.Support.Api.Push.Base</attr>
+	<attr path="/api/package[@name='com.huawei.hms.support.api.push.base']" name="managedName">Huawei.Hms.Support.Api.Push.Base</attr>
+	<attr path="/api/package[@name='com.huawei.hms.support.api.push.pushselfshow']" name="managedName">Huawei.Hms.Support.Api.Push.PushSelfShow</attr>
+	<attr path="/api/package[@name='com.huawei.hms.support.api.push.pushselfshow.click']" name="managedName">Huawei.Hms.Support.Api.Push.PushSelfShow.Click</attr>
+	<attr path="/api/package[@name='com.huawei.hms.support.api.push.pushselfshow.entity']" name="managedName">Huawei.Hms.Support.Api.Push.PushSelfShow.Entity</attr>
+	<attr path="/api/package[@name='com.huawei.hms.support.api.push.pushselfshow.prepare']" name="managedName">Huawei.Hms.Support.Api.Push.PushSelfShow.Prepare</attr>
+	<attr path="/api/package[@name='com.huawei.hms.support.api.push.pushselfshow.utils']" name="managedName">Huawei.Hms.Support.Api.Push.PushSelfShow.Utils</attr>
+	<attr path="/api/package[@name='com.huawei.hms.support.api.push.service']" name="managedName">Huawei.Hms.Support.Api.Push.Service</attr>
+	<attr path="/api/package[@name='com.huawei.hms.support.api.push.utils']" name="managedName">Huawei.Hms.Support.Api.Push.Utils</attr>
+	<attr path="/api/package[@name='com.huawei.hms.support.api.push.utils.common']" name="managedName">Huawei.Hms.Support.Api.Push.Utils.Common</attr>
+	<attr path="/api/package[@name='com.huawei.hms.support.api.push.utils.common.base']" name="managedName">Huawei.Hms.Support.Api.Push.Utils.Common.Base</attr>
+	<!--=======鍗庝负End========-->
+	
+	<!--=======灏忕背===========-->
+	<remove-node path="/api/package[@name='com.xiaomi.mipush.sdk']/class[@name='PushMessageHandler']/method[@name='b' and count(parameter)=0]"/>
+	<add-node path="/api/package[@name='com.xiaomi.mipush.sdk']/class[@name='PushMessageHandler']">
+		<method  name="b" return="boolean" abstract="false" native="false" synchronized="false" static="false" final="false" deprecated="not deprecated" jni-signature="()Z" jni-return="Z" bridge="false" synthetic="false" visibility="protected">
+		</method>
+	</add-node>
+	<remove-node path="/api/package[@name='com.xiaomi.mipush.sdk']/class[@name='PushMessageHandler']/method[@name='a' and count(parameter)=0]"/>
+	<add-node path="/api/package[@name='com.xiaomi.mipush.sdk']/class[@name='PushMessageHandler']">
+		<method  name="a" return="boolean" abstract="false" native="false" synchronized="false" static="false" final="false" deprecated="not deprecated" jni-signature="()Z" jni-return="Z" bridge="false" synthetic="false" visibility="protected">
+		</method>
+	</add-node>
+	<remove-node path="/api/package[@name='com.xiaomi.push.service']/class[@name='XMPushService']/method[@name='a' and count(parameter)=1 and parameter[1][@type='int']]"/>
+	<!--=======灏忕背End========-->
+	
+	<!--=======榄呮棌=========-->
+	<attr path="/api/package[@name='com.meizu.cloud.pushsdk.notification.model']/class[@name='ActVideoSetting']" name="managedName">MeizuActVideoSetting</attr>
+	<attr path="/api/package[@name='com.meizu.cloud.pushsdk.notification.model']/class[@name='AdvanceSetting']" name="managedName">MeizuAdvanceSetting</attr>
+	<attr path="/api/package[@name='com.meizu.cloud.pushsdk.notification.model']/class[@name='AdvanceSettingEx']" name="managedName">MeizuAdvanceSettingEx</attr>
+	<attr path="/api/package[@name='com.meizu.cloud.pushsdk.notification.model']/class[@name='NotifyType']" name="managedName">MeizuNotifyType</attr>
+	<attr path="/api/package[@name='com.meizu.cloud.pushsdk.notification.model']/class[@name='NotificationStyle']" name="managedName">MeizuNotificationStyle</attr>
+	<attr path="/api/package[@name='com.meizu.cloud.pushsdk.notification.model']/class[@name='AdvertisementOption']" name="managedName">MeizuAdvertisementOption</attr>
+	<attr path="/api/package[@name='com.meizu.cloud.pushsdk.notification.model']/class[@name='AppIconSetting']" name="managedName">MeizuAppIconSetting</attr>
+	<attr path="/api/package[@name='com.meizu.cloud.pushsdk.notification.model']/class[@name='BrightRemindSetting']" name="managedName">MeizuBrightRemindSetting</attr>
+	<attr path="/api/package[@name='com.meizu.cloud.pushsdk.notification.model']/class[@name='TimeDisplaySetting']" name="managedName">MeizuTimeDisplaySetting</attr>
+	<!--=======榄呮棌End=========-->
+	
+	<!--========鏋佸厜=========-->
+	<!--<attr path="/api/package[@name='cn.jpush.android.data']" name="managedname">cn.jpush.android.jdata</attr>-->
+	<!--======鏋佸厜End========-->
+</metadata>
diff --git a/ZigbeeApp/Shared/Common/SendDataToServer.cs b/ZigbeeApp/Shared/Common/SendDataToServer.cs
index 4203ddd..98c9fff 100644
--- a/ZigbeeApp/Shared/Common/SendDataToServer.cs
+++ b/ZigbeeApp/Shared/Common/SendDataToServer.cs
@@ -599,5 +599,80 @@
         }
         #endregion
 
+
+        /// <summary>
+        /// 鏋佸厜鎺ㄩ�佹秷鎭�
+        /// </summary>
+        [System.Serializable]
+        public class JPushMessageInfo
+        {
+            /// <summary>
+            /// 浣忓畢ID
+            /// </summary>
+            public string HomeId;
+            /// <summary>
+            /// 鎺ㄩ�佹爣棰�
+            /// </summary>
+            public string Title;
+            /// <summary>
+            /// 鎺ㄩ�佸唴瀹�
+            /// </summary>
+            public string Content;
+            /// <summary>
+            /// 鎺ㄩ�侀檮鍔犳暟鎹�
+            /// </summary>
+            public string Extras;
+            /// <summary>
+            /// 淇℃伅绫诲瀷
+            /// </summary>
+            public string messageType = "";
+            /// <summary>
+            /// 鎵╁睍鏁版嵁鍐呭
+            /// </summary>
+            public string expantContent = "";
+            /// <summary>
+            /// spk鏍囧織锛屽�间负door.gate鏃惰〃绀鸿嚜鐮�
+            /// </summary>
+            public string spk = "";
+            /// <summary>
+            /// sip璐﹀彿
+            /// </summary>
+            public string sipAccount;
+
+        }
+
+        /// <summary>
+        /// 鏋佸厜鎺ㄩ�佹秷鎭�
+        /// </summary>
+        [System.Serializable]
+        public class JPushExpandData
+        {
+            /// <summary>
+            /// 闄勫姞鍐呭
+            /// </summary>
+            public string expandData;
+
+        }
+
+        /// <summary>
+        /// 鏋佸厜鎺ㄩ�佹秷鎭�
+        /// </summary>
+        [System.Serializable]
+        public class ExpandData
+        {
+            /// <summary>
+            /// 浣忓畢ID
+            /// </summary>
+            public string homeId;
+            /// <summary>
+            /// 闄勫姞鍐呭
+            /// </summary>
+            public string expantContent;
+            /// <summary>
+            ///  淇℃伅绫诲瀷
+            /// </summary>
+            public string messageType;
+        }
+
     }
 }
diff --git a/ZigbeeApp/Shared/DLL/Android/Shared.Droid.dll b/ZigbeeApp/Shared/DLL/Android/Shared.Droid.dll
old mode 100755
new mode 100644
index 8ac3b4a..1ceea60
--- a/ZigbeeApp/Shared/DLL/Android/Shared.Droid.dll
+++ b/ZigbeeApp/Shared/DLL/Android/Shared.Droid.dll
Binary files differ
diff --git a/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlResidenceLogic.cs b/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlResidenceLogic.cs
index 5be3a2e..3e4fbe8 100644
--- a/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlResidenceLogic.cs
+++ b/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/HdlResidenceLogic.cs
@@ -1,8 +1,6 @@
 锘縰sing Shared.Common;
 using System;
 using System.Collections.Generic;
-using System.Text;
-using Shared.IOS.HDLFVSDK;
 namespace Shared.Phone.UserCenter
 {
     /// <summary>
@@ -116,6 +114,13 @@
             Shared.IOS.HDLFVSDK.Video.Logout();
             //閲嶆柊鐧诲綍鍏ㄨ閫�
             Shared.IOS.HDLFVSDK.Video.Init("", residenceId);
+#endif
+#if Android
+            string userName = residenceId;
+            string uuid = "0E6AD0F4-FC17-45B4-AB63-08DAD3B09516";
+            string code = "T0061";
+            string httpServer = "120.25.212.198";
+            Com.Evoyohome.Sphonelibs.Global.Global.Login(Application.Activity, userName, uuid, code, httpServer, null);
 #endif
 
 
@@ -306,6 +311,13 @@
 
                                 Shared.IOS.HDLFVSDK.Video.Init("", listHouse[0].Id);
 #endif
+#if Android
+                                string userName = listHouse[0].Id;
+                                string uuid = "0E6AD0F4-FC17-45B4-AB63-08DAD3B09516";
+                                string code = "T0061";
+                                string httpServer = "120.25.212.198";
+                                Com.Evoyohome.Sphonelibs.Global.Global.Login(Application.Activity, userName, uuid, code, httpServer, null);
+#endif
                             }
                         }
                         else {
@@ -315,6 +327,13 @@
 
                             Shared.IOS.HDLFVSDK.Video.Init("", Config.Instance.HomeId);
 #endif
+#if Android
+                            string userName = Config.Instance.HomeId;
+                            string uuid = "0E6AD0F4-FC17-45B4-AB63-08DAD3B09516";
+                            string code = "T0061";
+                            string httpServer = "120.25.212.198";
+                            Com.Evoyohome.Sphonelibs.Global.Global.Login(Application.Activity, userName, uuid, code, httpServer, null);
+#endif
                         }
                         Config.Instance.Save();
                     }
diff --git a/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/UserCenterLogic.cs b/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/UserCenterLogic.cs
index 4998bcc..c00d980 100644
--- a/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/UserCenterLogic.cs
+++ b/ZigbeeApp/Shared/Phone/UserCenter/CommonBase/Logic/UserCenterLogic.cs
@@ -4,7 +4,6 @@
 using Shared.Common.ResponseEntity;
 using System.Collections.Generic;
 using System.Text;
-using Shared.IOS.HDLFVSDK;
 namespace Shared.Phone.UserCenter
 {
     /// <summary>
diff --git a/ZigbeeApp/Shared/Phone/UserCenter/UserMain/UserMainForm.cs b/ZigbeeApp/Shared/Phone/UserCenter/UserMain/UserMainForm.cs
index 716f9ac..88c4e99 100644
--- a/ZigbeeApp/Shared/Phone/UserCenter/UserMain/UserMainForm.cs
+++ b/ZigbeeApp/Shared/Phone/UserCenter/UserMain/UserMainForm.cs
@@ -335,10 +335,11 @@
                     }
                     //鎵撳紑浜鸿劯绠$悊椤甸潰
 #if iOS
-
                     Shared.IOS.HDLFVSDK.Video.ShowFaceManagement();
 #endif
-
+#if Android
+                    Com.Evoyohome.Sphonelibs.Global.Global.OpenFaceManageActivity(Application.Activity);
+#endif
                 };
             }
 
@@ -452,6 +453,10 @@
 #if iOS
                 Shared.IOS.HDLFVSDK.Video.ShowDeviceList();
 #endif
+#if Android
+
+                Com.Evoyohome.Sphonelibs.Global.Global.OpenIntercomActivity(Application.Activity);
+#endif
             };
 
             if (UserCenterResourse.UserInfo.AuthorityNo == 1 || UserCenterResourse.UserInfo.AuthorityNo == 2)
diff --git a/ZigbeeApp/Shared/Phone/VideoPhone/ESVideo.cs b/ZigbeeApp/Shared/Phone/VideoPhone/ESVideo.cs
old mode 100755
new mode 100644
index 9c9c214..dcddfce
--- a/ZigbeeApp/Shared/Phone/VideoPhone/ESVideo.cs
+++ b/ZigbeeApp/Shared/Phone/VideoPhone/ESVideo.cs
@@ -17,15 +17,7 @@
         public static void ShowESVideoMonitor(ESVideoInfo mESVideoInfo)
         {
 #if Android
-            Android.Content.Intent intent = new Android.Content.Intent(Application.Activity, typeof(GateWay.Droid.VideoActivity));
-            intent.PutExtra("DeviceName", mESVideoInfo.DeviceName);//瀹ゅ鏈虹殑鍚嶇О锛屼緥锛屽澶栨満
-            intent.PutExtra("ESRoomID", mESVideoInfo.ESRoomID);//褰撳墠鐢ㄦ埛鐨勬埧闂� ID
-            intent.PutExtra("ESVideoUUID", mESVideoInfo.ESVideoUUID);//瀹ゅ鏈篣UID锛屼緥:JJY000007FSEYX
-            intent.PutExtra("IsCollect", mESVideoInfo.IsCollect);//鏄惁鏀惰棌
-            intent.PutExtra("RoomName", mESVideoInfo.RoomName);//鎴块棿鍛藉悕锛屼緥 8鏍�1鍗曞厓0801
-            intent.AddFlags(Android.Content.ActivityFlags.NewTask);
-            intent.PutExtra("Type", 0);//绫诲瀷锛�0 鐩戞帶锛�1鍙嶅懠
-            Application.Activity.StartActivity(intent);
+            //
 #endif
         }
 
@@ -36,14 +28,7 @@
         public static void ShowESvideoVideoIntercom(ESVideoInfo mESVideoInfo)
         {
 #if Android
-            Android.Content.Intent intent = new Android.Content.Intent(Application.Activity, typeof(GateWay.Droid.VideoActivity));
-            intent.PutExtra("DeviceName", mESVideoInfo.DeviceName);//瀹ゅ鏈虹殑鍚嶇О锛屼緥锛屽澶栨満
-            intent.PutExtra("ESRoomID", mESVideoInfo.ESRoomID);//褰撳墠鐢ㄦ埛鐨勬埧闂� ID
-            intent.PutExtra("ESVideoUUID", mESVideoInfo.ESVideoUUID);//瀹ゅ鏈篣UID锛屼緥:JJY000007FSEYX
-            intent.PutExtra("IsCollect", mESVideoInfo.IsCollect);//鏄惁鏀惰棌
-            intent.PutExtra("RoomName", mESVideoInfo.RoomName);//鎴块棿鍛藉悕锛屼緥 8鏍�1鍗曞厓0801
-            intent.PutExtra("Type", 1);//绫诲瀷锛�0 鐩戞帶锛�1鍙嶅懠
-            Application.Activity.StartActivity(intent);
+            //
 #endif
         }
     }

--
Gitblit v1.8.0