wei
2021-11-15 d020a48f69f1acd8d97fc15372e19cde7779d934
绑定source面板
3个文件已添加
19个文件已修改
470 ■■■■ 已修改文件
.vs/HDL_APP_Project/xs/UserPrefs.xml 27 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
HDL-ON_Android/Properties/AndroidManifest.xml 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
HDL-ON_iOS/AppDelegate.cs 30 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
HDL-ON_iOS/Entitlements.plist 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
HDL-ON_iOS/HDL-ON_iOS.csproj 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
HDL-ON_iOS/Info.plist 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
HDL_APP_Project.sln 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
HDL_ON/DAL/Server/HttpServerRequest.cs 26 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
HDL_ON/DAL/Server/HttpUtil.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
HDL_ON/DAL/Server/NewAPI.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
HDL_ON/UI/MainPage.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
HDL_ON/UI/UI0-Public/PublicAssmebly.cs 25 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
HDL_ON/UI/UI2/4-PersonalCenter/PersonalDataPage.cs 68 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
HDL_ON/UI/UI2/FuntionControlView/Curtain/RollingShutterPage.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
HDL_ON/UI/UI2/FuntionControlView/Curtain/RollingShutterPageBLL.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
HDL_ON/UI/UI2/FuntionControlView/Light/DimmerPage.cs 134 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
HDL_ON/UI/UI2/FuntionControlView/Light/DimmerPageBLL.cs 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
HDL_ON/UI/UI2/FuntionControlView/Light/RGBPage.cs 8 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
HDL_ON/UI/UI2/FuntionControlView/Light/RGBPageBLL.cs 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
SiriLibrary/Class1.cs 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
SiriLibrary/Properties/AssemblyInfo.cs 36 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
SiriLibrary/SiriLibrary.csproj 47 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
.vs/HDL_APP_Project/xs/UserPrefs.xml
@@ -1,47 +1,58 @@
<Properties StartupConfiguration="{09712674-2A38-407B-B1E2-560B2C352F9A}|Default">
  <MonoDevelop.Ide.ItemProperties.HDL-ON__iOS PreferredExecutionTarget="MonoDevelop.IPhone.IPhoneDeviceTarget" />
  <MonoDevelop.Ide.ItemProperties.HDL-ON__iOS PreferredExecutionTarget="MonoDevelop.IPhone.IPhoneSimulatorTarget.97AA2632-71E3-46DB-B866-5ABE55A009E7" />
  <MonoDevelop.Ide.Workbench ActiveDocument="HDL_ON/DAL/Mqtt/MqttClient.cs">
    <Files>
      <File FileName="HDL_ON/DAL/Server/HttpUtil.cs" Line="8" Column="17" />
      <File FileName="HDL_ON/UI/UI2/FuntionControlView/Curtain/RollingShutterPageBLL.cs" />
      <File FileName="HDL_ON/UI/UI2/FuntionControlView/Curtain/RollingShutterPage.cs" />
      <File FileName="HDL_ON/UI/UI2/FuntionControlView/1ContorlPage/AcControlPage.cs" Line="969" Column="46" />
      <File FileName="HDL_ON/UI/UI1-Login/LoginPage.cs" Line="235" Column="57" />
      <File FileName="HDL_ON/DAL/Mqtt/MqttClient.cs" Line="313" Column="69" />
      <File FileName="HDL_ON/DAL/Server/HttpServerRequest.cs" Line="2722" Column="62" />
      <File FileName="HDL_ON/UI/UI2/4-PersonalCenter/MemberManagement/AddMemberScanPage.cs" Line="94" Column="15" />
      <File FileName="HDL_ON/UI/UI2/4-PersonalCenter/AddDevice/SenesorMegahealth/AddSenesorMegahealthDirection1Page.cs" Line="90" Column="14" />
      <File FileName="HDL_ON/UI/UI2/4-PersonalCenter/PersonalCenterPage.cs" Line="119" Column="16" />
      <File FileName="HDL_ON/UI/UI2/4-PersonalCenter/PersonalDataPage.cs" Line="597" Column="21" />
      <File FileName="HDL_ON/DAL/Mqtt/MqttClient.cs" Line="1" Column="1" />
    </Files>
    <Pads>
      <Pad Id="ProjectPad">
        <State name="__root__">
          <Node name="HDL_APP_Project" expanded="True">
            <Node name="HDL_ON" expanded="True">
              <Node name="Common" expanded="True" />
              <Node name="DAL" expanded="True">
                <Node name="Mqtt" expanded="True">
                  <Node name="MqttClient.cs" selected="True" />
                </Node>
                <Node name="Server" expanded="True" />
              </Node>
              <Node name="Entity" expanded="True" />
              <Node name="UI" expanded="True">
                <Node name="UI0-Public" expanded="True" />
                <Node name="UI1-Login" expanded="True" />
                <Node name="UI2" expanded="True">
                  <Node name="2-Classification" expanded="True" />
                  <Node name="4-PersonalCenter" expanded="True" />
                </Node>
              </Node>
            </Node>
            <Node name="HDL-ON_iOS" expanded="True" />
            <Node name="SiriLibrary" expanded="True" />
          </Node>
        </State>
      </Pad>
    </Pads>
  </MonoDevelop.Ide.Workbench>
  <MonoDevelop.Ide.ItemProperties.SiriLibrary FirstBuild="True" />
  <MonoDevelop.Ide.DebuggingService.PinnedWatches />
  <DisabledProjects>
    <String>Shared.IOS.TBL/Shared.IOS.TBL.csproj</String>
    <String>Shared.Droid.TouchID/Shared.Droid.TouchID.csproj</String>
    <String>Shared.IOS/Shared.IOS.csproj</String>
  </DisabledProjects>
  <MonoDevelop.Ide.Workspace ActiveConfiguration="Debug" />
  <MonoDevelop.Ide.Workspace ActiveConfiguration="Debug|iPhone" />
  <MonoDevelop.Ide.ItemProperties.HDL-ON__Android PreferredExecutionTarget="Android.364c4b3158493098" />
  <MonoDevelop.Ide.DebuggingService.Breakpoints>
    <BreakpointStore>
      <Breakpoint file="/Users/kaede/Desktop/HDL_APP_Project/HDL_ON/DAL/Server/HttpServerRequest.cs" relfile="HDL_ON/DAL/Server/HttpServerRequest.cs" line="1415" column="1" />
      <Breakpoint file="/Users/kaede/Desktop/HDL_APP_Project/HDL_ON/Entity/Function/Scene.cs" relfile="HDL_ON/Entity/Function/Scene.cs" line="333" column="1" />
      <Breakpoint file="/Users/kaede/Desktop/HDL_APP_Project/HDL_ON/UI/UI2/FuntionControlView/Curtain/RollingShutterPageBLL.cs" relfile="HDL_ON/UI/UI2/FuntionControlView/Curtain/RollingShutterPageBLL.cs" line="251" column="1" />
      <Breakpoint file="/Users/kaede/Desktop/HDL_APP_Project/HDL_ON/UI/UI2/FuntionControlView/Curtain/RollingShutterPageBLL.cs" relfile="HDL_ON/UI/UI2/FuntionControlView/Curtain/RollingShutterPageBLL.cs" line="185" column="1" />
    </BreakpointStore>
  </MonoDevelop.Ide.DebuggingService.Breakpoints>
  <MultiItemStartupConfigurations />
