<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[leo_1993的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/leo_1993</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; leo_1993]]></copyright><item><title><![CDATA[flutter CupertinoPicker控件]]></title><link>https://blog.youkuaiyun.com/leo_1993/article/details/128233921</link><guid>https://blog.youkuaiyun.com/leo_1993/article/details/128233921</guid><author>leo_1993</author><pubDate>Thu, 08 Dec 2022 13:28:03 +0800</pubDate><description><![CDATA[flutter  CupertinoPick]]></description><category></category></item><item><title><![CDATA[flutter widget]]></title><link>https://blog.youkuaiyun.com/leo_1993/article/details/107107529</link><guid>https://blog.youkuaiyun.com/leo_1993/article/details/107107529</guid><author>leo_1993</author><pubDate>Mon, 30 May 2022 10:48:27 +0800</pubDate><description><![CDATA[MaterialApp:材料设计app组件,一般放在根节点
scaffold:带有顶部导航栏,侧边栏,底部导航栏的封装组件
appBar:顶部导航栏,
bottomNavigationBar:底部导航栏
RefreshIndicator  刷新
TextField 输入框

]]></description><category></category></item><item><title><![CDATA[flutter使用坑点记录]]></title><link>https://blog.youkuaiyun.com/leo_1993/article/details/125002799</link><guid>https://blog.youkuaiyun.com/leo_1993/article/details/125002799</guid><author>leo_1993</author><pubDate>Fri, 27 May 2022 14:23:45 +0800</pubDate><description><![CDATA[1 container点击失效
一般container点击，可能会在container外包一层 GestureDetector(），有时候你会发现点击事件无效或是只有点击了文字或图片之后才会触发点击事件
解决办法
1 为Container设置背景颜色
2GestureDetector的 behavior 属性设置为 opaque 或 translucent
GestureDetector的 behavior 属性解释
GestureDetector 的behavior处理事件的方式有以下三种：
HitTes]]></description><category></category></item><item><title><![CDATA[mariaDB安装与配置]]></title><link>https://blog.youkuaiyun.com/leo_1993/article/details/124360153</link><guid>https://blog.youkuaiyun.com/leo_1993/article/details/124360153</guid><author>leo_1993</author><pubDate>Sat, 23 Apr 2022 10:36:58 +0800</pubDate><description><![CDATA[cd到 /etc/yum.repos.d/目录下 ，使用touch MariaDB.repo创建MariaDB.repoMariaDB.repo文件
vim MariaDB.repo  进入配置文件
在官网找到配置信息

选择阿里云镜像配置信息
将配置信息赋值粘贴到MariaDB.repo文件内，保存退出
执行安装命令
sudo dnf install MariaDB-server

开启服务命令
sudo systemctl start mariadb


开机启动命令
systemctl enable ]]></description><category></category></item><item><title><![CDATA[Linux安装和配置redis]]></title><link>https://blog.youkuaiyun.com/leo_1993/article/details/123539347</link><guid>https://blog.youkuaiyun.com/leo_1993/article/details/123539347</guid><author>leo_1993</author><pubDate>Sat, 23 Apr 2022 07:56:41 +0800</pubDate><description><![CDATA[下载redis添加链接描述
将下载的redis压缩包上传到服务器
解压redis压缩包，cd到解压的redis文件夹内，执行make

这表示make成功，然后执行make install

make install执行成功

在redis目录下有一个utils文件夹，cd utils进入此文件夹
执行cp redis_init_script /etc/init.d，将redis_init_script 拷贝到/etc/init.d下
在解压的redis文件夹下有一个redis.conf配置文件

mkdi]]></description><category></category></item><item><title><![CDATA[HTTP消息推送]]></title><link>https://blog.youkuaiyun.com/leo_1993/article/details/124097674</link><guid>https://blog.youkuaiyun.com/leo_1993/article/details/124097674</guid><author>leo_1993</author><pubDate>Mon, 11 Apr 2022 14:01:39 +0800</pubDate><description><![CDATA[用户可以通过门户或者调用北向API接口添加北向应用订阅url，平台可以将符合订阅条件的设备消息以HTTP POST方式推送至指定的url。目前支持设备数据变化通知、设备指令响应通知、设备事件上报通知、设备上下线通知等消息类型的订阅，各协议对应消息类型及格式参见订阅推送消息格式。订阅级别分为设备级，产品级和分组级。目前订阅生效时间为1分钟左右。 支持HTTP和HTTPs两种推送方式，HTTPs方式具备数字签名和通讯加密能力，具有较高的安全性。HTTP推送方式采用明文传输，可能造成推送消息被窃听或篡改，具有安全]]></description><category></category></item><item><title><![CDATA[设备接入（LWM2M协议）]]></title><link>https://blog.youkuaiyun.com/leo_1993/article/details/124006484</link><guid>https://blog.youkuaiyun.com/leo_1993/article/details/124006484</guid><author>leo_1993</author><pubDate>Thu, 07 Apr 2022 10:55:17 +0800</pubDate><description><![CDATA[Register(注册/登录)
Register接口用于设备向平台进行注册，通过发送CoAP POST请求到平台进行身份认证，认证通过，则设备被激活；认证失败，平台会向设备返回失败码。交互流程如下图所示：

