陈嘉乐
2020-07-09 a7e8f9ea1b9d0b9c8e9c09a8101e65c59a475465
2020-07-09-01

可视对讲完成
9个文件已修改
396 ■■■■ 已修改文件
ZigbeeApp/.vs/GateWay/xs/UserPrefs.xml 54 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ZigbeeApp/.vs/GateWay/xs/sqlite3/storage.ide 补丁 | 查看 | 原始文档 | blame | 历史
ZigbeeApp/GateWay.Droid/Assets/Language.ini 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ZigbeeApp/Home.Ios/AppDelegate.cs 163 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ZigbeeApp/Home.Ios/Resources/Language.ini 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ZigbeeApp/Shared/Phone/Device/Logic/Send.cs 10 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ZigbeeApp/Shared/Phone/Device/VideoIntercom/VideoMachine.cs 105 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ZigbeeApp/Shared/Phone/MainPage/HomeMainPageForm.cs 49 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ZigbeeApp/Shared/R.cs 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
ZigbeeApp/.vs/GateWay/xs/UserPrefs.xml
@@ -1,44 +1,42 @@
<Properties StartupConfiguration="{F1296E2C-3777-4385-85B2-DA77617E3178}|Default">
  <MonoDevelop.Ide.ItemProperties.GateWay.Droid PreferredExecutionTarget="Android.5c86e4357d63" />
  <MonoDevelop.Ide.ItemProperties.ShardLib PreferredExecutionTarget="Android.Android_Accelerated_Oreo" />
  <MonoDevelop.Ide.Workbench ActiveDocument="Shared/Phone/UserCenter/CommonBase/Logic/HdlGatewayReceiveLogic.cs">
  <MonoDevelop.Ide.Workbench>
    <Files>
      <File FileName="Shared/Phone/Device/VideoIntercom/VideoMachine.cs" Line="105" Column="19" IsPinned="True" />
      <File FileName="Shared/Common/CommonPage.cs" Line="288" Column="22" IsPinned="True" />
      <File FileName="Shared/Phone/Category/CategoryMainForm.cs" Line="1" Column="1" />
      <File FileName="Shared/Phone/Device/Logic/Send.cs" Line="1245" Column="34" />
      <File FileName="Shared/Phone/MainPage/HomeMainPageForm.cs" Line="21" Column="23" />
      <File FileName="Home.Ios/ESVideo.cs" Line="75" Column="23" />
      <File FileName="Shared/Phone/SmartSound/Util/MyHttpWebResponse.cs" />
      <File FileName="Shared/Phone/SmartSound/Forms/SmartSoundContentForDeviceChange.cs" />
      <File FileName="Home.Ios/AppDelegate.cs" Line="121" Column="129" />
      <File FileName="Shared/Phone/UserCenter/Abount/AbountForm.cs" Line="61" Column="10" />
      <File FileName="Shared/Phone/Device/Logic/Method.cs" Line="688" Column="45" />
      <File FileName="Shared/Phone/Device/Logic/CustomText.cs" Line="125" Column="23" />
      <File FileName="Shared/Phone/UserCenter/CommonBase/Logic/HdlGatewayReceiveLogic.cs" Line="70" Column="53" />
      <File FileName="Shared/Phone/Device/VideoIntercom/VideoMachine.cs" Line="233" Column="23" IsPinned="True" />
      <File FileName="Shared/Common/CommonPage.cs" IsPinned="True" />
      <File FileName="Shared/Phone/Category/CategoryMainForm.cs" />
      <File FileName="Shared/Phone/Device/Logic/Send.cs" />
      <File FileName="Shared/Phone/MainPage/HomeMainPageForm.cs" />
      <File FileName="Home.Ios/ESVideo.cs" Line="50" Column="66" />
      <File FileName="Home.Ios/AppDelegate.cs" Line="237" Column="47" />
    </Files>
    <Pads>
      <Pad Id="ProjectPad">
        <State name="__root__">
          <Node name="GateWay" expanded="True">
            <Node name="GateWay.Droid" expanded="True" />
            <Node name="Home.IOS" expanded="True">
              <Node name="Resources" expanded="True" />
              <Node name="ESVideo.cs" selected="True" />
            </Node>
            <Node name="Shared" expanded="True">
              <Node name="Common" expanded="True" />
              <Node name="Phone" expanded="True">
                <Node name="Category" expanded="True" />
                <Node name="CommonForm" expanded="True" />
                <Node name="Device" expanded="True">
                  <Node name="Logic" expanded="True" />
                  <Node name="VideoIntercom" expanded="True" />
                </Node>
                <Node name="MainPage" expanded="True" />
                <Node name="SmartSound" expanded="True">
                  <Node name="Util" expanded="True" />
                </Node>
                <Node name="UserCenter" expanded="True">
                  <Node name="Abount" expanded="True" />
                  <Node name="CommonBase" expanded="True">
                    <Node name="Logic" expanded="True">
                      <Node name="HdlGatewayReceiveLogic.cs" selected="True" />
                    </Node>
                    <Node name="Common" expanded="True" />
                    <Node name="Logic" expanded="True" />
                  </Node>
                </Node>
              </Node>
