adb获取应用包入口的方案
引言小编最近在入手adb调试,刚开始还是挺顺利的,不过后面就遇到了一些小插曲,其中一个就是获取应用包的入口,开启一个应用。这个问题在网上可以找到很多解决方案,但不都是有用,并且有些方法有一点麻烦。这里,小编介绍一下意外摸索到的解决方案。
解决方案1、点开需要打开的应用,使用获取前台Activity命令
adb shell dumpsys activity activities | findstr mResumedActivity
这样便能获得应用包的启动入口比如,获取有道词典的启动入口
2、使用adb启动应用包
adb shell am start -n [应用包名] /[入口]
adb shell input text不能输入中文的解决方案
原因adb默认是不支持Unicode编码的,无法通过adb shell input text 命令输入中文到手机或者模拟器。
解决步骤
1、安装ADBKeyBoard.apk文件(直接搜索就能找到)打开手机或模拟器,adb install ADBKeyBoard.apk安装该输入法在手机上直接安装也可
2、设置默认输入法打开手机设置 -> 点击语法与输入法 -> 点击输入法管理 -> 启用ADBKeyboard重启手机后即可使用该输入法
3、输入adb命令测试中文输入adb shell am broadcast -a ADB_INPUT_TEXT –es msg ‘这是一段adb中文测试’
RecyclerView的回收复用机制
前言上一章,小编介绍了RecyclerView的高级用法——自定义LayoutManager。今天,我们来从源码的角度深度剖析RecyclerView,主要是对RecyclerView的回收复用机制熟悉掌握。
RecyclerView介绍
RecyclerView可以说是项目必备的系统高级控件,相比于传统的ListVIew,RecyclerView最大的优势就是四级缓存机制,ListView是两级缓存机制(屏幕内可见、屏幕外)。
四级缓存机制
mChangeScrap(主要与动画相关)与mAttachedScrap(一般这两算一级)
用来缓存还在屏幕内的ViewHolder
mCachedViews
用来缓存移除屏幕之外的ViewHolder
mViewCacheExtension
用户的自定义扩展缓存,需要用户自己管理View的创建和缓存
RecyclerViewPool
ViewHolder缓存池
回收复用的入口上一章中自定义LayoutManager中有 detachAndScrapAttachedViews(recycler!!)这样一个方法,用于回收ViewHol ...
自定义LayoutManager实现卡片滑动
前言
前面介绍了利用自定义ItemDecoration实现RecyclerView吸顶效果,重点就在onDraw -> ItemView -> onDrawOver的绘制流程,同时注意预留空间的利用。
今天介绍一个新的知识点与demo,利用自定义LayoutManager的方式实现卡片滑动。有时候系统提供的LayoutManager已经不能够满足我们的需求,这个时候我们就需要自定义LayoutManager。
卡片滑动效果介绍卡片滑动的效果如下图所示。
分析一下卡片效果,顶部的卡片是正常摆放,接着的后面两张会随着位置变化缩小、下移,产生视觉上的叠层效果,再然后的卡片就与第三张重叠摆放。可以滑动移除图片,下面的卡片会自动补全。
实现这样的效果突破点在于两点:
要实现这样重叠式布局的效果,我们就需要自定义LayoutManager,就像系统自带的LinearLayoutManager、GridLayoutManager一样。
滑动移除效果的实现,没有重写scrollVerticallyBy以及scrollHorizontallyBy,这就需要一个重要的帮助类ItemTo ...
adb命令
引言本文为小编学习总结的一些adb的常用命令,可能一些命令有待验证,更多内容可以参考adb用法大全
基本用法语法命令adb 命令的基本语法如下:adb [ -d| -e| -s ] 如果只有一个设备/模拟器连接时,可以省略掉[ -d| -e| -s] ] 这一部分,直接使用adb 。
为命令指定目标设备如果有多个设备/模拟器,则需要为命令指定目标设备
参数
含义
-d
指定当前唯一通过 USB 连接的 Android 设备为命令目标
-e
指定当前唯一运行的模拟器为目标命令
-s
指定相应 serialNumber 号的设备/模拟器为命令目标
常用adb命令查看adb版本号adb version
查看已连接设备adb devices
查看手机序列号adb get-serialno如返回127.0.0.1:7555
查看日志adb logcat
adb logcat -c 清除日志adb logcat | grep “tag” 过滤日志 这里的tag就是你打印日志的时候需要设置的第一个参数TAG,通过TAG我们可以很轻松的过滤出我们 ...
RecyclerView高级用法——吸顶效果
引言我们对RecyclerView的使用不能仅仅停留在表面,可以探索一些高级的用法——自定义,不过要实现这些的前提是必须对RecycleView的源码流程有所了解。今天小编就略讲一下,主要是和今天的主体有关的内容。我们今天就来实现如下的吸顶效果。
通过绘制实现RecyclerView的吸顶效果ItemDecoration
ItemDecoration允许应用给具体的View添加具体的图画或者layout的偏移,对于绘制View之间的分割线,视觉分组边界等等是非常有用的。
当我们调用addItemDecoration()方法添加decoration的时候,RecyclerView就会调用该类的onDraw方法区绘制分割线,也就是说:分割线是绘制出来的。
RecyclerView.ItemDecoration,该类为抽象类,官方目前只提供了一个实现类DividerItemDecoration。
并且只有LinearLayoutManager能够使用
要实现这样的吸顶效果,首先,就需要了解一下RecyclerView.ItemDecoration的绘制流程。
1.onDraw
在绘制 ...
京东淘宝首页二级联动
说明:这篇文章主要用于作者临时观看,因为涉及版权问题,所以短时间内会删除
京东淘宝首页二级联动单点触摸与多点触摸####单点触摸
####多点触摸
面试题
一个move事件 中间有多少个手指的信息->有多少个手指就有多少个手指信息->最多32个
Touch事件源码
上述的disallowIntercept及相关内容就是所谓的“尚方宝剑”
嵌套滑动
并且从上面可以看出NestedScrollView既可以做“父亲”,也可以做“孩子”
“孩子”有三个版本
三个版本之间是的关系 同样“父亲”也是一样
版本2与版本1相比 增加了type 如惯性滑动效果
吸顶效果
onFinishInflate()中获取第一个孩子的第二个孩子,从下图可以看出也就是是第二个LinearLayout
继续嵌套滑动嵌套滑动->是由孩子主动的 触发的
google为了方便我们处理嵌套滑动,所以提供了这个帮助类 -> getScrollingChildHelper()
while(p!=null ...
按Z字形顺序打印二叉树
问题描述给定一个二叉树,返回该二叉树的之字形层序遍历,(第一层从左向右,下一层从右向左,一直这样交替)数据范围:0≤n≤1500,树上每个节点的val满足∣val∣≤1500要求:空间复杂度:O(n),时间复杂度:O(n)
示例
示例1
输入:{1,2,3,#,#,4,5}输出: [[1],[3,2],[4,5]]说明:如题面解释,第一层是根节点,从左到右打印结果,第二层从右到左,第三层从左到右。
思路这其实就是一个升级版的层序遍历.观察其特点,无非就是奇数层和偶数层的输出顺序不一样. 这样就有了初步的解题思路,设置标识符flag(可以为整数型,也可以为boolean类型,整数类型无非就是对奇偶数的判断).其余的思路就是层序遍历的思路,在每遍历新的一层之前,改变flag的值!flag(这里以boolean类型为例),然后就是利用Collections.reverse(list)对链表进行翻转.详情可看代码
这里,小编再提一下我初次遇到这道题的思路,前面的几乎一样,就是在实现链表反转这里,小编不熟悉Java库,没想到还有Colection.reverse这个方法可以用.所以,小编在想 ...
括号问题
问题描述给出n对括号,请编写一个函数来生成所有的由n对括号组成的合法组合。
例如,给出n=3,解集为:
“((()))”, “(()())”, “(())()”, “()()()”, “()(())”
数据范围:0<=n<=10
要求:空间复杂度O(n),时间复杂度O(2^n)
示例示例1
输入:1
返回值:[“()”]
示例2
输入:2
返回值:[“(())”,”()()”]
思路相当于一共n个左括号和n个右括号,可以给我们使用,我们需要依次组装这些括号。每当我们使用一个左括号之后,就剩下n-1个左括号和n个右括号给我们使用,结果拼在使用的左括号之后就行了,因此后者就是一个子问题,可以使用递归:
终止条件:左右括号都使用了n个,将结果加入数组。
返回值:每一级向上一级返回后续组装后的字符串,即子问题中搭配出来的括号序列。
本级任务:每一级就是保证左括号还有剩余的情况下,使用一次左括号进入子问题,或者右括号还有剩余且右括号使用次数少于左括号的情况下使用一次右括号进入子问题。
注意:我们需要保证左括号出现的次数比右括号多时我们再使用右括号就 ...
模板
关于Hexo搭建遇到的小问题