HDL-ON_Android/Properties/AndroidManifest.xml
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android" android:versionCode="202111041" android:versionName="1.3.202111041" package="com.hdl.onpro">
<manifest xmlns:android="http://schemas.android.com/apk/res/android" android:versionCode="202111051" android:versionName="1.3.202111051" package="com.hdl.onpro">
    <uses-sdk android:minSdkVersion="23" android:targetSdkVersion="28" />
    <!-- 乐橙可视对讲需要的权限 -->
    <!--<uses-permission android:name="android.permission.INTERNET" />-->
HDL-ON_iOS/AppDelegate.cs
@@ -9,6 +9,7 @@
using Microsoft.AppCenter.Crashes;
using HDL_ON.UI;
using HDL_ON.DAL.Server;
using Intents;
namespace SharedMethod
{
@@ -275,7 +276,34 @@
            //{
            //    //RemoteInfo.Current.ReadMsgList(true);
            //}
            #region Siri
            // Request access to Siri
            INPreferences.RequestSiriAuthorization((INSiriAuthorizationStatus status) => {
                // Respond to returned status
                switch (status)
                {
                    case INSiriAuthorizationStatus.Authorized:
                        break;
                    case INSiriAuthorizationStatus.Denied:
                        break;
                    case INSiriAuthorizationStatus.NotDetermined:
                        break;
                    case INSiriAuthorizationStatus.Restricted:
                        break;
                }
            });
            var language = INPreferences.SiriLanguageCode;
            // Take action based on language
            if (language == "en-US")
            {
                // Do something...
            }
            #endregion
            Console.WriteLine("FinishedLaunching");
            return true;
        }
