自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(37)
  • 资源 (3)
  • 收藏
  • 关注

原创 asm操作字节码学习6:app整改插件

之前的几篇已经从asm介绍到bytex的实践,这篇介绍,开发插件,去应对app的整改相关的内容.在我之前的一篇文章:Android app权限整改_archko的专栏-CSDN博客权限整改中,重点是定位权限,当你的app已经检查过了,使用定位的权限了,又被整改退回来了,是不是觉得脑子不够用了?检测机构出问题了?当然不是.因为有其它地方,间接地使用了它.其它像相机,通讯录这些权限就不说了,不够特殊,今天说一说定位权限.手机系统中,有一项检查隐私保护->查看应用行为记录,里面记录着app访问了哪些

2021-10-03 10:33:23 52

原创 asm操作字节码学习5:移植插件

前面4篇文章,介绍了asm,bytex相关的知识.以实践为主.今天这一篇,介绍如何把didi booster移植过来.首先didi的booster也是一个非常优秀的框架.我造反bytex是因为它设计的更细致,兼容性更好.bytex提供的插件有几个,同时didi也提供了一些插件.所以我把booster的插件移植过来.booster的toast插件,解决7.0的异常.把这个插件移植过来.先把booster里面的booster-android-instrument-toast复制到项目目.

2021-09-25 18:58:15 90

原创 用python 抓取股票,看盘