LWM2M业务数据通过CoAP协议进行封装，参数定义参见下表:


Update(更新)
在lifetime超期之前，设备需要发起Update流程，否则平台会认为设备离线，再次连接需要重新发起Register，当设备参数（lifetime、binding mode、ObjectLinks等）发生变化，.]]></description><category></category></item><item><title><![CDATA[创建产品与添加设备]]></title><link>https://blog.youkuaiyun.com/leo_1993/article/details/124004854</link><guid>https://blog.youkuaiyun.com/leo_1993/article/details/124004854</guid><author>leo_1993</author><pubDate>Thu, 07 Apr 2022 08:50:42 +0800</pubDate><description><![CDATA[登录之后点击这里控制台进入控制台

点击产品，之后再点击创建产品



如上设置

点击创建的产品进入产品中心

选择设备管理，点击添加设备

输入要添加的设备信息，点击确定添加设备

]]></description><category></category></item><item><title><![CDATA[开通通用组件服务]]></title><link>https://blog.youkuaiyun.com/leo_1993/article/details/124004734</link><guid>https://blog.youkuaiyun.com/leo_1993/article/details/124004734</guid><author>leo_1993</author><pubDate>Thu, 07 Apr 2022 08:33:22 +0800</pubDate><description><![CDATA[1.在平台首页，点击菜单“产品服务”-&gt;“平台服务”-&gt;“通用组件服务”。

2.进入通用组件服务页，可看到该服务详细介绍，点击“申请开通”按钮。

3.在服务购买页面，点击“立即购买”按钮。

4.跳转到支付界面，阅读开通协议，点击“立即支付”。

5.支付成功，页面跳转到控制台的“费用管理”-“订单管理”页面，可查看详细的订单信息。

6.至此，通用组件服务已开通，用户可进入通用组件服务控制台，使用终端管理、应用创建等功能。

...]]></description><category></category></item><item><title><![CDATA[service启动流程]]></title><link>https://blog.youkuaiyun.com/leo_1993/article/details/123975346</link><guid>https://blog.youkuaiyun.com/leo_1993/article/details/123975346</guid><author>leo_1993</author><pubDate>Wed, 06 Apr 2022 14:27:02 +0800</pubDate><description><![CDATA[]]></description><category></category></item><item><title><![CDATA[java反射 记录笔记]]></title><link>https://blog.youkuaiyun.com/leo_1993/article/details/123892216</link><guid>https://blog.youkuaiyun.com/leo_1993/article/details/123892216</guid><author>leo_1993</author><pubDate>Fri, 01 Apr 2022 11:13:01 +0800</pubDate><description><![CDATA[参考博文添加链接描述
先建一个 User 类：
public class User {
    private  String name = "知否君";
    public String sex = "男";

    public User() {
    }

    public User(String name, String sex) {
        this.name = name;
        this.sex = sex;
    }

    public void eat()]]></description><category></category></item><item><title><![CDATA[viewgrop测量]]></title><link>https://blog.youkuaiyun.com/leo_1993/article/details/123840455</link><guid>https://blog.youkuaiyun.com/leo_1993/article/details/123840455</guid><author>leo_1993</author><pubDate>Wed, 30 Mar 2022 10:42:06 +0800</pubDate><description><![CDATA[参考博文地址 添加链接描述
import android.content.Context
import android.graphics.Rect
import android.util.AttributeSet
import android.util.Log
import android.view.ViewGroup

public class MyViewGrop @JvmOverloads constructor
    (context: Context, attrs: AttributeSet? ]]></description><category></category></item><item><title><![CDATA[nginx配置及常用命令总结]]></title><link>https://blog.youkuaiyun.com/leo_1993/article/details/123610961</link><guid>https://blog.youkuaiyun.com/leo_1993/article/details/123610961</guid><author>leo_1993</author><pubDate>Sun, 20 Mar 2022 19:45:18 +0800</pubDate><description><![CDATA[vim nginx.conf 进入到nginx配置
可以看到一段server代码块，如下代码，集体含义请看我添加的注释
 server {
        listen       80;    #监听80端口
        server_name  localhost;   #请求时ip

        #charset koi8-r;

        #access_log  logs/host.access.log  main;

        location / {
           ]]></description><category></category></item><item><title><![CDATA[linux安装nginx]]></title><link>https://blog.youkuaiyun.com/leo_1993/article/details/123604305</link><guid>https://blog.youkuaiyun.com/leo_1993/article/details/123604305</guid><author>leo_1993</author><pubDate>Sun, 20 Mar 2022 12:23:01 +0800</pubDate><description><![CDATA[nginx下载地址添加链接描述