HDL-ON_iOS/Entitlements.plist
@@ -8,5 +8,7 @@
    <array>
        <string>applinks:china-gateway.hdlcontrol.com</string>
    </array>
    <key>com.apple.developer.siri</key>
    <true/>
</dict>
</plist>
HDL-ON_iOS/HDL-ON_iOS.csproj
@@ -69,7 +69,7 @@
        <MtouchLink>SdkOnly</MtouchLink>
        <MtouchExtraArgs>-gcc_flags="-dead_strip -ObjC"</MtouchExtraArgs>
        <MtouchI18n>cjk</MtouchI18n>
        <CodesignProvision>ComHdlOnProAdHoc20210616-1</CodesignProvision>
        <CodesignProvision>ComHdlOnProAdHoc20211109-1</CodesignProvision>
    </PropertyGroup>
    <ItemGroup>
        <Reference Include="System" />
@@ -1401,6 +1401,10 @@
        <Project>{2DDF4C3C-6998-432E-9F43-6786D82F0630}</Project>
        <Name>Blufi</Name>
      </ProjectReference>
      <ProjectReference Include="..\SiriLibrary\SiriLibrary.csproj">
        <Project>{C23E5F00-6F1B-4FEB-80F6-04D9C756A23B}</Project>
        <Name>SiriLibrary</Name>
      </ProjectReference>
    </ItemGroup>
    <Import Project="..\HDL_ON\HDL_ON.projitems" Label="Shared" Condition="Exists('..\HDL_ON\HDL_ON.projitems')" />
    <Import Project="$(MSBuildExtensionsPath)\Xamarin\iOS\Xamarin.iOS.CSharp.targets" />
HDL-ON_iOS/Info.plist
@@ -100,9 +100,9 @@
    <key>UIStatusBarStyle</key>
    <string>UIStatusBarStyleLightContent</string>
    <key>CFBundleShortVersionString</key>
    <string>1.2.202110281</string>
    <string>1.3.202111051</string>
    <key>CFBundleVersion</key>
    <string>1.2.10281</string>
    <string>1.3.11051</string>
    <key>NSLocationWhenInUseUsageDescription</key>
    <string>Use geographic location to provide services such as weather</string>
    <key>NSAppleMusicUsageDescription</key>
@@ -133,5 +133,7 @@
    <string>This application uses Bluetooth to communicate with the device, this application does not collect, store or record any data that communicates via Bluetooth.</string>
    <key>NSVoIPUsageDescription</key>
    <string>Make audio/video calls</string>
    <key>NSSiriUsageDescription</key>
    <string>On+ data will be send to Siri.</string>
</dict>
</plist>
HDL_APP_Project.sln
@@ -10,6 +10,8 @@
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Blufi", "HdlBluWi\Blufi.csproj", "{2DDF4C3C-6998-432E-9F43-6786D82F0630}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "SiriLibrary", "SiriLibrary\SiriLibrary.csproj", "{C23E5F00-6F1B-4FEB-80F6-04D9C756A23B}"
EndProject
Global
    GlobalSection(SharedMSBuildProjectFiles) = preSolution
        HDL_ON\HDL_ON.projitems*{09712674-2a38-407b-b1e2-560b2c352f9a}*SharedItemsImports = 4
@@ -63,6 +65,18 @@
        {2DDF4C3C-6998-432E-9F43-6786D82F0630}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
        {2DDF4C3C-6998-432E-9F43-6786D82F0630}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
        {2DDF4C3C-6998-432E-9F43-6786D82F0630}.Debug|Any CPU.Build.0 = Debug|Any CPU
        {C23E5F00-6F1B-4FEB-80F6-04D9C756A23B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
        {C23E5F00-6F1B-4FEB-80F6-04D9C756A23B}.Debug|Any CPU.Build.0 = Debug|Any CPU
        {C23E5F00-6F1B-4FEB-80F6-04D9C756A23B}.Debug|iPhone.ActiveCfg = Debug|Any CPU
        {C23E5F00-6F1B-4FEB-80F6-04D9C756A23B}.Debug|iPhone.Build.0 = Debug|Any CPU
        {C23E5F00-6F1B-4FEB-80F6-04D9C756A23B}.Debug|iPhoneSimulator.ActiveCfg = Debug|Any CPU
        {C23E5F00-6F1B-4FEB-80F6-04D9C756A23B}.Debug|iPhoneSimulator.Build.0 = Debug|Any CPU
        {C23E5F00-6F1B-4FEB-80F6-04D9C756A23B}.Release|Any CPU.ActiveCfg = Release|Any CPU
        {C23E5F00-6F1B-4FEB-80F6-04D9C756A23B}.Release|Any CPU.Build.0 = Release|Any CPU
        {C23E5F00-6F1B-4FEB-80F6-04D9C756A23B}.Release|iPhone.ActiveCfg = Release|Any CPU
        {C23E5F00-6F1B-4FEB-80F6-04D9C756A23B}.Release|iPhone.Build.0 = Release|Any CPU
        {C23E5F00-6F1B-4FEB-80F6-04D9C756A23B}.Release|iPhoneSimulator.ActiveCfg = Release|Any CPU
        {C23E5F00-6F1B-4FEB-80F6-04D9C756A23B}.Release|iPhoneSimulator.Build.0 = Release|Any CPU
    EndGlobalSection
    GlobalSection(SolutionProperties) = preSolution
        HideSolutionNode = FALSE
HDL_ON/DAL/Server/HttpServerRequest.cs
@@ -2556,10 +2556,10 @@
            var requestJson = HttpUtil.GetSignRequestJson(d);
            return HttpUtil.RequestHttpsPostFroHome(NewAPI.API_POST_EZ_GetChildToken, requestJson);
        }
