<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[SpringYang]]></title><description><![CDATA[千里之行，始于足下]]></description><link>https://blog.youkuaiyun.com/Coder_Hcy</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; Coder_Hcy]]></copyright><item><title><![CDATA[用py写了个针对淘宝的抢购程序（清空购物车）]]></title><link>https://blog.youkuaiyun.com/Coder_Hcy/article/details/128365536</link><guid>https://blog.youkuaiyun.com/Coder_Hcy/article/details/128365536</guid><author>Coder_Hcy</author><pubDate>Sun, 18 Dec 2022 20:24:51 +0800</pubDate><description><![CDATA[淘宝抢购代码]]></description><category></category></item><item><title><![CDATA[Android 关于h5与java交互所遇到的问题]]></title><link>https://blog.youkuaiyun.com/Coder_Hcy/article/details/117361863</link><guid>https://blog.youkuaiyun.com/Coder_Hcy/article/details/117361863</guid><author>Coder_Hcy</author><pubDate>Fri, 28 May 2021 14:43:18 +0800</pubDate><description><![CDATA[h5调用java方法，并向java传参。

目前发现是传递不了对象的，如果需要传递对象，要转成json传递
最好传递的参数全是string类型，布尔值用0,1 代替

发现h5无法触发java方法的自查

看有没有加入注解 @JavascriptInterface
遇到一种情况，就是在h5调用java方法里，做了逻辑处理，并调用h5的方法。这时候无法触发。用rxjava切换主线程

     @JavascriptInterface
    fun goToMyTsDevice() {
        Fl]]></description><category></category></item><item><title><![CDATA[Android 打开系统文件管理器兼容android8,9,10和读取第三方文件管理的文件(微信文件管理)]]></title><link>https://blog.youkuaiyun.com/Coder_Hcy/article/details/108875998</link><guid>https://blog.youkuaiyun.com/Coder_Hcy/article/details/108875998</guid><author>Coder_Hcy</author><pubDate>Tue, 29 Sep 2020 21:26:13 +0800</pubDate><description><![CDATA[打开系统文件管理器兼容android8,9,10和读取第三方文件管理的文件(微信文件管理)，缺点：单选
                    val intent = Intent(Intent.ACTION_GET_CONTENT)
                    intent.type = "*/*"
                    intent.addCategory(Intent.CATEGORY_OPENABLE)
                    (parent.cont]]></description><category></category></item><item><title><![CDATA[flutter 学习感悟]]></title><link>https://blog.youkuaiyun.com/Coder_Hcy/article/details/107779952</link><guid>https://blog.youkuaiyun.com/Coder_Hcy/article/details/107779952</guid><author>Coder_Hcy</author><pubDate>Tue, 04 Aug 2020 09:57:31 +0800</pubDate><description><![CDATA[flutter
入口程序
dart
官网与安装
https://dart.dev/get-dart
语言特点

万物皆对象
指定类型不是必须的，是弱类型语言
代码在运行前解析
dart 统一的程序入口 main
变量名前加下划线代表私有
高级语言
多继承
变量区别大小写

基本数据类型(5种)
Number

int
double

String

双引号和单引号没什么区别

Boolean
List
Map
常量
  const g = 123333;
  final h = 1111;

is 判断数据]]></description><category></category></item><item><title><![CDATA[Android用kotlin修改一个图片编辑库做一个作业点评的功能]]></title><link>https://blog.youkuaiyun.com/Coder_Hcy/article/details/106355264</link><guid>https://blog.youkuaiyun.com/Coder_Hcy/article/details/106355264</guid><author>Coder_Hcy</author><pubDate>Tue, 26 May 2020 14:19:11 +0800</pubDate><description><![CDATA[准备工作

github 找一个图片编辑器 地址，这个图就是对单个本地图片进行编辑，加载大图有问题，页面传递bitmap有问题
目前已有功能:编辑一张本地图片
想要效果：传入图片下载list，第一个页面要有图片切换效果，点击按钮对图片进行编辑,图片保存

优化

