自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(92)
  • 资源 (30)
  • 收藏
  • 关注

转载 关于Recovery及OTA升级的一些积累

Android的recovery是我在公司做的最多的,应该也是我在Android中了解的较为深入的一个部分。recovery这部分其实Android本身都已经提供了很完善的一套机制,但是因为公司是做机顶盒的,所以在因为平台订制的关系,recovery这部分还是做了很多修改的。首先,修改的比较少的是OTT这种盒子,本次也主要讲这种,其实这种和手机区别不大。而类似将DVB 中的loader和Andr...

2019-10-25 11:08:50 1435

原创 android P OTA (MTK)初探 —— 3、基于块(Block)的OTA:升级包的制作流程

上文简单介绍了Target包,本文重点分析完整升级包。一、OTA的流程图(转)网上看到的一份不错的流程图。二、升级包制作命令制作升级包需要用到alps/build/tools/releasetools/ota_from_target_files.py这个脚本文件。可以配置很多参数。一般需要的命令格式如下:./build/tools/releasetools/ota_from_targ...

2019-07-27 16:58:53 5553

原创 android P OTA (MTK)初探 —— 2、基于块(Block)的OTA:Target 包的制作流程

上文简单介绍了OTA的分类和流程,本文重点分析Target包。一、Target包结构:二、生成命令研究OTA会发现网上介绍比较多的命令是 make otapackage ,编译完成后,在根目录执行这个命令会生成Target包和完整升级包。其实有单独编译Target 包的命令:make target-files-packageandroid默认情况下,最终生成的Target包在此目录下:...

2019-07-27 15:57:30 2863 2

原创 android P OTA 初探 —— 1、OTA简单介绍