#endregion
        #endregion
#region ■ 可视对讲_________________________
        #region ■ 可视对讲_________________________
        /// <summary>
        /// 检查住宅是否绑定丰林
        /// </summary>
@@ -2572,9 +2572,9 @@
            var pack = HttpUtil.RequestHttpsPostFroHome( NewAPI.API_POST_FL_Check, requestJson);
            return pack;
        }
#endregion
        #endregion
#region ■ 门锁相关____________________________
        #region ■ 门锁相关____________________________
        /// <summary>
        /// 获取门锁历史记录(按日期降序)
@@ -2643,8 +2643,8 @@
            return listSortLog;
        }
#endregion
#region ■ 音箱语言控制相关_________________________
        #endregion
        #region ■ 音箱语言控制相关_________________________
        /// <summary>
        /// 获取已授权的音箱列表
        /// </summary>
@@ -2708,8 +2708,20 @@
            var requestJson = HttpUtil.GetSignRequestJson(updateSpeakerDeviceListObj);
            return HttpUtil.RequestHttpsPostFroHome(NewAPI.API_POST_Speaker_DeviceList_Update, requestJson);
        }
#endregion
        #endregion
        /// <summary>
        /// 绑定source面板
        /// </summary>
        /// <returns></returns>
        public ResponsePackNew BindSourcePanel(string qrString)
        {
            Dictionary<string, object> d = new Dictionary<string, object>();
            d.Add("homeId", DB_ResidenceData.Instance.CurrentRegion.id);
            d.Add("content", qrString);
            var requestJson = HttpUtil.GetSignRequestJson(d);
            return HttpUtil.RequestHttpsPostFroHome(NewAPI.Api_Post_BindSourcePanel, requestJson);
        }
        /// <summary>
        /// 人脸录入
HDL_ON/DAL/Server/HttpUtil.cs
@@ -17,8 +17,8 @@
        /// 固定域名,正式环境
        /// 公共域名就近解析
        /// </summary>
        public const string GlobalRequestHttpsHost = "https://nearest.hdlcontrol.com";
        //public const string GlobalRequestHttpsHost = "https://test-gz.hdlcontrol.com";//mmmm
        //public const string GlobalRequestHttpsHost = "https://nearest.hdlcontrol.com";
        public const string GlobalRequestHttpsHost = "https://test-gz.hdlcontrol.com";//mmmm
        /// <summary>
        /// RegionMark
        /// </summary>
HDL_ON/DAL/Server/NewAPI.cs
@@ -730,6 +730,10 @@
        #region  ■  -- SIP相关接口_______________________________
        #endregion
        /// <summary>
        /// 绑定source面板
        /// </summary>
        public const string Api_Post_BindSourcePanel = "/home-wisdom/source/screen/home/bind";
    }
HDL_ON/UI/MainPage.cs
@@ -25,7 +25,7 @@
        /// <summary>
        /// 版本号
        /// </summary>
        public static string VersionString = "1.3.1104";
        public static string VersionString = "1.3.1105";
        ///// <summary>
        ///// 客户端类型
        ///// </summary>