首页直接glide加载图片，viewpager左右切换,对bitmap压缩防止过大导致页面崩溃
点击进入编辑页的时候，对对应的图片进行下载，压缩，之后再编辑，跳转页面的时候传下载压缩后的路径，而不是传递bitmap
因为编辑的时候是对本地图编辑，会]]></description><category></category></item><item><title><![CDATA[读《实战gradle》感悟]]></title><link>https://blog.youkuaiyun.com/Coder_Hcy/article/details/102966805</link><guid>https://blog.youkuaiyun.com/Coder_Hcy/article/details/102966805</guid><author>Coder_Hcy</author><pubDate>Fri, 08 Nov 2019 09:23:12 +0800</pubDate><description><![CDATA[task action
doLast

是task执行的最后一个action
&lt;&lt; 可以代替 doLast

执行gradle脚步的语句
gradle -q  taskName
打印
ant.echo(message: “循环打印$it”)
println  ‘hcy2019’
循环 times
  3.times {
   ant.echo(message: "循环打印$it")
 ...]]></description><category></category></item><item><title><![CDATA[android 百度地图开发总结]]></title><link>https://blog.youkuaiyun.com/Coder_Hcy/article/details/101209477</link><guid>https://blog.youkuaiyun.com/Coder_Hcy/article/details/101209477</guid><author>Coder_Hcy</author><pubDate>Mon, 23 Sep 2019 15:57:45 +0800</pubDate><description><![CDATA[POI 检索PERMISSION_UNFINISHED


网上说放在点击事件里做POI搜索，我不知道是不是方案，但对我来说没用，简直万恶之源


这种问题一定要看log,百度这种大公司log很全的，比如
=============================================
----------------- 鉴权错误信息 ------------
sha1;package:...]]></description><category></category></item><item><title><![CDATA[Kotlin实战感悟（换地方拧螺丝了）]]></title><link>https://blog.youkuaiyun.com/Coder_Hcy/article/details/100031752</link><guid>https://blog.youkuaiyun.com/Coder_Hcy/article/details/100031752</guid><author>Coder_Hcy</author><pubDate>Fri, 23 Aug 2019 10:11:25 +0800</pubDate><description><![CDATA[kotlin
修饰符
var 与val的区别





区别




var
private


val
private final


Any
    var flag:Any="ddd"

     Object flag = "ddd";


Any  就是Object 类型

const 的作用
默认java调用kt的静态属性是需要调用getXX()的
     Cat.Companion...]]></description><category></category></item><item><title><![CDATA[H5学习感悟02]]></title><link>https://blog.youkuaiyun.com/Coder_Hcy/article/details/96876060</link><guid>https://blog.youkuaiyun.com/Coder_Hcy/article/details/96876060</guid><author>Coder_Hcy</author><pubDate>Mon, 22 Jul 2019 17:18:52 +0800</pubDate><description><![CDATA[http 通信过程
客户端

对域名先查找本地hosts文件有没有对应ip，如果没有就去请求DNS服务器，
查找对应域名的ip地址，然后通过ip以及端口与服务端建立通道
收到服务器的’包’,根据content-type处理响应的内容，开始界面渲染。

Host: localhost:63343
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 1...]]></description><category></category></item><item><title><![CDATA[H5学习感悟05]]></title><link>https://blog.youkuaiyun.com/Coder_Hcy/article/details/96485907</link><guid>https://blog.youkuaiyun.com/Coder_Hcy/article/details/96485907</guid><author>Coder_Hcy</author><pubDate>Fri, 19 Jul 2019 17:35:41 +0800</pubDate><description><![CDATA[js 的组成

ECMA Script
Bom
Dom

Dom 文档对象模型
文档树
获取元素
根据id获取元素
对象是有类型的,getElementById这个方法只能通过document来调用
&lt;script&gt;
    var div_first = document.getElementById("first");
    console.log(div_first);