@@ -49,17 +47,17 @@
    </Pads>
  </MonoDevelop.Ide.Workbench>
  <MonoDevelop.Ide.ItemProperties.Home.IOS automaticSigning="False" PreferredExecutionTarget="MonoDevelop.IPhone.IPhoneDeviceTarget.913cb77b0eef11c9119c61a02bc00fec01bf67d6" />
  <MonoDevelop.Ide.DebuggingService.PinnedWatches />
  <MonoDevelop.Ide.Workspace ActiveConfiguration="Release|iPhone" />
  <MonoDevelop.Ide.DebuggingService.PinnedWatches>
    <Watch file="../../../Home.Ios/AppDelegate.cs" line="113" offsetX="-1" offsetY="-1" expression="application.ApplicationState" liveUpdate="False" />
    <Watch file="../../../Home.Ios/AppDelegate.cs" line="113" offsetX="-1" offsetY="-1" expression="application.ApplicationState" liveUpdate="False" />
    <Watch file="../../../Home.Ios/AppDelegate.cs" line="113" offsetX="-1" offsetY="-1" expression="application.ApplicationState" liveUpdate="False" />
    <Watch file="../../../Home.Ios/AppDelegate.cs" line="113" offsetX="-1" offsetY="-1" expression="application.ApplicationState" liveUpdate="False" />
    <Watch file="../../../Home.Ios/AppDelegate.cs" line="104" offsetX="-1" offsetY="-1" expression="application.ApplicationState" liveUpdate="False" />
    <Watch file="../../../Home.Ios/AppDelegate.cs" line="113" offsetX="-1" offsetY="-1" expression="application.ApplicationState" liveUpdate="False" />
  </MonoDevelop.Ide.DebuggingService.PinnedWatches>
  <MonoDevelop.Ide.Workspace ActiveConfiguration="Debug|iPhone" />
  <MonoDevelop.Ide.DebuggingService.Breakpoints>
    <BreakpointStore>
      <Breakpoint file="/Users/hdl/Desktop/wjc/HomeApp/ZigbeeApp/Shared/Phone/Device/Logic/Send.cs" relfile="Shared/Phone/Device/Logic/Send.cs" line="1265" column="1" />
      <Breakpoint file="/Users/hdl/Desktop/wjc/HomeApp/ZigbeeApp/Home.Ios/AppDelegate.cs" relfile="Home.Ios/AppDelegate.cs" line="91" column="1" />
      <Breakpoint file="/Users/hdl/Desktop/wjc/HomeApp/ZigbeeApp/Home.Ios/AppDelegate.cs" relfile="Home.Ios/AppDelegate.cs" line="27" column="1" />
      <Breakpoint file="/Users/hdl/Desktop/wjc/HomeApp/ZigbeeApp/Home.Ios/AppDelegate.cs" relfile="Home.Ios/AppDelegate.cs" line="98" column="1" />
      <Breakpoint file="/Users/hdl/Desktop/wjc/HomeApp/ZigbeeApp/Home.Ios/AppDelegate.cs" relfile="Home.Ios/AppDelegate.cs" line="37" column="1" />
      <Breakpoint file="/Users/hdl/Desktop/wjc/HomeApp/ZigbeeApp/Home.Ios/AppDelegate.cs" relfile="Home.Ios/AppDelegate.cs" line="89" column="1" />
    </BreakpointStore>
    <BreakpointStore />
  </MonoDevelop.Ide.DebuggingService.Breakpoints>
  <MultiItemStartupConfigurations />