HDL_ON/UI/UI0-Public/PublicAssmebly.cs
@@ -412,14 +412,15 @@
            })
            { IsBackground = true }.Start();
        }
        /// <summary>
        /// 加载提示弹窗
        /// </summary>
        /// <param name="titleId"></param>
        /// <param name="msgId"></param>
        public void TipMsg(int titleId, int msgId,Action action = null)
        /// <param name="title"></param>
        /// <param name="msg"></param>
        /// <param name="action"></param>
        public void TipMsg(string title, string msg, Action action = null)
        {
            Dialog dialog = new Dialog()
            {
                BackgroundColor = CSS_Color.DialogTransparentColor1,
@@ -445,7 +446,7 @@
                TextSize = CSS_FontSize.SubheadingFontSize,
                TextAlignment = TextAlignment.Center,
                IsBold = true,
                TextID = titleId,
                Text = title
            };
            contentView.AddChidren(btnTitle);
@@ -458,7 +459,7 @@
                TextAlignment = TextAlignment.Center,
                TextColor = CSS_Color.TextualColor,
                TextSize = CSS_FontSize.PromptFontSize_FirstLevel,
                TextID = msgId,
                Text = msg,
                IsMoreLines = true,
            };
            contentView.AddChidren(btnMsg);
@@ -499,6 +500,18 @@
        }
        /// <summary>
        /// 加载提示弹窗
        /// </summary>
        /// <param name="titleId"></param>
        /// <param name="msgId"></param>
        public void TipMsg(int titleId, int msgId, Action action = null)
        {
            TipMsg(Language.StringByID(titleId), Language.StringByID(msgId), action);
        }
        /// <summary>
        /// 加载等待界面
        /// </summary>
HDL_ON/UI/UI2/4-PersonalCenter/PersonalDataPage.cs
@@ -1,4 +1,5 @@
    using System;
using HDL_ON.DAL.Server;
using HDL_ON.UI;
using HDL_ON.UI.CSS;
using Shared;
@@ -561,17 +562,78 @@
            {
                Scan.OpenScan((scanString) =>
                {
                    //执行绑定住宅
                    new BindingResidencePage().DoBindResidence(scanString);
                    if (scanString.StartsWith("source://bind/"))
                    {
                                var waitPage = new Loading();
                        new System.Threading.Thread(() =>
                        {
                            try
                            {
                                Application.RunOnMainThread(() =>
                                {
                                    waitPage.Start("Plaese wait...");
                                });
                                var sendString = scanString.Replace("source://bind/", "");
                                MainPage.Log($"绑定source屏:{sendString}");
                                //绑定source屏
                                var pack = new HDL_ON.DAL.Server.HttpServerRequest().BindSourcePanel(scanString);
                                Application.RunOnMainThread(() =>
                                {
                                    var title = Language.StringByID(StringId.Tip);
                                    var msg = "";
                                   if(pack.Code == StateCode.SUCCESS)
                                    {
                                        if(Language.CurrentLanguage=="Chinese")
                                        {
                                            msg = "Source屏绑定成功.";
                                        }
                                        else
                                        {
                                            msg = "Source Hub binding succeeded";
                                        }
                                        new HDL_ON.UI.PublicAssmebly().TipMsg(title, msg);
                                    }
                                    else
                                    {
                                        if (Language.CurrentLanguage == "Chinese")
                                        {
                                            msg = "Source屏绑定失败.";
                                        }
                                        else
                                        {
                                            msg = "Source Hub binding failed";
                                        }
                                        new HDL_ON.UI.PublicAssmebly().TipMsg(title, msg);
                                    }
                                });
                            }
                            catch(Exception ex)
                            { }
                            finally
                            {
                                Application.RunOnMainThread(() =>
                                {
                                    waitPage.Hide();
                                });
                            }
                        })
                        { IsBackground = true }.Start();
                    }
                    else
                    {
                        //执行绑定住宅
                        new BindingResidencePage().DoBindResidence(scanString);
                    }
                });
            };
            optionListView.AddChidren(new Button() { X = Application.GetRealWidth(16), Height = Application.GetRealHeight(1), Width = Application.GetRealWidth(343), BackgroundColor = CSS_Color.DividingLineColor });
            #endregion
            if (Entity.DB_ResidenceData.Instance.SupportFacePass)
            {
                #region 个人选项-人脸通行管理
                optionListView.AddChidren(new Button() { X = Application.GetRealWidth(16), Height = Application.GetRealHeight(1), Width = Application.GetRealWidth(343), BackgroundColor = CSS_Color.DividingLineColor });
                faceManagementView = new FrameLayout()
                {
                    Height = Application.GetRealHeight(50),
HDL_ON/UI/UI2/FuntionControlView/Curtain/RollingShutterPage.cs
@@ -157,7 +157,7 @@
                Height = Application.GetRealWidth(210),
                Progress = curtainTemp.GetPercent(function),
                //IsInvertedProgress = true,
                ProgressTextColor = 0x00000000,
                ProgressTextColor = CSS_Color.WarningColor,// 0x00000000,
            };
            controlView.AddChidren(curtainSeekBar);
HDL_ON/UI/UI2/FuntionControlView/Curtain/RollingShutterPageBLL.cs
@@ -152,7 +152,7 @@
                System.Collections.Generic.Dictionary<string, string> d = new System.Collections.Generic.Dictionary<string, string>();
                d.Add(FunctionAttributeKey.OnOff, function.trait_on_off.curValue.ToString());
                DriverLayer.Control.Ins.SendWriteCommand(function, d);
                CurtainAnimation(0);
                //CurtainAnimation(100);
            };
            btnCurtainStop.MouseUpEventHandler = (sender, e) =>