&lt...]]></description><category></category></item><item><title><![CDATA[H5学习感悟01]]></title><link>https://blog.youkuaiyun.com/Coder_Hcy/article/details/96119722</link><guid>https://blog.youkuaiyun.com/Coder_Hcy/article/details/96119722</guid><author>Coder_Hcy</author><pubDate>Tue, 16 Jul 2019 11:56:57 +0800</pubDate><description><![CDATA[.include 和 require 的区别 (php载入文件的四种方式)

include 的错误级别较轻（warning），不会影响代码的执行。碰到一次，执行一次
include_once  只执行一次
载入文件不存在，只会报⚠️
require 要求较高（Fatal error），如果代码出错不再往下执行，碰到一次，执行一次
require_once  只执行一次
一旦被载入的文件不存在，就...]]></description><category></category></item><item><title><![CDATA[H5学习感悟04]]></title><link>https://blog.youkuaiyun.com/Coder_Hcy/article/details/95630581</link><guid>https://blog.youkuaiyun.com/Coder_Hcy/article/details/95630581</guid><author>Coder_Hcy</author><pubDate>Fri, 12 Jul 2019 16:29:41 +0800</pubDate><description><![CDATA[浏览器的内核




浏览器名
内核名
特点




Firefox
Gecko
代码公开


safari
Webkit



Chrome
Blink



Opera
Presto/chrome(现)



ie
Trident



web标准

结构标准
样式标准
行为标准


html的骨架格式
&lt;html&gt;
    &lt;head&gt;
            &lt...]]></description><category></category></item><item><title><![CDATA[H5学习感悟03]]></title><link>https://blog.youkuaiyun.com/Coder_Hcy/article/details/95203954</link><guid>https://blog.youkuaiyun.com/Coder_Hcy/article/details/95203954</guid><author>Coder_Hcy</author><pubDate>Tue, 09 Jul 2019 16:24:43 +0800</pubDate><description><![CDATA[AJAX
&lt;script&gt;
    //XMLHttpRequest
    xhr = new XMLHttpRequest();
    //先注册事件，这个事件不只是响应的时候触发，状态改变的时候的也触发
    xhr.onreadystatechange = function () {
        console.log(this.readyState);
       ...]]></description><category></category></item><item><title><![CDATA[Android7.0开发应用遇到的问题（电视盒子）]]></title><link>https://blog.youkuaiyun.com/Coder_Hcy/article/details/87939578</link><guid>https://blog.youkuaiyun.com/Coder_Hcy/article/details/87939578</guid><author>Coder_Hcy</author><pubDate>Tue, 26 Feb 2019 17:47:47 +0800</pubDate><description><![CDATA[最近需要将6.0盒子的应用，同时也用到7.0的盒子上。基本上变动不大，但可也有几点需要注意一下的

1.比如：


            Activity activity = (Activity) getContext();
            WindowManager.LayoutParams lp = activity.getWindow().getAttributes();
   ...]]></description><category></category></item><item><title><![CDATA[Android 积累盒子开发常用到的工具类]]></title><link>https://blog.youkuaiyun.com/Coder_Hcy/article/details/85284910</link><guid>https://blog.youkuaiyun.com/Coder_Hcy/article/details/85284910</guid><author>Coder_Hcy</author><pubDate>Thu, 27 Dec 2018 15:33:50 +0800</pubDate><description><![CDATA[1.根据包名关闭应用，获取应用信息（android7.1.2亲测可用）


package com.vtronedu.vbox.library.utils;

import android.app.ActivityManager;
import android.content.Context;
import android.content.pm.ApplicationInfo;
import an...]]></description><category></category></item><item><title><![CDATA[android 4.4 有线网络开发总结（电视盒子）]]></title><link>https://blog.youkuaiyun.com/Coder_Hcy/article/details/84231915</link><guid>https://blog.youkuaiyun.com/Coder_Hcy/article/details/84231915</guid><author>Coder_Hcy</author><pubDate>Mon, 19 Nov 2018 10:26:14 +0800</pubDate><description><![CDATA[开发背景：电视应用必须兼容公司过去已经发行的4.4盒子，除了文件管理，wifi，有线，蓝牙所有用到6.0系统jar的功能全都不能用，4.4系统不能提供对应jar包给我，具体原因不明