下载nginx并上传到服务器后解压
1安装gcc环境
yum install gcc-c++
2安装pcre库，用于解析正则表达式
yum install -y pcre pcre-devel
3 zlib压缩和解压缩依赖
yum install -y zlib zlib-devel
4 ssl安全的加密的套接字协议层，用于http安全传输（即https）
yum install -y  openssl openssl-devel
编译之前先创建nginx临时目录
mkdir]]></description><category></category></item><item><title><![CDATA[linux服务器安装tomact]]></title><link>https://blog.youkuaiyun.com/leo_1993/article/details/123476970</link><guid>https://blog.youkuaiyun.com/leo_1993/article/details/123476970</guid><author>leo_1993</author><pubDate>Mon, 14 Mar 2022 16:46:15 +0800</pubDate><description><![CDATA[先去tomcat官网下载Tomcat压缩包（tar.gz格式压缩包），然后将压缩包上传到服务器/usr/local路径下，并解压（上传方法以及解压方法参考此篇文章添加链接描述）
通过cd命令进入到解压后的tomcat的bin文件下，通过ls命令可以看到bin文件夹下有许多可执行命令

输入   ./startup.sh  回车执行

出现Tomcact  started表示tomcat启动成功
此时在浏览器输入你的服务器公网ip+:8080 回车即可出现加载tomcat默认网页

如果你使用的是云服务器，还]]></description><category></category></item><item><title><![CDATA[linux安装jdk]]></title><link>https://blog.youkuaiyun.com/leo_1993/article/details/123473692</link><guid>https://blog.youkuaiyun.com/leo_1993/article/details/123473692</guid><author>leo_1993</author><pubDate>Mon, 14 Mar 2022 13:16:06 +0800</pubDate><description><![CDATA[安装之前，可以先输入Java  -version命令，如果提示没有找到，则表示未安装
可以使用 mkdir命令创建文件夹，这里我们在usr路径下创建java文件夹用来作为jdk安装路径，
使用cd命令切换到usr路径下，输入mkdir  /java创建java文件夹（这里对linux系统目录不了解，可以看下另一博客添加链接描述）
在oracle官网下载jdk（添加链接描述）
可以通过filezilla这个软件将文件上传到服务器，filezilla下载地址  添加链接描述
下载安装完成后，打开filezill]]></description><category></category></item><item><title><![CDATA[linux目录以及命令行]]></title><link>https://blog.youkuaiyun.com/leo_1993/article/details/123458775</link><guid>https://blog.youkuaiyun.com/leo_1993/article/details/123458775</guid><author>leo_1993</author><pubDate>Sun, 13 Mar 2022 23:08:23 +0800</pubDate><description><![CDATA[linux目录结构


Linux操作指令
cd  切换目录                    pwd   查看当前目录             ls、ll  显示当前目录内容
mkdir  创建目录               cp   复制文件与目录           mv  移动或者重命名文件夹
rm  删除文件或目录       find  查找目录或文件
cd空格…（两个点）返回上级目录
mkdir空格./+文件夹名    在当前目录创建文件夹
mkdir空格-p空格./a/b/c   创建]]></description><category></category></item><item><title><![CDATA[网络基础TCP/IP]]></title><link>https://blog.youkuaiyun.com/leo_1993/article/details/123240565</link><guid>https://blog.youkuaiyun.com/leo_1993/article/details/123240565</guid><author>leo_1993</author><pubDate>Wed, 02 Mar 2022 22:02:17 +0800</pubDate><description><![CDATA[TCP/IP协议族按层次分为以下4层：应用层、传输层、网络层、数据链路层
应用层
应用层决定向用户提供应用服务时通信活动。 TCP/IP协议族预存了各类通用服务。比如FTP(File Transfer Protocol,文件传输协议)和DNS（Domain Name System，域名协议）服务就是其中两类。HTTP协议也处于该层
传输层
传输层对上层应用层，提供位于网络连接中的两台计算机之间数据传输。在传输层有两个性质不同的协议：TCP（Transnission Control Protocol,传输控制]]></description><category></category></item><item><title><![CDATA[android全屏模式]]></title><link>https://blog.youkuaiyun.com/leo_1993/article/details/123239290</link><guid>https://blog.youkuaiyun.com/leo_1993/article/details/123239290</guid><author>leo_1993</author><pubDate>Wed, 02 Mar 2022 20:22:32 +0800</pubDate><description><![CDATA[if (Build.VERSION.SDK_INT &gt;= Build.VERSION_CODES.LOLLIPOP) {
        //获取最顶层的View
        getWindow().getDecorView()
            .setSystemUiVisibility(View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN or View.SYSTEM_UI_FLAG_LAYOUT_STABLE)
        //设置状态栏透明
       ]]></description><category></category></item><item><title><![CDATA[将view转换成bitmap保存]]></title><link>https://blog.youkuaiyun.com/leo_1993/article/details/119776969</link><guid>https://blog.youkuaiyun.com/leo_1993/article/details/119776969</guid><author>leo_1993</author><pubDate>Wed, 18 Aug 2021 11:53:04 +0800</pubDate><description><![CDATA[/**
                 * setDrawingCacheEnabled
                 * 保留我们的绘制副本
                 * 1.重新测量
                 * 2.重新布局
                 * 3.得到我们的DrawingCache
                 * 4.转换成Bitmap
                 */
                 // ll_content  要保存的vi.]]></description><category></category></item></channel></rss>