@@ -187,7 +187,7 @@
                System.Collections.Generic.Dictionary<string, string> d = new System.Collections.Generic.Dictionary<string, string>();
                d.Add(FunctionAttributeKey.OnOff, function.trait_on_off.curValue.ToString());
                DriverLayer.Control.Ins.SendWriteCommand(function, d);
                CurtainAnimation(100);
                //CurtainAnimation(0);
            };
            //btnMinusSignIcon.MouseUpEventHandler = (sender, e) =>
HDL_ON/UI/UI2/FuntionControlView/Light/DimmerPage.cs
@@ -166,74 +166,82 @@
            };
            controlView.AddChidren(btnBrightnessText);
            #region 渐变时间调节
            var btnGradualChangeText = new Button()
            if (function.GetAttribute(FunctionAttributeKey.FadeTime) != null)
            {
                X = Application.GetRealWidth(35),
                Y = Application.GetRealHeight(385),
                Width = Application.GetRealWidth(224),
                Height = Application.GetRealHeight(21),
                TextAlignment = TextAlignment.CenterLeft,
                TextColor = CSS_Color.FirstLevelTitleColor,
                TextSize = CSS_FontSize.PromptFontSize_FirstLevel,
                TextID = StringId.SpeedOfChange,
                Visible = function.GetAttribute(FunctionAttributeKey.FadeTime)!= null,
                Enable = function.GetAttribute(FunctionAttributeKey.FadeTime)!= null,
            };
            controlView.AddChidren(btnGradualChangeText);
                #region 渐变时间调节
            var btnGradualChangeMinValuesText = new Button()
            {
                X = Application.GetRealWidth(35),
                Y = btnGradualChangeText.Bottom+ Application.GetRealHeight(8),
                Width = Application.GetRealWidth(22),
                Height = Application.GetRealHeight(21),
                Text = "0s",
                TextAlignment = TextAlignment.CenterLeft,
                TextColor = CSS_Color.PromptingColor1,
                TextSize = CSS_FontSize.PromptFontSize_FirstLevel,
                Visible = function.GetAttribute(FunctionAttributeKey.FadeTime) != null,
                Enable = function.GetAttribute(FunctionAttributeKey.FadeTime) != null,
            };
            controlView.AddChidren(btnGradualChangeMinValuesText);
                var btnGradualChangeText = new Button()
                {
                    X = Application.GetRealWidth(35),
                    Y = Application.GetRealHeight(385),
                    Width = Application.GetRealWidth(224),
                    Height = Application.GetRealHeight(21),
                    TextAlignment = TextAlignment.CenterLeft,
                    TextColor = CSS_Color.FirstLevelTitleColor,
                    TextSize = CSS_FontSize.PromptFontSize_FirstLevel,
                    TextID = StringId.SpeedOfChange,
                    Visible = function.GetAttribute(FunctionAttributeKey.FadeTime) != null,
                    Enable = function.GetAttribute(FunctionAttributeKey.FadeTime) != null,
                };
                controlView.AddChidren(btnGradualChangeText);
            barFadeTime = new DiyImageSeekBar()
            {
                X = btnGradualChangeMinValuesText.Right,
                Y = Application.GetRealHeight(412 - 21) + Application.GetRealHeight(8),
                Width = Application.GetRealWidth(210),
                Height = Application.GetRealHeight(54),
                SeekBarViewHeight = Application.GetRealHeight(8),
                ThumbImagePath = "Public/ThumbImage.png",
                ThumbImageHeight = Application.GetRealHeight(54),
                ProgressBarColor = CSS_Color.MainColor,
                ProgressTextColor = CSS_Color.FirstLevelTitleColor,
                ProgressTextSize = CSS_FontSize.PromptFontSize_FirstLevel,
                ProgressBarUnitSring = "s",
                MaxValue = 10,
                Progress = Convert.ToInt32(function.GetAttrState(FunctionAttributeKey.FadeTime)),
                SeekBarPadding = Application.GetRealWidth(20),
                Visible = function.GetAttribute(FunctionAttributeKey.FadeTime) != null,
                Enable = function.GetAttribute(FunctionAttributeKey.FadeTime) != null,
            };
            controlView.AddChidren(barFadeTime);
                var btnGradualChangeMinValuesText = new Button()
                {
                    X = Application.GetRealWidth(35),
                    Y = btnGradualChangeText.Bottom + Application.GetRealHeight(8),
                    Width = Application.GetRealWidth(22),
                    Height = Application.GetRealHeight(21),
                    Text = "0s",
                    TextAlignment = TextAlignment.CenterLeft,
                    TextColor = CSS_Color.PromptingColor1,
                    TextSize = CSS_FontSize.PromptFontSize_FirstLevel,
                    Visible = function.GetAttribute(FunctionAttributeKey.FadeTime) != null,
                    Enable = function.GetAttribute(FunctionAttributeKey.FadeTime) != null,
                };
                controlView.AddChidren(btnGradualChangeMinValuesText);
            var btnGradualChangeMaxValuesText = new Button()
            {
                X = barFadeTime.Right,
                Y = btnGradualChangeText.Bottom + Application.GetRealHeight(8),
                Width = Application.GetRealWidth(35),
                Height = Application.GetRealHeight(21),
                Text = "10s",
                TextAlignment = TextAlignment.CenterLeft,
                TextColor = CSS_Color.PromptingColor1,
                TextSize = CSS_FontSize.PromptFontSize_FirstLevel,
                Visible = function.GetAttribute(FunctionAttributeKey.FadeTime) != null,
                Enable = function.GetAttribute(FunctionAttributeKey.FadeTime) != null,
            };
            controlView.AddChidren(btnGradualChangeMaxValuesText);
            #endregion
                barFadeTime = new DiyImageSeekBar()
                {
                    X = btnGradualChangeMinValuesText.Right,
                    Y = Application.GetRealHeight(412 - 21) + Application.GetRealHeight(8),
                    Width = Application.GetRealWidth(210),
                    Height = Application.GetRealHeight(54),
                    SeekBarViewHeight = Application.GetRealHeight(8),
                    ThumbImagePath = "Public/ThumbImage.png",
                    ThumbImageHeight = Application.GetRealHeight(54),
                    ProgressBarColor = CSS_Color.MainColor,
                    ProgressTextColor = CSS_Color.FirstLevelTitleColor,
                    ProgressTextSize = CSS_FontSize.PromptFontSize_FirstLevel,
                    ProgressBarUnitSring = "s",
                    MaxValue = 10,
                    Progress = Convert.ToInt32(function.GetAttrState(FunctionAttributeKey.FadeTime)),
                    SeekBarPadding = Application.GetRealWidth(20),
                    Visible = function.GetAttribute(FunctionAttributeKey.FadeTime) != null,
                    Enable = function.GetAttribute(FunctionAttributeKey.FadeTime) != null,
                };
                controlView.AddChidren(barFadeTime);
                barFadeTime.OnStopTrackingTouchEvent = (sender, e) =>
                {
                    function.SetAttrState(FunctionAttributeKey.FadeTime, e.ToString());
                    function.UpdataFuncitonInfo();
                };
                var btnGradualChangeMaxValuesText = new Button()
                {
                    X = barFadeTime.Right,
                    Y = btnGradualChangeText.Bottom + Application.GetRealHeight(8),
                    Width = Application.GetRealWidth(35),
                    Height = Application.GetRealHeight(21),
                    Text = "10s",
                    TextAlignment = TextAlignment.CenterLeft,
                    TextColor = CSS_Color.PromptingColor1,
                    TextSize = CSS_FontSize.PromptFontSize_FirstLevel,
                    Visible = function.GetAttribute(FunctionAttributeKey.FadeTime) != null,
                    Enable = function.GetAttribute(FunctionAttributeKey.FadeTime) != null,
                };
                controlView.AddChidren(btnGradualChangeMaxValuesText);
                #endregion
            }
            btnSwitch = new Button()
            {
                Gravity = Gravity.CenterHorizontal,
HDL_ON/UI/UI2/FuntionControlView/Light/DimmerPageBLL.cs
@@ -62,11 +62,7 @@
        /// </summary>
        void LoadEvet_ChangeFadeTime()
        {
            barFadeTime.OnStopTrackingTouchEvent = (sender, e) =>
            {
                function.SetAttrState(FunctionAttributeKey.FadeTime, e.ToString());
                function.UpdataFuncitonInfo();
            };
        }
        /// <summary>
HDL_ON/UI/UI2/FuntionControlView/Light/RGBPage.cs
@@ -242,6 +242,8 @@
            controlView.AddChidren(btnMaxValuesText);
            #endregion
            if (function.GetAttribute(FunctionAttributeKey.FadeTime) != null)
            {
                #region 渐变时间调节
                var btnGradualChangeText = new Button()
                {
@@ -294,6 +296,11 @@
                    Enable = function.GetAttribute(FunctionAttributeKey.FadeTime) != null,
                };
                controlView.AddChidren(barFadeTime);
                barFadeTime.OnStopTrackingTouchEvent = (sender, e) =>
                {
                    function.SetAttrState(FunctionAttributeKey.FadeTime, barFadeTime.Progress);
                    function.UpdataFuncitonInfo();
                };
                var btnGradualChangeMaxValuesText = new Button()
                {
@@ -311,6 +318,7 @@
                controlView.AddChidren(btnGradualChangeMaxValuesText);
                #endregion
            }
            btnRestoredPoint = new Button()
            {
                X = Application.GetRealWidth(116),
HDL_ON/UI/UI2/FuntionControlView/Light/RGBPageBLL.cs
@@ -260,11 +260,7 @@
        /// </summary>
        void LoadEvet_ChangeFadeTime()
        {
            barFadeTime.OnStopTrackingTouchEvent = (sender, e) =>
            {
                function.SetAttrState(FunctionAttributeKey.FadeTime, barFadeTime.Progress);
                function.UpdataFuncitonInfo();
            };
        }
        /// <summary>
        /// 加载开关事件
SiriLibrary/Class1.cs
New file
@@ -0,0 +1,11 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace SiriLibrary
{
    public class Class1
    {
    }
}
SiriLibrary/Properties/AssemblyInfo.cs
New file
@@ -0,0 +1,36 @@
using System.Reflection;
using System.Runtime.CompilerServices;
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("SiriLibrary")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("SiriLibrary")]
[assembly: AssemblyCopyright("Copyright ©  2017")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
// Setting ComVisible to false makes the types in this assembly not visible
// to COM components.  If you need to access a type in this assembly from
// COM, set the ComVisible attribute to true on that type.
[assembly: ComVisible(false)]
// The following GUID is for the ID of the typelib if this project is exposed to COM
[assembly: Guid("50c7b8c9-e664-45af-b88e-0c9b8b9c1be1")]
// Version information for an assembly consists of the following four values:
//
//      Major Version
//      Minor Version
//      Build Number
//      Revision
//
// You can specify all the values or you can default the Build and Revision Numbers
// by using the '*' as shown below:
// [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("1.0.0.0")]
[assembly: AssemblyFileVersion("1.0.0.0")]
SiriLibrary/SiriLibrary.csproj
New file
@@ -0,0 +1,47 @@
<?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>{C23E5F00-6F1B-4FEB-80F6-04D9C756A23B}</ProjectGuid>
    <ProjectTypeGuids>{FEACFBD2-3405-455C-9665-78FE426C6842};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
    <TemplateGuid>{a52b8a63-bc84-4b47-910d-692533484892}</TemplateGuid>
    <OutputType>Library</OutputType>
    <RootNamespace>SiriLibrary</RootNamespace>
    <IPhoneResourcePrefix>Resources</IPhoneResourcePrefix>
    <AssemblyName>SiriLibrary</AssemblyName>
    <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;</DefineConstants>
    <ErrorReport>prompt</ErrorReport>
    <WarningLevel>4</WarningLevel>
  </PropertyGroup>
  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
    <DebugType>portable</DebugType>
    <Optimize>true</Optimize>
    <OutputPath>bin\Release</OutputPath>
    <ErrorReport>prompt</ErrorReport>
    <WarningLevel>4</WarningLevel>
  </PropertyGroup>
  <ItemGroup>
    <Reference Include="System" />
    <Reference Include="System.Xml" />
    <Reference Include="System.Core" />
    <Reference Include="Xamarin.iOS" />
  </ItemGroup>
  <ItemGroup>
    <Folder Include="Resources\" />
  </ItemGroup>
  <ItemGroup>
    <Compile Include="Class1.cs" />
    <Compile Include="Properties\AssemblyInfo.cs" />
  </ItemGroup>
  <Import Project="$(MSBuildExtensionsPath)\Xamarin\iOS\Xamarin.iOS.CSharp.targets" />
</Project>