开发需求：获取ip地址，子网掩码，默认网关，dns服务器：

4.4有线网络是有开关功能的，而6.0是没有的。因此需要判定当前以太网是否打开,如果没打开就让他打开


        if (!isEthernetE...]]></description><category></category></item><item><title><![CDATA[android 4.4 蓝牙开发总结（电视盒子）]]></title><link>https://blog.youkuaiyun.com/Coder_Hcy/article/details/84103003</link><guid>https://blog.youkuaiyun.com/Coder_Hcy/article/details/84103003</guid><author>Coder_Hcy</author><pubDate>Thu, 15 Nov 2018 14:25:25 +0800</pubDate><description><![CDATA[6.0的蓝牙已经开发完毕，因为可以得到系统6.0的jar包，so也就开发的快些，更好些。4.4因为代码部分在setting模块里，部分在系统中，so不方便打成jar包。所以就通过广播接受改变状态之类的。也算鼓捣出来一款。


4.4蓝牙效果

开发的思路：

1.开关蓝牙

2.扫描到蓝牙列表和得到配对列表

 

 

下面关于连接蓝牙：

A2dp：这个是蓝牙音频传输协议

AVRCP:输入设...]]></description><category></category></item><item><title><![CDATA[android  4.4 wifi 模块开发总结（电视盒子）]]></title><link>https://blog.youkuaiyun.com/Coder_Hcy/article/details/83744365</link><guid>https://blog.youkuaiyun.com/Coder_Hcy/article/details/83744365</guid><author>Coder_Hcy</author><pubDate>Mon, 05 Nov 2018 11:53:31 +0800</pubDate><description><![CDATA[最近6.0的盒子的应用开发已经告一段落了，接到的新需求就是想办法让公司以前发出去的4.4的盒子也得兼容应用。把应用装到4.4盒子上，发现也就文件读取，网络（有线无线），蓝牙，恢复出厂设置这几个模块不能用了，也就是用到6.0的jar包的都不行了。

    6.0wifi，系统有提供jar包，有 WifiTracker，AccessPoint这两个关键类，具体分析等有机...]]></description><category></category></item><item><title><![CDATA[android 关于zip4j的一些天坑]]></title><link>https://blog.youkuaiyun.com/Coder_Hcy/article/details/82349761</link><guid>https://blog.youkuaiyun.com/Coder_Hcy/article/details/82349761</guid><author>Coder_Hcy</author><pubDate>Mon, 03 Sep 2018 15:52:57 +0800</pubDate><description><![CDATA[1.最近的项目中有个需求，就是从oos上下载压缩包并且解压，对swf解密的需求。

2.解压过程中，要显示解压进度。解压成功后对swf文件解密。

3.关于显示解压进度的天坑：网上十片有八篇的方法：


/**
     * @param zipFile     需要解压的文件
     * @param filePath    解压后的文件目录
     * @param isDeleteZip...]]></description><category></category></item><item><title><![CDATA[Android盒子开发总结:基于6.0系统，关于刷到系统的app读取不到U盘文件的问题]]></title><link>https://blog.youkuaiyun.com/Coder_Hcy/article/details/80590114</link><guid>https://blog.youkuaiyun.com/Coder_Hcy/article/details/80590114</guid><author>Coder_Hcy</author><pubDate>Wed, 06 Jun 2018 10:07:20 +0800</pubDate><description><![CDATA[最近在做电视盒子，系统是6.0的，我负责的模块是更新模块。用的是增量更新，关于增量更新不多说，就是用阿里的工具。我负责的就是将下载的文件放到指定的目录（/cache/update.zip）下，这都是超级简单的。但更新的模块里有一个小功能就是U盘更新：就是遍历U盘的一级目录，找到指定的增量包（压缩文件），复制移动到指定目录下（/cache/update.zip）。这边的代码也超级简单，百度一大把。4...]]></description><category></category></item></channel></rss>