本系列介绍自己理解的基于android P的OTA系统。由于工作需要开始研究,实践经验匮乏,难免有理解不够或者错误之处。还请多多指正,不吝赐教!1、本文提及的OTA指的是android手机的基础操作系统、系统分区上安装的只读应用和/或时区规则的无线下载 (OTA) 更新。根据升级方式不同,分为:A/B(无缝)系统更新(android O新增)、 传统的非 A/B 系统更新、 时区规则更新(...

2019-07-27 15:10:06 5585

原创 android P 锁屏初探 —— 4 解锁流程

理解了**锁屏流程**,再来看一看解锁流程。1、上滑解锁流程:由于锁屏界面是灭屏时构建并显示的,所以亮屏后就能直接看到锁屏界面啦。再来一张指纹解锁流程:...

2019-07-22 20:54:53 2951

原创 android P 锁屏初探 ——3 power键锁屏流程

由于今天做了两张流程图,所以这张图也先放上来。具体的分析,后面再补充。嘿嘿!

2019-07-18 19:11:29 2398 4

原创 android P 锁屏初探 ——2 开机显示锁屏界面的流程

第一次做流程图,做的不太规范,见谅,见谅。具体的流程介绍,可以参看这篇文章。 Android8.1 SystemUI Keyguard之启动流程有一点需要补充一下,系统首次开机是不显示锁屏界面的。原因应该是下面部分:(KeyguardViewMediator.java) private void handleSystemReady() { synchronized...

2019-07-18 19:06:23 1607 1

原创 android P 锁屏初探 ——1 锁屏的结构与流程概述

锁屏其实一直都是SystemUI的一部分,只是android5.0之前,它是单独编译成java静态库,作为SystemUI的依赖使用的。网上关于Java静态库的介绍比较多,这里就不详述啦。锁屏的结构:锁屏大致分为两部分,第一部分是手机亮屏之后直接能看到的界面。称为非安全锁屏界面,这个界面其实包含在SystemUI的notificationPanelView的布局中,根据手机是否处于锁屏状态调整...

2019-07-17 20:59:38 1365

原创 SystemUI_Recents界面滑动偶尔卡住不动

故事是这样事儿的:刚入职不久,leader就分给我一个bug让我研究研究。Bug:查看最近任务时,有时上滑或下滑的时候,tp有报点,但应用界面未执行响应动画。当时对SystemUI不怎么了解,看了bug后一脸懵逼。过了两天,leader又来消息啦,没什么思路的话就提MTK EService吧。一阵喜悦涌上心头,这个我会啊!几分钟操作,case提交成功。没想到,故事才刚刚开始。MTK 沟通了...

2019-07-16 19:26:01 622

原创 《Android开发艺术探索》阅读笔记(一)、activity生命周期 及 启动模式

一、Activity生命周期分类正常情况下的生命周期:即在有用户参与的情况下,activity所经历的生命周期的变化。 异常情况下的生命周期:即Activity被系统回收或者由于当前设备的Configuration发生改变而导致Activity被销毁并重建的过程。(一)、正常情况下的生命周期经历7个方法,过程如下图: 注意: 1、onStart和onResume都表示activity已经可见,但

2017-01-17 17:26:59 429

转载 Android 日常开发总结的技术经验 60 条

全部Activity可继承自BaseActivity,便于统一风格与处理公共事件,构建对话框统一构建器的建立,万一需要整体变动,一处修改到处有效。2.数据库表段字段常量和SQL逻辑分离,更清晰,建议使用Lite系列框架LiteOrm库,超级清晰且重心可以放在业务上不用关心数据库细节。全局变量放全局类中,模块私有放自己的管理类中,让常量清晰且集中.不要相信庞大的管理类的东西会带来什么好处,可能是

2017-01-17 10:55:28 313

转载 Context 都没弄明白,还怎么做 Android 开发?

作者:Larry 链接:https://zhuanlan.zhihu.com/p/24847247 来源:知乎 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。Activity mActivity =new Activity()作为Android开发者,不知道你有没有思考过这个问题,Activity可以new吗?Android的应用程序开发采用JAVA语言,Activity

2017-01-17 10:39:04 451

原创 我周围的生活

突然想积累点儿自己生活中的小发现,小总结,小小的思考。

2016-12-16 12:34:45 388

原创 android开发——.so文件相关知识点

一、为什么你需要重点关注.so文件如果项目中使用到了NDK,它将会生成.so文件,因此显然你已经在关注它了。如果只是使用Java语言进行编码,你可能在想不需要关注.so文件了吧,因为Java是跨平台的。但事实上,即使你在项目中只是使用Java语言,项目中依赖的函数库或者引擎库里面已经嵌入了.so文件(比如百度地图sdk就提供了各种.so文件)Android应用支持的cpu架构取决于APK中位于lib

2016-12-16 09:36:16 1004

原创 IDEA创建基于maven的java web工程(IDEA版本2016.3)

一、创建新工程的时候选择maven工程(此版本的IDEA自带maven插件,无需另外安装maven,也无需配置maven环境变量) 注意:因为国内普遍的网络访问障碍,这里就不要在create from archetype处打勾了。 下一步处填写groupID和artifactID。(类似于报名和工程名,后面的工程名会根据这里自动填充)二、工程创建好以后,目录解构非常简单 我们要做的是在工程根目

2016-12-13 23:31:55 1729

原创 Java 多态:动态绑定 及 内部实现机制

Java多态机制的实现依赖于其动态绑定。 (本文默认读者已经了解Java程序的编译和运行时问题。)1、程序绑定的概念  绑定指的是一个方法的调用与方法所在的类(方法主体)关联起来。   对Java来说,绑定分为静态绑定和动态绑定;或者叫做前期绑定和后期绑定。2、静态绑定与动态绑定(1)静态绑定:   在程序执行前方法已经被绑定到具体的类,由编译器或其它连接程序实现。例如:C语言。   Jav

2016-12-07 15:25:41 669

原创 自己MarkDown编辑中使用的一些东西

1、字体、字号与颜色<font face="黑体">我是黑体字</font><font face="微软雅黑">我是微软雅黑</font><font face="STCAIYUN">我是华文彩云</font><font color=#0099ff size=7 face="黑体">color=#0099ff size=72 face="黑体"</font>各种颜色的链接博客:http://

2016-12-07 11:24:36 342

转载 Android Studio解决导入项目非常慢的问题

Android Studio比Eclipse ADT有巨大的优势。Android Studio原生支持使用Gradle来构建项目,使用动态语言Groovy定义项目构建的过程,避免了build.xml文件繁琐的定义。然而使用的时候,却有着巨大的缺陷: 由于Android Studio在升级的时候,可能会伴随着Gradle版本的升级,Gradle就会产生若干的版本。 为了保证程序不会因为Gradle

2016-12-02 10:56:59 393

原创 EventBus与RxJava使用与分析(陆续更新中)

(声明:   本文不是讲RxJava及响应式编程的各种详细知识的。   博文主要是我学习过程的记录及搜集的资料的记录及其阅读顺序的总结,再就是资料中没有看到,自己通过源码及实践总结的一些散碎知识点。)android中观察者模式的使用也蛮重要的。 sdk中的Observable 和Observer,EventBus,RxJava等都能很好的实现观察者模式。 首先是继承自Java的Observa

2016-11-30 14:18:06 1543

转载 android 处理运行时变更

有些设备配置可能会在运行时发生变化(例如屏幕方向、键盘可用性及语言)。 发生这种变化时,Android 会重启正在运行的 Activity(先后调用 onDestroy() 和 onCreate())。重启行为旨在通过利用与新设备配置匹配的备用资源自动重新加载您的应用,来帮助它适应新配置。要妥善处理重启行为,Activity 必须通过常规的Activity 生命周期恢复其以前的状态,在 A

2016-11-01 11:01:12 385

原创 Android Studio中进行NDK开发(android studio 2.2 及 CMake)

Studio在使用C++等native代码方面做出了新的尝试,感觉更方便了。现在把使用方式记录如下:一、下载NDK及新的构建工具CMakeStudio引入了新的Native代码构建工具,可以帮助打包成.SO文件 并提供给gradle打包的apk文件中。如下图,选中CMake   LLDB 及NDK,进行下载即可。二、创建新的支持C/C++代码的工程这个其实很简单

2016-10-27 13:34:58 1074

原创 防止按钮短时间内重复点击

类的主内容:public class EnableDelayUtil { private static Handler handler = new Handler(); private static ArrayList myRunnableList = new ArrayList; private static ArrayList viewList = new Ar

2016-10-10 09:46:21 599

转载 探秘Java中String、StringBuilder以及StringBuffer

相信String这个类是Java中使用得最频繁的类之一,并且又是各大公司面试喜欢问到的地方,今天就来和大家一起学习一下String、StringBuilder和StringBuffer这几个类,分析它们的异同点以及了解各个类适用的场景。下面是本文的目录大纲:  一.你了解String类吗?  二.深入理解String、StringBuffer、StringBuilder  三.不同场景

2016-09-06 18:13:00 555

转载 Java并发编程:Lock

在上一篇文章中我们讲到了如何使用关键字synchronized来实现同步访问。本文我们继续来探讨这个问题,从Java 5之后,在java.util.concurrent.locks包下提供了另外一种方式来实现同步访问,那就是Lock。  也许有朋友会问,既然都可以通过synchronized来实现同步访问了,那么为什么还需要提供Lock?这个问题将在下面进行阐述。本文先从synchroni

2016-09-05 11:52:00 388

转载 Java并发编程:Thread类的使用

一.线程的状态  在正式学习Thread类中的具体方法之前,我们先来了解一下线程有哪些状态,这个将会有助于后面对Thread类中的方法的理解。  线程从创建到最终的消亡,要经历若干个状态。一般来说,线程包括以下这几个状态:创建(new)、就绪(runnable)、运行(running)、阻塞(blocked)、time waiting、waiting、消亡(dead)。

2016-09-03 11:32:03 480

原创 android日期选择控件DatePicker小结

最近手上的项目要求弄一个包含两个日期选择控件的UI界面(即开始时间和结束时间)。一、一开始就想到使用自带的DatePicker控件。但是发现其UI很难调整到项目想要的效果。尤其是其与项目theme的关系,在xml中设置style也不好使。从Popwindow到AlertDialog都试过了,只有含单个DatePicker的DateAlertDialog还比较赏心悦目,却不满足项目需要。

2016-07-21 14:43:05 5873

转载 java 并发编程:线程间的协作 wait()+notify()/notifyall() 和 Condition

线程之间的协作。比如说最经典的生产者-消费者模型:当队列满时,生产者需要等待队列有空间才能继续往里面放入商品,而在等待的期间内,生产者必须释放对临界资源(即队列)的占用权。因为生产者如果不释放对临界资源的占用权,那么消费者就无法消费队列中的商品,就不会让队列有空间,那么生产者就会一直无限等待下去。因此,一般情况下,当队列满时,会让生产者交出对临界资源的占用权,并进入挂起状态。然后等待消费者消费了商

2016-07-14 14:07:47 429

转载 java 多线程总结(二) 线程阻塞的方法

1.join()join —— 让一个线程等待另一个线程完成才继续执行。如A线程执行体中调用B线程的join()方法,则A线程被阻塞,直到B线程执行完为止,A才能得以继续执行。 1 public class ThreadTest { 2 3 public static void main(String[] args) { 4 5 MyRunnab

2016-07-13 17:56:52 6650

转载 java并发: volatile 关键字 完全解析

volatile这个关键字可能很多朋友都听说过,或许也都用过。在Java 5之前,它是一个备受争议的关键字,因为在程序中使用它往往会导致出人意料的结果。在Java 5之后,volatile关键字才得以重获生机。  volatile关键字虽然从字面上理解起来比较简单,但是要用好不是一件容易的事情。由于volatile关键字是与Java的内存模型有关的,因此在讲述volatile关键之前,我们

2016-07-13 17:41:34 405

转载 java 多线程总结(一) 创建线程的几种方法及对终止线程运行的讨论

多线程作为Java中很重要的一个知识点,在此还是有必要总结一下的。一.线程的生命周期及五种基本状态关于Java中线程的生命周期,首先看一下下面这张较为经典的图:上图中基本上囊括了Java中多线程各重要知识点。掌握了上图中的各知识点,Java中的多线程也就基本上掌握了。主要包括:Java线程具有五中基本状态新建状态(New):当线程对象对创建后,即进入

2016-07-13 15:44:06 5212

转载 java-类型转换小结

Java中,经常可以遇到类型转换的场景,从变量的定义到复制、数值变量的计算到方法的参数传递、基类与派生类间的造型等,随处可见类型转换的身影。Java中的类型转换在Java编码中具有重要的作用。首先,来了解下数据类型的基本理解:数据是用来描述数据的种类,包括其值和基于其值基础上的可进行的操作集合。Java中数据类型主要分为两大类:基本数据类型和引用数据类型。基本数据类型共有8种,分别

2016-07-13 14:28:09 416

原创 一个view内部的事件分发机制的分析总结

在Android中你只要触摸控件首先都会触发控件的dispatchTouchEvent方法(其实这个方法一般都没在具体的控件类中,而在他的父类View中),所以我们先来看下View的dispatchTouchEvent方法,如下:/** * Pass the touch screen motion event down to the target view, or this * vie

2016-06-24 11:28:19 303

原创 关于android studio底部的几个图标的作用

如上图底部红色框内的部分:1、最左侧的小显示屏图标,这个是用来隐藏屏幕边框部分的各种tool window的。用鼠标点击几次就知道作用了。而且,在隐藏掉这些window后,双击键盘的alt键并按住,就可以临时查看到它们。2、最右侧的小人头图标。这里面包含了关于代码等Lint自动检测的内容。点击打开的窗口是这样的:

2016-06-24 09:34:48 5510

原创 自定义view 小圆点随手指滑动

package com.example.abc.myfirstapplication.SelfView;import android.content.Context;import android.graphics.Canvas;import android.graphics.Color;import android.graphics.Paint;import android.graph

2016-06-23 14:22:24 1241

原创 实现SwipeMenuListView特定item的右滑menu无效

项目中增加需求:根据不同来源的数据,修改展示页面及响应。对于之前的数据来源,定为“来源一”         新的特殊数据来源,定为“来源二”一、对SwipeMenuListView的研究及修改    通过之前转的关于SwipeMenuListView源码的解析 及自己对源码的阅读,发现数据展示页面右滑出现的menu的样式的修改可以通过adapter的

2016-06-20 15:31:18 3426

原创 使用ViewPager实现左右循环滑动及轮播效果

吃水不忘挖井人:本文修改自博客:http://www.cnblogs.com/kobe8/p/4343478.html读了上文感觉思路挺不错的,但是实践的时候发现了一些问题。比如,打开应用时banner并没有自动开始轮播,因为handler中的if判断把消息给吃掉了。由此,我感觉这种处理方式并不是很好,出现重复发消息的问题,又通过其它方式来删除掉这些消息。。。我对代码做了一

2016-06-16 18:08:16 572

原创 对Hongyang大神文章《Andoird 自定义ViewGroup实现竖向引导界面》的阅读笔记

项目中有这种页面需求,正好hongyang大神的文章比较吻合,就仔细阅读了一下。其中做了一些自己的理解性注释:1、原文链接:http://blog.csdn.net/lmj623565791/article/details/236924392、效果:3、布局类的源码及注释:public class VerticalLinearLayout e

2016-06-16 14:58:05 590

转载 SwipeMenuListview源码解析

SwipeMenuListView 是一个像 Android QQ 那样在 ListView 中拉出菜单的开源库。SwipeMenuListViewSwipeMenuListView 是一个很棒的 ListView 控件,但是现在作者已经没有维护了。使用添加依赖123dependencies { compil

2016-06-15 10:34:40 2289

原创 对XListView 原理的理解

一、从用户操作角度分析源码的组成XListView是一个很不错的实现了下拉及上拉刷新的listview控件,虽然已经停止维护了,但其基本功能还是被不少app在使用的。既然要实现上拉及下拉刷新,就以下拉为例来讨论一下:首先,下拉是用户的一个动作,用户按住屏幕后手指下移一定距离后再抬起手指,这是listview顶端出现额外的提示内容,当移动距离达到一定条件,就允许刷新动作。同时,listv

2016-06-13 08:58:44 2418

转载 Java设计模式透析之 —— 单例(Singleton)

写软件的时候经常需要用到打印日志功能,可以帮助你调试和定位问题,项目上线后还可以帮助你分析数据。但是Java原生带有的System.out.println()方法却很少在真正的项目开发中使用,甚至像findbugs等代码检查工具还会认为使用System.out.println()是一个bug。 为什么作为Java新手神器的System.out.println(),到了真正项目开发当中会被唾弃呢?其

2016-06-08 09:53:53 295

《Python核心编程 第二版》

《Python核心编程 第二版》据网上流传是由论坛成员合力翻译而来。格式略显粗糙但内容决定不可多得。本人也是从它开始真正接触Python这门语言。相信它不会让你失望的。

2015-10-20

ubuntu权威指南

本资料为影印版,带详细目录。内容完整 全书共24章,是学习和维护ubuntu系统不可多得的参考资料。

2015-10-20

gson谷歌提供的JSON解析专用包.rar

这是自己在Android开发过程中用到的一个数据包,用于解析服务器端发来的JSON数据。

2015-04-14

Android Studio常用快捷键

快捷键的总结,希望对大家有帮助。我是越来越喜欢AS了。

2015-04-14

Android Studio 1.0版安装教程参考

这是自己安装过程中遇到问题的总结及首次使用及创建工程的方法。希望对大家有帮助。 AS现在正在使用中,感觉良好。有什么问题可以交流。

2015-04-14

Debug与Release解析

在使用visual stutio 2010时的一点儿疑问的解答。

2013-03-28

ASP.NET4学习笔记

一份不错的学习笔记。给大家压缩了一下,共六个文件,内容详细。可以跟权威解析一起学习。

2013-03-28

Asp.net夜话

网上看了好些资源下载后都打不开,在一个群里找到的资源,来跟大家分享下。

2013-03-28

[ASP.NET 4权威指南]

这是我自己学习[ASP.NET 4权威指南]用的工具书,里面有不少自己的学习记录,也做了相应的标签。这是第二部分

2013-03-28

[ASP.NET 4权威指南] 影印版

这是我自己学习[ASP.NET 4权威指南]用的工具书,里面有不少自己的学习记录,也做了相应的标签。这是第一部分

2013-03-28

谷歌地图接口整理

包括:基础知识,核心类,接口控件,并且都补充有示例。

2013-03-06

华为内部LINUX学习资料(PDF格式)

第 1章 命令行操作及常用命令使用 第 2章 文件查看/编辑方法 第 3章 网络配置及操作 第 4章 常用使用技巧

2011-12-10

实用UNIX教程

蒋砚军:《实用UNIX教程》 共分8章讲,从课程介绍到网络程序开发

2011-12-10

linux新手管理员指南

新手管理员指南

2011-12-10

Linux初学者入门优秀教程

Linux初学者入门优秀教程 Linux初学者入门优秀教程

2011-12-10

linux全套课件

从一个一无所知的菜鸟到现在,它对我的linux的学习帮助很大,这是老师给的。希望对你们也有帮助

2011-12-10

人事工资管理系统

由于课程作业的需要在网上找了这个系统。 jsp代码完善,只需将access数据库连接数据源导入到oracle数据库中(注意:导入之后的表名和列名都默认带有双引号,最好用alter语句修改之)即可。 而数据库中的一系列操作的代码在文件:我的oracle程序内部结构.txt中

2011-12-10

代码之美(含中文版英文版)

《Beautiful Code》是由Greg Wilson在2006 年构思的,本书的初衷是希望从优秀的软件 开发人员和计算机科学家中提炼出一些有价值的思想。他与助理编辑Andy Oram一起走访了世界 各地不同技术背景的专家。本《代码之美》精选版是从原书中精选出其中的 6 章

2011-12-03

jsp网站源码

一个不错的jsp代码,可以作为基础学习的引路资料

2011-12-03

《JSP与racle动态网站开发》光盘内容

刚上传了《JSP+racle动态网站开发》,而这是对应的光盘内容 各个实例的源代码

2011-11-20

windows程序设计课件4

这是俺们老师的课件,内容全面,他的课程很是生动啊……

2011-06-12

windows程序设计课件3

这是俺们老师的课件,内容全面,他的课程很是生动啊……

2011-06-12

windows程序设计课件2

这是俺们老师的课件,内容全面,他的课程很是生动啊……

2011-06-12

windows程序设计课件

这是俺们老师的课件,内容全面,他的课程很是生动啊……

2011-06-12

MATLAB7_0基础教程_清华大学

详细讲述了matlab中的数值计算 、符号预算、 图像处理 等功能

2011-04-24

数学建模——————基础

数学建模基础学习的好资料 数学模型是关于部分现实世界和为一种特殊目的而作的一个抽象的、简化的结构

2011-04-24

C语言缺陷与陷阱(笔记)

C语言像一把雕刻刀,锋利,并且在技师手中非常有用。和任何锋利的工具一样,C会伤到那些不能掌握它的人。本文介绍C语言伤害粗心的人的方法,以及如何避免伤害。

2011-04-17

空空如也

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

TA关注的人

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