8 WellerV

尚未进行身份认证

天生记忆力差,写下来才放心。

等级
TA的排名 2w+

谷歌io开发者大会2018:强大的AI帝国

 中国时间5月9日凌晨,谷歌一年一度的I/O开发者大会在旧金山山景城开幕。在两个小时的KeyNote演讲中,Google着重介绍了Google Photo、Google Assistant、Google Map、WAYMO等产品,包括发布的Android P,几乎所有产品都围绕着AI进行。## Google产品的变革 ### 强大的AI Google将AI作为公司的重点方向,几乎所有产...

2018-05-27 12:43:16

Gallery2的OpenGL ES图形库的移植

在阅读google的Gallery2源码之后,简直和哥伦布发现新大陆时的心情一样激动。这是一个全新的世界,大部分摈弃了android原生的view体系,所有界面的渲染都是基于OpenGL ES,而且不同页面的切换也使用自己的page类,自己去管理它们的生命周期。本文主要对OpenGL ES库的移植过程进行一些记录和计划,以及对该库进行介绍。 原生Gallery2的GLView体系介绍...

2018-03-09 18:15:07

还不来试试kotlin,开源在线音乐播放器MVP + RxJava + Retrofit。

SweetMusicPlayer是一款基于百度音乐API的在线音乐播放器。拥有播放本地、在线音乐以及mv等功能,采用 MVP + RxJava + Retrofit 架构的项目, 使用Java和Kotlin混合开发。 项目地址:https://github.com/WellerV/SweetMusicPlayer,希望给到有帮助的同学,喜欢记得star哦。...

2018-02-27 23:15:22

android网络耗电优化

一,减小网络功耗应用程序的网络请求是造成电池耗尽的主要原因,因为他们打开耗电的移动数据或Wi-Fi无线电。除了发送和接收数据包所需的功率之外,这些无线电只要打开并保持清醒,就会消耗额外的功率。 每15秒一个简单的网络请求就可以使移动无线电持续不断地快速耗尽电池电量。 本课程将向您展示如何标记应用程序的源代码,根据它们的启动方式对网络请求进行分类,可视化和着色。 从那里,每个类别都可以确定您的应

2017-11-21 11:45:13

android电量优化措施

在开始电量优化以前,我们先总结下设备耗电的一些因素,然后各个击破。 如下图: 大概包含以下一些因素: - 屏幕亮度 - 网络相关 - 唤醒,格式模式的切换以及wakelock - 定位 - 其他传感器一,功耗分析工具功耗分析的工具多种多样,比如google官方提供的battery-history,腾讯的GT (Great Tit)。二,针对具体场景进行优化1,保持屏幕在一段时间后,

2017-11-21 11:42:52

battery-historian工具的使用

本篇文章主要介绍battery-historian工具的安装。很多教程使用go语言编译安装,但是docker更为简单方便,由于被墙的原因,我们需要用到阿里云的docker hub加速器。

2017-11-21 11:39:07

SQLite查询计划器和优化(译)

以下内容为SQLite本身查询的计划器的一些优化,可以帮助开发者更好地理解SQLite,原文地址:http://www.sqlite.org/optoverview.htmlSQLite查询计划器和优化1.0 WHERE条件分析查询中的WHERE子句被分解为“条件”,其中每个条件由AND运算符与其他运算符分隔。如果条件由or连接,索引将不可用。 为了使用索引,条件必须是以下形式之一: - col

2017-10-23 19:25:12

热更新Tinker研究(十一):so文件的patch

热更新Tinker研究-so文件的patch 本文主要通过对so_meta.txt的解析,结合源码来对tinker框架对于so文件的patch过程进行讲解。

2017-04-20 14:34:47

热更新Tinker研究(十):Res文件的patch

热更新Tinker研究-Res文件的patch 本文主要通过对res_meta.txt文件的分析,讲解tinker框架对于res文件的patch过程。

2017-04-20 14:31:17

热更新Tinker研究(九):Dex文件的patch

热更新Tinker研究-Dex文件的patch 本文主要讲解dex文件的patch过程,从tinker的DexPatchFile格式分析,对doFullPatch()作为重点讲解。