</Properties>
ZigbeeApp/.vs/GateWay/xs/sqlite3/storage.ide
Binary files differ
ZigbeeApp/GateWay.Droid/Assets/Language.ini
@@ -617,6 +617,10 @@
5411=暗{\r\n} 0lux
5412=亮{\r\n} 100lux
5413=在室内条件下,黑暗照度值约为0.02lux,黄昏照度值{\r\n}约为10lux,阴天照度值约为5~50lux,请根据实际{\r\n}需要进行调节
5414=可视对讲
5415=栋
5416=单元
5417=室外机
ZigbeeApp/Home.Ios/AppDelegate.cs
@@ -23,6 +23,7 @@
        internal static UINavigationController rootViewController;
        public override bool FinishedLaunching(UIApplication application, NSDictionary launchOptions)
        {
            Shared.Application.IsGpsEnable = false;
@@ -36,7 +37,7 @@
            Window.MakeKeyAndVisible();
            Shared.IOS.TBL.WXApi.RegisterApp("wx2ec8f53f6fa36e82", "https://hdlcontrol.com/ZigbeeApp/");
            Console.WriteLine("FinishedLaunching");
            DeviceTokenAction += (deviceToken) =>
            {
                Shared.Common.Config.Instance.RegistrationID = deviceToken;
@@ -53,26 +54,42 @@
                        NSString key_hiddenJson = new NSString("HiddenJson");
                        if (userInfo.ContainsKey(key_hiddenJson))
                        {
                            NSDictionary hiddenJsonDic = userInfo["HiddenJson"] as NSDictionary;
                            if (hiddenJsonDic != null)
                            var hiddenJson = userInfo["HiddenJson"].ToString();
                            if (!string.IsNullOrEmpty(hiddenJson))
                            {
                                NSString key_Offline = new NSString("Offline");
                                if (hiddenJsonDic.ContainsKey(key_Offline))
                                if (hiddenJson.Contains("cmtID"))
                                {
                                    string signOut = hiddenJsonDic["Offline"].ToString();
                                        ///目前根据这个判断是否是可视对讲数据
                                       // VideoMethod(hiddenJson);
                                }
                                else
                                {
                                    if (signOut == "0")
                                    NSDictionary hiddenJsonDic = userInfo["HiddenJson"] as NSDictionary;
                                    if (hiddenJsonDic != null)
                                    {
                                        //不下线
                                    }
                                    else
                                    {
                                        //标记下线
                                        haveToSignOut = true;
                                        NSString key_Offline = new NSString("Offline");
                                        if (hiddenJsonDic.ContainsKey(key_Offline))
                                        {
                                            string signOut = hiddenJsonDic["Offline"].ToString();
                                            if (signOut == "0")
                                            {
                                                //不下线
                                            }
                                            else
                                            {
                                                //标记下线
                                                haveToSignOut = true;
                                            }
                                        }
                                    }
                                }
                            }
                        }
                    }
@@ -89,6 +106,7 @@
        }
        public override void DidReceiveRemoteNotification(UIApplication application, NSDictionary userInfo, Action<UIBackgroundFetchResult> completionHandler)
        {
            Console.WriteLine("DidReceiveRemoteNotification");
            if (userInfo == null)
            {
                return;
@@ -100,25 +118,41 @@
                NSString key_hiddenJson = new NSString("HiddenJson");
                if (userInfo.ContainsKey(key_hiddenJson))
                {
                    NSDictionary hiddenJsonDic = userInfo["HiddenJson"] as NSDictionary;
                    if (hiddenJsonDic == null)
                    var hiddenJson = userInfo["HiddenJson"].ToString();
                    if (string.IsNullOrEmpty(hiddenJson))
                    {
                        return;
                    }
                    NSString key_Offline = new NSString("Offline");
                    if (hiddenJsonDic.ContainsKey(key_Offline))
                    {
                        string signOut = hiddenJsonDic["Offline"].ToString();
                        if (signOut == "0")
                    if (hiddenJson.Contains("cmtID"))
                    {
                        ///目前根据这个判断是否是可视对讲数据
                        VideoMethod(hiddenJson);
                    }
                    else
                    {
                        NSDictionary hiddenJsonDic = userInfo["HiddenJson"] as NSDictionary;
                        if (hiddenJsonDic == null)
                        {
                            //不下线
                            return;
                        }
                        else
                        NSString key_Offline = new NSString("Offline");
                        if (hiddenJsonDic.ContainsKey(key_Offline))
                        {
                            //强制下线
                            CommonPage.Instance.SingOut();
                            CommonPage.Instance.ShowErrorInfoAlert(Shared.R.MyInternationalizationString.uHadBeenLoginAndOffLine);
                            string signOut = hiddenJsonDic["Offline"].ToString();
                            if (signOut == "0")
                            {
                                //不下线
                            }
                            else
                            {
                                //强制下线
                                CommonPage.Instance.SingOut();
                                CommonPage.Instance.ShowErrorInfoAlert(Shared.R.MyInternationalizationString.uHadBeenLoginAndOffLine);
                            }
                        }
                    }
                }
@@ -128,24 +162,39 @@
                NSString key_hiddenJson = new NSString("HiddenJson");
                if (userInfo.ContainsKey(key_hiddenJson))
                {
                    NSDictionary hiddenJsonDic = userInfo["HiddenJson"] as NSDictionary;
                    if (hiddenJsonDic == null)
                    {
                    var hiddenJson = userInfo["HiddenJson"].ToString();
                    if (string.IsNullOrEmpty(hiddenJson)) {
                        return;
                    }
                    NSString key_Offline = new NSString("Offline");
                    if (hiddenJsonDic.ContainsKey(key_Offline))
                    {
                        string signOut = hiddenJsonDic["Offline"].ToString();
                        if (signOut == "0")
                    if (hiddenJson.Contains("cmtID"))
                    {
                        ///目前根据这个判断是否是可视对讲数据
                        VideoMethod(hiddenJson);
                    }
                    else
                    {
                        NSDictionary hiddenJsonDic = userInfo["HiddenJson"] as NSDictionary;
                        if (hiddenJsonDic == null)
                        {
                            //不下线
                            return;
                        }
                        else
                        NSString key_Offline = new NSString("Offline");
                        if (hiddenJsonDic.ContainsKey(key_Offline))
                        {
                            //标记下线
                            haveToSignOut = true;
                            string signOut = hiddenJsonDic["Offline"].ToString();
                            if (signOut == "0")
                            {
                                //不下线
                            }
                            else
                            {
                                //标记下线
                                haveToSignOut = true;
                            }
                        }
                    }
                }
@@ -153,6 +202,44 @@
            }
            completionHandler(UIBackgroundFetchResult.NewData);
        }
        /// <summary>
        /// ios通知栏点击打开可视对讲的方法
        /// </summary>
        /// <param name="hiddenJson">云端推过来的数据</param>
        private  void VideoMethod(string hiddenJson)
        {
            var json = Newtonsoft.Json.Linq.JObject.Parse(hiddenJson);
            if (json == null)
            {
                return;
            }
            GateWay.Ios.ESVideoInfo eSVideoInfo = new GateWay.Ios.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);
            }
            GateWay.Ios.ESVideo.ShowESvideoVideoIntercom(eSVideoInfo);
            //var url = "https://global.hdlcontrol.com/HangZhouHdlCloudApi/VideoIntercom/Answer";
            //var dd=await Shared.Phone.Device.Logic.Send.HttpWebRequest(url, json.ToString(), "POST", 3, true);
        }
        public override void ReceivedRemoteNotification(UIApplication application, NSDictionary userInfo)
        {
ZigbeeApp/Home.Ios/Resources/Language.ini
@@ -617,8 +617,10 @@
5411=暗{\r\n} 0lux
5412=亮{\r\n} 100lux
5413=在室内条件下,黑暗照度值约为0.02lux,黄昏照度值{\r\n}约为10lux,阴天照度值约为5~50lux,请根据实际{\r\n}需要进行调节
5414=可视对讲
5415=栋
5416=单元
5417=室外机
ZigbeeApp/Shared/Phone/Device/Logic/Send.cs
old mode 100755 new mode 100644
@@ -1236,12 +1236,16 @@
        /// <param name="method">请求方式为POST/GET</param>
        /// <param name="second">超时时间</param>
        /// <returns></returns>
        public static async System.Threading.Tasks.Task<string> HttpWebRequest(string getUrl, string str, string method, int second = 3)
        public static async System.Threading.Tasks.Task<string> HttpWebRequest(string getUrl, string str, string method, int second = 3, bool _bool = false)
        {
            HttpWebRequest request = WebRequest.Create(getUrl) as HttpWebRequest; //创建请求
            request.Method = method; //请求方式为POST/GET
            request.ContentType = "application/json";
            request.ContentType = "application/json";
            request.Timeout = second * 1000;//超时时间
            if (_bool) {
                //用于高胜可视对讲接口
                request.Headers.Add("Authorization", Config.Instance.Token);
            }
            if (method == "POST")
            {
                byte[] jsonbyte = System.Text.Encoding.UTF8.GetBytes(str);
@@ -1360,6 +1364,6 @@
            deviceConditionsInfo.Add(Key, Value);
        }
    }
}
ZigbeeApp/Shared/Phone/Device/VideoIntercom/VideoMachine.cs
@@ -4,8 +4,6 @@
using System.Collections.Generic;
using Shared.Phone.Device.Logic;
namespace Shared.Phone.Device.VideoIntercom
{
    public class VideoMachine : FrameLayout
@@ -13,15 +11,11 @@
        public VideoMachine()
        {
        }
        public async void Show()
        public void Show(List<VideoCalss> videoInfosLists)
        {
            var videoInfosLists = await GetVideoInfoList();
            TopView view = new TopView();
            this.AddChidren(view.TopRowView());
            //view.toptitleNameBtn.TextID = R.MyInternationalizationString.selection;
            view.toptitleNameBtn.Text = "可视对讲";
            view.toptitleNameBtn.TextID = R.MyInternationalizationString.videoIntercom;
            view.clickBtn.MouseDownEventHandler += (sender, e) => { RemoveFromParent(); };
            var middle = new VerticalRefreshLayout
@@ -65,7 +59,7 @@
                var name1Btn = new Button
                {
                    Text = "2,2,0801",
                    Text = videoInfos.RoomName,
                    TextAlignment = TextAlignment.CenterLeft,
                    TextColor = ZigbeeColor.Current.LogicBtnCancelColor,
                    TextSize = 12,
@@ -118,13 +112,66 @@
            }
        }
        public async static void Video(FrameLayout topFrameLayout)
        {
            var jobject = new JObject();
            jobject.Add("RequestVersion", CommonPage.RequestVersion);
            jobject.Add("RequestSource", "0");
            jobject.Add("HomeID", Config.Instance.HomeId);
            var url = "https://developer.hdlcontrol.com/ProposedProductionApi/VideoIntercom/CheckBindRecord";
            var str = await Send.HttpWebRequest(url, jobject.ToString(), "POST", 3, true);
            if (!string.IsNullOrEmpty(str))
            {
                try
                {
                    var json = JObject.Parse(str);
                    if (json != null)
                    {
                        var stateCode = json["StateCode"].ToString();
                        //可视对讲快捷方式
                        var videoIntercomBtn = new Button();
                        videoIntercomBtn.Gravity = Gravity.CenterVertical;
                        videoIntercomBtn.UnSelectedImagePath = "Item/videoIntercom.png";
                        videoIntercomBtn.Width = Application.GetMinRealAverage(69);
                        videoIntercomBtn.Height = Application.GetMinRealAverage(69);
                        List<VideoCalss> videoList= new List<VideoCalss>();
                        if (stateCode == "Success")
                        {//判断这个账号是否绑定;
                            topFrameLayout.AddChidren(videoIntercomBtn);
                            CloudsVideo cloudsVideo = Newtonsoft.Json.JsonConvert.DeserializeObject<CloudsVideo>(json["ResponseData"].ToString());
                            videoList = await GetVideoInfoList(cloudsVideo);
                        }
                        if (UserCenter.UserCenterResourse.ResidenceOption.SafetyShortcut)
                        {
                            videoIntercomBtn.X = Application.GetRealWidth(746 + 10);
                        }
                        else
                        {
                            videoIntercomBtn.X = Application.GetRealWidth(850 + 10);
                        }
                        videoIntercomBtn.MouseUpEventHandler += (sender, e) =>
                        {
        async System.Threading.Tasks.Task<List<VideoCalss>> GetVideoInfoList()
                            var videoMachine = new Device.VideoIntercom.VideoMachine();
                            UserView.HomePage.Instance.AddChidren(videoMachine);
                            UserView.HomePage.Instance.PageIndex += 1;
                            videoMachine.Show(videoList);
                        };
                    }
                }
                catch { }
            }
        }
        static async System.Threading.Tasks.Task<List<VideoCalss>> GetVideoInfoList(CloudsVideo clouds)
        {
            List<VideoCalss> eSVideoInfosList = new List<VideoCalss>();
            var jobject = new JObject();
            jobject.Add("cmtID", "10006");
            jobject.Add("unitno", "0801");
            jobject.Add("cmtID", clouds.FLCommunityID);
            jobject.Add("unitno", clouds.FLBuildingID);
            jobject.Add("method", "getUUIDList");
            var url = " http://112.74.164.111:180/api.php/Device/getmonitorUUID";
            var str = await Send.HttpWebRequest(url, jobject.ToString(), "POST");
@@ -149,6 +196,10 @@
            foreach (var videoInfo in list)
            {
                VideoCalss eSVideoInfo = new VideoCalss();
                eSVideoInfo.ESRoomID = int.Parse(clouds.FLRoomID);
                string str1 = clouds.FLBuildingID.Substring(0, 2).TrimStart('0');
                string str2 = clouds.FLBuildingID.Substring(2, 2).TrimStart('0');
                eSVideoInfo.RoomName = str1 +Language.StringByID( R.MyInternationalizationString.dong) + str2 + Language.StringByID(R.MyInternationalizationString.unit);
                eSVideoInfo.DeviceName = videoInfo["aliasName"];
                if (videoInfo["uuid"].Contains(","))
                {
@@ -163,10 +214,8 @@
            }
            return eSVideoInfosList;
        }
    }
    class VideoCalss
    public class VideoCalss
    {
        /// <summary>
        /// 室外机的UUID
@@ -190,4 +239,30 @@
        public string RoomName = string.Empty;
    }
    public class CloudsVideo
    {
        /// <summary>
        /// 栋楼单元号
        /// </summary>
        public string FLBuildingID = string.Empty;
        /// <summary>
        /// 那栋楼的名称
        /// </summary>
        public string FLBuildingName = string.Empty;
        /// <summary>
        /// 小区ID
        /// </summary>
        public string FLCommunityID = string.Empty;
        /// <summary>
        /// 房间ID
        /// </summary>
        public string FLRoomID = string.Empty;
        /// <summary>
        /// 住宅ID
        /// </summary>
        public string HomeID = string.Empty;
        public string FLSecretKey = string.Empty;
    }
}
ZigbeeApp/Shared/Phone/MainPage/HomeMainPageForm.cs
@@ -89,7 +89,10 @@
        /// 初始化头部控件
        /// </summary>
        private void InitTopFrameLayoutControl()
        {
        {
            //头部容器
            base.topFrameLayout = new FrameLayout();
            topFrameLayout.Y = Application.GetRealHeight(60);
@@ -132,29 +135,29 @@
            }
            //可视对讲快捷方式
            var videoIntercomBtn = new Button();
            videoIntercomBtn.Gravity = Gravity.CenterVertical;
            videoIntercomBtn.UnSelectedImagePath = "Item/videoIntercom.png";
            videoIntercomBtn.Width = Application.GetMinRealAverage(69);
            videoIntercomBtn.Height = Application.GetMinRealAverage(69);
            topFrameLayout.AddChidren(videoIntercomBtn);
            if (UserCenterResourse.ResidenceOption.SafetyShortcut)
            {
                videoIntercomBtn.X = Application.GetRealWidth(746+10);
            }
            else
            {
                videoIntercomBtn.X = Application.GetRealWidth(850+10);
            }
            videoIntercomBtn.MouseUpEventHandler += (sender, e) =>
            {
            Shared.Phone.Device.VideoIntercom.VideoMachine.Video(topFrameLayout);
                var videoMachine = new Device.VideoIntercom.VideoMachine();
                UserView.HomePage.Instance.AddChidren(videoMachine);
                UserView.HomePage.Instance.PageIndex += 1;
                videoMachine.Show();
            };
            //var videoIntercomBtn = new Button();
            //videoIntercomBtn.Gravity = Gravity.CenterVertical;
            //videoIntercomBtn.UnSelectedImagePath = "Item/videoIntercom.png";
            //videoIntercomBtn.Width = Application.GetMinRealAverage(69);
            //videoIntercomBtn.Height = Application.GetMinRealAverage(69);
            //topFrameLayout.AddChidren(videoIntercomBtn);
            //if (UserCenterResourse.ResidenceOption.SafetyShortcut)
            //{
            //    videoIntercomBtn.X = Application.GetRealWidth(746+10);
            //}
            //else
            //{
            //    videoIntercomBtn.X = Application.GetRealWidth(850+10);
            //}
            //videoIntercomBtn.MouseUpEventHandler += (sender, e) =>
            //{
            //    var videoMachine = new Device.VideoIntercom.VideoMachine();
            //    UserView.HomePage.Instance.AddChidren(videoMachine);
            //    UserView.HomePage.Instance.PageIndex += 1;
            //    videoMachine.Show();
            //};
           
ZigbeeApp/Shared/R.cs
@@ -910,6 +910,11 @@
        public readonly static int dark = 5411;
        public readonly static int bright = 5412;
        public readonly static int tipIlluminanceValue = 5413;
        public readonly static int videoIntercom = 5414;
        public readonly static int dong = 5415;
        public readonly static int unit = 5416;
        public readonly static int theOutdoorUnit = 5417;
        /// <summary>