本文介绍,如何用python抓取股票数据,展示在终端上.作为程序员,如果你一整天打开同花顺,雪球,富途这些app,容易让领导看到,但有时你就想看一看,怎么办呢?现有不少api可以使用的.比如新浪,腾讯,雪球,网易都有.经过对比,这里用腾讯的,因为其它只有代码,没有名字,看起来不方便.先来一段效果展示:iterm2上绿色没显示出来,所以换手率这里还是黑色的.vs code上正常.tencent_url="http://qt.gtimg.cn/q=" + getSymbol(Fals

2021-09-21 09:17:20 1423

原创 asm操作字节码学习4:bytex插件初探

第一篇只是介绍了bytex,及其相关的一些知识.本文将更详细地介绍,基于bytex项目开发插件,深入插件的源码经过前几篇文章的内容介绍,相信已经了解了asm的基本操作与bytex插件开发了.

2021-09-20 19:26:29 160

原创 asm操作字节码学习3:asm的主要api

asm操作字节码学习2:用asm操作一个类

2021-09-12 08:51:22 106

原创 asm操作字节码学习2:用asm操作一个类

asm就是用来操作字节码的,环境搭建与asm的基础知识,字节码知识了解以后,开始操作字节码吧.1.先来一个简单的类:public class MyClass { private int test; public void hello() { System.out.println("hello!"); }}要产生这样一个类的步骤:创建类,创建属性,创建方法,在方法中插入一个语句.fun createClz(): ByteArray {1.创建类

2021-09-04 14:20:23 85

原创 asm操作字节码学习1:bytex插件开发,环境搭建

bytex,由字节抖音团队开发,并开源,https://github.com/bytedance/ByteX官方文档说明如何插件开发.先下载源码,然后打开源码工程,新建一个分支,在此基础上去建立library,就可以了.这部分看文档就可以了.遇到的一些问题.1.插件开发完成后,如何运行.gradle_plugins在根目录会产生这个目录,下面存着你的插件编译结果.默认idea是不显示的,你ctrl+n搜索类这个快捷键输入这个名字就可以了.2.插件...

2021-08-29 09:07:31 94

原创 Android app权限整改

权限整改中,重点是定位权限,当你的app已经检查过了,使用定位的权限了,又被整改退回来了,是不是觉得脑子不够用了?检测机构出问题了?当然不是.因为有其它地方,间接地使用了它.其它像相机,通讯录这些权限就不说了,不够特殊,今天说一说定位权限.手机系统中,有一项检查隐私保护->查看应用行为记录,里面记录着app访问了哪些权限,你也许会很奇怪,我明明没有了定位操作,也没有地图为何还会访问定位权限?首先,要看文档:官方文档权限变更:https://developer.andro

2021-08-12 16:01:28 282

原创 让greendao支持group by

旧项目中使用的是greendao,但像group bydistinct这样的语法不支持。开始想的是.where(WhereCondition(), new WhereCondition.StringCondition(" GROUP BY uid")) 这样添加两个条件句。语法写错的情况下,发现它打印出日志:compiling error: select t._id .... from table_name where id>20 and group byuid 。于是我发现了..

2021-04-20 16:31:28 579

原创 fluter 使用百度地图

github上有一个百度地图的实现 xx_fluttify,他不只有百度地图,还有各种地图的实现,后来改收费了,高德的key没申请下来,我就下载了百度的lib。用地图没大问题,就是速度不咋地,platformview的原因。当我需要geo反查时出现问题了,这个库一直有回调,即使我已经把当前的widget关了,各种dispose,依然会有查询结果回调,这显然是内存泄露了。基于速度与内存的考虑,地图定位选址功能就不用它了。毕竟写一个拖动地图选址还是不难地。而且native的view速度快多了。遇

2020-08-14 19:22:03 327

原创 flutter 常见问题

1.pageview,遇到列表点击进入详情后回来,列表重新加载了.class _MovieListPageState extends State<MovieListPage>//重点: with AutomaticKeepAliveClientMixin@overridebool get wantKeepAlive => true;光这样还是不够地.需要在...

2020-04-27 21:17:51 516

原创 flutter的 redux,应该用还是不应该用.

flutter也算是火的了.涉及到主要问题就是状态管理了,现在状态管理框架也非常多.其中redux就是从前端来的概念,也有人移植到了flutter里面了阿里也出了fish-redux,这个定位是,不只是一个状态管理框架.各种努力之下,我也用了一下redux,fish-redux.当然这些设计是非常优秀的.但是问题来了.我花的时间太多了,我浪费了好多时间,画了类图,序列图,弄清楚了它...

2020-03-14 20:45:16 599

原创 用Flutter写一个武汉疫情信息app

这一个完整的app先上源码 ,后面再补说明https://github.com/archko/wuhan2020_flutter_app项目引用了https://github.com/archko/flutter_base,两个工程在同一个目录下即可,或者修改为git引用数据从wuhan2020的项目中拿的,好像是丁香园的数据, 不如支付宝的准确与及时....

2020-02-16 17:53:35 367

原创 python抓取链家二手房数据

#!/usr/bin/env python3# -*- coding: utf-8 -*-import jsonimport openpyxlimport pandas as pdimport requestsfrom bs4 import BeautifulSoupfrom openpyxl.utils.dataframe import dataframe_to_rowss...

2020-02-01 15:50:27 1245

原创 Flutter与Android通信 记录

使用MethodChannel方式通信在建 好工程以后,发现android的工程as识别不了.问题就来了,我要写kotlin或java代码没有提示.打开,project structure->modules,右侧应该可以看到项目的目录了.看图,将java目录选为source,res选为resouces.然后选择上面的dependenciestab,在底部会看到+号:...

2019-11-01 17:48:54 127

原创 viewpager2升级

https://github.com/googlesamples/android-viewpager2谷歌官方的示例.用起来与viewpager类似,但是它是由RecyclerView实现的,略有区别.我将它应用到AMupdf里面,替换了原来的ViewPager.性能上没有什么差别,使用上倒是修改了一些.把以前的tab也换了.这次是库的升级,过程中,遇到了一点小麻烦.比如获取当...

2019-09-09 17:02:59 441

原创 flutter 开发一个应用 5, tab的bug修正,添加下拉上拉

分支切换到dev_1.1了.当切换多个tab的时候,会发现,原来的列表又初始化了一次.这个解决也简单,就是使用胶水类.class _GankJsonListPageState extends State<GankJsonListPage> with AutomaticKeepAliveClientMixin {//加上这一句,重写@overridebool...

2019-08-16 15:40:47 432

原创 flutter 开发一个应用 4

列表的功能完成以后,就可以在各处应用了,所以这次打算构建一个包含多个tab的应用.建一个home_tabs_page.dart文件:class HomeTabsPage extends StatelessWidget { @override Widget build(BuildContext context) { return new MaterialApp( ...

2019-08-13 20:33:53 98

原创 flutter 开发一个应用 3,使用dio

涉及一个联网应用,少不了http相关的东西了,dio就封装了网络功能.pub里搜索dio,说明也详细,使用简单.参考了干货官方的示例,我把应用的http修改了,使用dio的._GankJsonListPageState里的修改:loadData() async { String dataURL = "http://gank.io/api/today"; HttpRes...

2019-08-13 20:23:17 206

原创 flutter 开发一个应用 2

详情页,直接上代码:class GankDetailPage extends StatefulWidget { GankDetailPage({Key key, this.gankBean}) : super(key: key); final GankBean gankBean; @override _GankDetailPageState createState() =...

2019-08-13 20:18:02 67

原创 flutter 开发一个应用 1

基于gank的api,做一个应用,包含普通应用用到的功能.构建一个gank干货的列表.https://github.com/lijinshanmx/flutter_gank/这是他的官方应用.首先列表的构建前面的翻译的文章已经有了.这里不多说了.先解析干货的数据:使用的是http://gank.io/api/today这个地址.返回的结构是:{ "category"...

2019-08-13 20:12:58 93

原创 Flutter 编写应用, 需要处理的问题.

google出了这个框架,最近更流行了,对比它也rn,weex等其它的实现我发觉,这是google的阴谋.flutter基于skia图形渲染的,就是它绕过了上层系统提供的sdk,没有了sdk的羁绊,就不会再像rn与weex那样受限了.它最大的特点就是速度,当你的app处于稳定期, 开发速度并不是主要的,用户体验更重要,flutter的体验要明显强过那两者的. 另外,flutter还有一...

2018-09-01 10:28:33 1850

翻译 Flutter for Android Developers

 https://flutter.io/flutter-for-android/#what-is-the-equivalent-of-okhttp-on-flutter这是一篇长文,介绍了关于Flutter的很多东西,开发一个app用到的技巧,差不多都涉及了.这篇文章旨在给开发者介绍构建app的技巧.如果你理解了Android的基础框架,你可以非常容易地融入Flutter的开发.如...

2018-08-30 11:25:44 686

翻译 JSON and serialization

https://flutter.io/json/如果一个app不与服务器交互,获取一些结构化的数据是难以想象的,当开发一个网络app,迟早要消费一些json数据的.这篇指南,就是告诉你在Flutter里使用json,包含了json在不同场景的解决方案.术语:编码与序列化是一个事,转化结构化的数据为字符串,解码与反序列化也是一样的,是反向过程,转字符串为结构化数据.然后序列化通常是涉及了...

2018-08-28 16:53:41 355

翻译 添加图片到Flutter

https://flutter.io/assets-and-images/介绍:Flutter app需要有代码与assets,assets是文件,部署在app里面的,在运行时可以访问,通常的assets包含,数据,配置文件,图标,图片.指定assetsFlutter使用pubspec.yaml文件,定位项目的根,以定位assets.示例:flutter: asset...

2018-08-22 11:00:30 7825 2

翻译 Flutter布局

https://flutter.io/layout/当你箱子约束布局遇到一些困难时,可以查看文档:Introduction Unbounded constraints Flex介绍:在Flutter,控件由RenderBox对象来渲染的.Render box由父节点给出约束,自己在约束范围内决定大小.约束由高宽最大最小值组成.通常,有三类箱子,区别在于他们如何处理约束:尽...

2018-08-22 09:57:28 381

翻译 在Flutter里面构建布局

https://flutter.io/tutorials/layout/可以学到:Flutter的布局机制如何水平与垂直布局控件如何构建一个Flutter布局布局的效果图:https://flutter.io/tutorials/layout/images/lakes.jpg这篇指南,分步介绍了Flutter的布局方式,展示了如何在屏幕放一个控件.在介绍如何布局前,先来...

2018-08-20 12:41:22 1913

翻译 编写你的第一个应用2

文档中并没有这部分内容,https://codelabs.developers.google.com/codelabs/first-flutter-app-pt2 这个地址需要梯子.在第2部分,可以学到什么:  和第一部分一样.在第二部分构建什么?构建一个无限的列表.当用户选择与取消选择时,保存选中的.在顶部的右侧导航栏,点击按钮,到一个新的页面,显示收藏的项.动画图是:htt...

2018-08-17 12:29:24 193

翻译 创建第一个Flutter app,第一部分

这是一份创建Flutter app的指南,如果你熟悉面向对象的语言,就可以很容易地完成.不需要有dart的经验这份指南分两部分,都可以在codelab里找到.https://codelabs.developers.google.com/1.创建Flutter app启动器2.使用额外的包3.添加有状态的控件4.创造一个无限滚动的ListView你会在第一部分做的事:将实...

2018-08-13 13:33:35 394

翻译 windows 安装Flutter,配置ide

系统要求:要安装Flutter,你的开发环境需要满足最低要求:操作系统:windows7 sp1或更晚的磁盘空间:400mb以上工具:Flutter依赖这些工具:PowerShell5.0git 获取Flutter sdk可以从https://flutter.io/sdk-archive/这里获取包,或者最新的https://storage.googleapis...

2018-08-13 09:28:08 827

原创 Mupdf app

mupdf提供了较好的渲染功能,最近还提供了sdk,开发更方便了,和以前相比,sdk已经有了商业化的版本.官方网站是https://artifex.com/developers-mupdf/ vudroid,是一个优秀的开源pdf阅读器,ebookdroid是基于它开发的,但后来不维护了,它的渲染引擎就是mupdf.我在它的基础上,整合了最新的mupdf的sdk,以前是编译源码,现在可...

2018-04-23 16:20:02 1061 4

原创 weex android 示例

通过官方的示例,可以很简单地建立一个工程,然后添加android项目.接着就可以开始了.配置好gradle.这里的主要问题是在于js已经写好了,vue也写好了.但无法将js运行起来,后面看了别人的东西,才知道,要把编译的dist里的js复制到assets里.app_config.xml里是指定了js的路径,如果你不是脚手架建立的项目,就要自己指定了.以前一直没理解,加载js有两种方法.一种是编译后...

2018-04-08 13:40:18 968

原创 Retrofit源码 简单浏览

Retrofit:public &lt;T&gt; T create(final Class&lt;T&gt; service) { Utils.validateServiceInterface(service); if (validateEagerly) { eagerlyValidateMethods(service); } return (T) Proxy....

2018-04-08 13:32:43 95

原创 阅读 OKHttp 源码

2018.2.16最新的git代码.OkHttpClient,这是外部调用的入口.final Dispatcher dispatcher;final @Nullable Proxy proxy;final List&lt;Protocol&gt; protocols;final List&lt;ConnectionSpec&gt; connectionSpecs;final List&lt;Int...

2018-04-08 13:31:48 134

原创 我也看了 event bus 3.0源码

2018.2.11我也想写一篇关于Eventbus的源码解读:今天动手了,真的是去了解它的内部实现.EventBus是greenrobot出品的一个用于Android中事件发布/订阅的库。以前传递对象可能通过接口、广播、文件等等,尤其像同一个Activity两个Fragment之间采用接口传递对象,十分的麻烦,而且耦合度较高。使用EventBus之后,这些将不再是问题。盗用GiHub上Event...

2018-04-08 13:31:00 210

原创 JAVASCRIPT拖动

 

2009-06-14 09:45:00 425

原创 javascript 拖动 模拟回收站(有小BUG,已经修改)

忙了半天,在最后把JS放地单独的文件里,压缩后不记得备份,源码就是现在这样了.看不懂了.  <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

2009-06-13 16:04:00 1180 2

java 面试解惑系列

里面讲述了JAVA面试过程中常提到的一些问题,适合新手了解掌握的。如string,线程,对象的继承,方法重载等。

2008-12-13

Effective.Java.2nd.Edition.May.2008.3000th

传说中的JAVA书籍的圣经就是这个了。是一本很好的JAVA书籍,但需要一定的JAVA基础,不太适合新手,

2008-12-13

spring开发

一本关于SPRING开发的书

2007-12-05

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除