2017-04-20 14:29:04

热更新Tinker研究(八):res和so的patch文件生成

热更新Tinker研究-res和so的patch文件生成ResDiffDecoder和BsDiffDecoder分别是负责resource和so文件的patch生成相关的,它们很多地方比较相似,这里放在一起来说明。一、ResDiffDecoderResDiffDecoder是控制resources的patch文件生成的,主要是控制增加、修改和删除的信息,这里对于大文件和小文件也有不同的区分,小文件只

2017-04-20 14:25:21

热更新Tinker研究(七):Dex的patch文件生成

热更新Tinker研究-Dex的patch文件生成[toc] ApkDecoder中的dexPatchDecoder负责dex的patch生成工作,dexPatchDecoder实际上是UniqueDexDiffDecoder类型。这一系列相关的类的关系如下图所示。 BaseDecoder中有三个抽象方法,onAllPatchesStart(), patch(File oldFile, Fi

2017-04-20 14:05:48

热更新Tinker研究(六):TinkerPatchPlugin

热更新Tinker研究-TinkerPatchPlugin 在我们运行tinkerPatchDebug或者tinkerPatchRelease任务的时候,会执行TinkerPatchPlugin的apply(),实际上编写一个gradle的task只需要继承Plugin即可。本文主要讲解插件主要构建的task的功能以及在打包流程中的作用。

2017-04-20 13:58:43

热更新Tinker研究(五):Application的隔离

热更新Tinker研究-Application的隔离由于程序默认会加载Application类,所以框架的补丁将不能对它修改了。但是实际过程中却可能需要修改Application中的某些功能。隔离Applicationtinker采用的方案是,将原来的Application类隔离起来,即其他任何类都不能再引用我们自己的Application。需要使用到Application类功能的地方采用Appli

2017-04-20 13:44:40

热更新Tinker研究(四):TinkerLoader

热更新Tinker研究-TinkerLoader 本文主要讲解tinker框架如何加载已经被打上补丁应用的过程。合成补丁后如何在启动后对应用进行更改呢,处理这个事情的主要类是TinkerLoader,对应dex、res、so文件分别是TinkerDexLoader,TinkerResourceLoader以及TinkerSoLoader。

2017-04-20 11:46:56

热更新Tinker研究(三):加载补丁

热更新Tinker研究-加载补丁本文主要讲解Tinker加载patch.apk的过程,主要是研究当把patch_signed_7zip.apk推送到sdcard之后,点击LOADPATCH按钮之后的流程分析。

2017-03-22 17:41:30

热更新Tinker研究(二):结合源码学习Dex格式

结合tinker源码,使用010 Editor工具对dex文件结构进行分析,包含header,stringIds,typeIds等,对dex文件中使用的数据结构进行讲解。

2017-03-15 15:56:20

热更新Tinker研究(一):运行tinker-sample-android

热更新Tinker研究(一):运行tinker-sample-android热更新Tinker研究本文通过对于tinker框架例子工程的分析,讲解了如何使用tinker以及如果操作tinker的patch。并且通过对脚本的分析,来讲解一些配置属性的作用。

2017-03-15 09:34:38

Gallery2源码阅读图片编辑

Gallery2源码阅读图片编辑以下是从Gallery2的入口类FilterShowActivity (图片编辑功能)顺序的阅读,对看到的内容进行了一个简单的整理和记录。其中包括FilterShowActivity在创建时主要做的事情,界面的变换,历史记录的管理以及ProcessingService的功能。目前看到Gallery2的图片编辑基于renderscript实现,随后再做详细整理。

2016-09-19 22:21:30

Deepin 2015 体验版(Deepin Desktop Environment) 桌面环境 ubuntu下 安装

在/etc/apt/sources添加软件源deb http://packages.deepin.com/experimental experimental main后执行sudo apt-get dist-upgradesudo apt-get install dde-next可体验开发版dde桌面

2016-05-23 22:57:58

查看更多

勋章 我的勋章
  • 专栏达人
    专栏达人
    授予成功创建个人博客专栏的用户。专栏中添加五篇以上博文即可点亮!撰写博客专栏浓缩技术精华,专栏达人就是你!
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!