Deep Link,就是可以让你在手机的浏览器/Google Search上点击搜索的结果,便能直接跳转到已安装的应用中的某一个页面的技术。如果你想体验的话,可以在Android 4.1以上设备安装IMDB,然后在Google上搜索一部IMDB的影片,你就会发现点击后直接跳转到了App里的该电影介绍页面。
对极大整数做因数分解的难度决定了RSA算法的可靠性。
...
实际上Bob一般使用一种对称算法来加密他的信息,然后用RSA来加密他的比较短的对称密码,然后将用RSA加密的对称密码和用对称算法加密的消息送给Alice。
- Java多线程(十)之ReentrantReadWriteLock深入分析:简单分析了ReentrantLock和ReadWriteLock的特性
使用ReentrantReadWriteLock可以推广到大部分读,少量写的场景,因为读线程之间没有竞争,所以比起sychronzied,性能好很多。如果需要较为精确的控制缓存,使用ReentrantReadWriteLock倒也不失为一个方案。
this class represents a factory for secret keys.Key factories are used to convertkeys(opaque cryptographic keys of typeKey) intokey specifications(transparent representations of the underlying key material), and vice versa. Secret key factories operate only on secret (symmetric) keys......
This class specifies aninitialization vector(IV). Examples which use IVs are ciphers in feedback mode, e.g., DES in CBC mode and RSA ciphers with OAEP encoding operation.
CountDownTimer timer = new CountDownTimer(10000, 1000)中,第一个参数表示总时间,第二个参数表示间隔时间。意思就是每隔一秒会回调一次方法onTick,然后10秒之后会回调onFinish方法。
- RecyclerView中mCacheViews(屏幕外)获取缓存时,是通过匹配pos获取目标位置的缓存,这样做的好处是,当数据源数据不变的情况下,无须重新bindView;而同样是离屏缓存,ListView从mScrapViews根据pos获取相应的缓存,但是并没有直接使用,而是重新getView(即必定会重新bindView)
RecyclerView的缓存机制确实更加完善,但还不算质的变化,RecyclerView更大的亮点在于提供了局部刷新的接口,通过局部刷新,就能避免调用许多无用的bindView.
列表页展示界面,需要支持动画,或者频繁更新,局部刷新,建议使用RecyclerView,更加强大完善,易扩展;其它情况(如微信卡包列表页)两者都OK,但ListView在使用上会更加方便,快捷。
因此,每新建一个进程 Application 的 onCreate 都将被调用一次
<p>在辅助功能的Service里添加android:process=":service_accessibility",当开启辅助功能后,能够监听到系统setting页的变化.
这里的Intent就是之前说的,重复使用的旧Intent了,这里注意,系统添加了FLAG_ACTIVITY_LAUNCHED_FROM_HISTORY*和FLAG_ACTIVITY_TASK_ON_HOME标志,所以我们可以在App中通过判断Intent的flag是否包含这两个来判断是否是从近期任务里启动的。注意FLAG_ACTIVITY_TASK_ON_HOME标志是Api 11添加的,所以11一下的之判断FLAG_ACTIVITY_LAUNCHED_FROM_HISTORY就行了。*
【Android】一种提高Android应用进程存活率新方法 账户同步服务AbstractThreadedSyncAdapter
Android的账号与同步机制主要讲原理和框架,一点点内容
Why does ContentResolver.requestSync not trigger a sync? 账号同步具体细节
1)从主干合并到分支
2)从分支合并到主干
3)将主干上的修改合并到分支
4)合并2个分支到主干
5)从主干到分支,手工指定不需要合并的修改
6)从主干到分支,手工指定要合并的修改
进程的ppid就是进程的父进程的pid。同时,系统还会为运行的进程分配一个进程uid和进程euid,用于判断文件的执行权限。
Android N引入了一种包含编译、解释和JIT(Just In Time)的混合运行时,以便在安装时间、内存占用、电池消耗和性能之间获得最好的折衷。
总的来看,ZIP的核心在于如何对LZ压缩后的literal、length、distance进行Huffman编码,以及如何以最小空间记录Huffman码表。整个过程充满了对数据结构尤其是树的深入优化利用。
Linux下的proc目录详解
(出处: 电子工程世界-论坛)
很多系统命令在读取系统信息的时候,其实是从proc目录下读取对应的文件来获得的。 所以如果我们不使用这些命令, 直接到proc目录下去查看对应文件,也是可以获得对应的信息的。
/cache, /data, /dev, /etc, /mnt, /proc, /sbin, /sdcard, /sys, /system, /tmp
- 小根堆若根节点存在左子女则根节点的值小于左子女的值;若根节点存在右子女则根节点的值小于右子女的值。
- 大根堆若根节点存在左子女则根节点的值大于左子女的值;若根节点存在右子女则根节点的值大于右子女的值。
Android适配的问题太多,有屏幕尺寸的适配、屏幕分辨率的适配以及android不同系统版本的适配。反映在代码上来说,就是需要在资源文件上面下功夫,主要是layout和drawable文件目录下的文件,这里主要就研究一下drawable的适配。
Mars 是微信官方的终端基础组件, 是一个业务性无关,平台性无关 使用C++ 编写的基础组件。目前已接入微信 Android、iOS、Mac、Windows、WP、UWP 等客户端。