android
文章平均质量分 87
秦城季
个人博客:https://qincji.gitee.io/
展开
-
回调与观察者模式的实现原理
回调与观察者模式的实现原理:废话不多说,直接上Demo回调的原理:观察者模式: A类中定义一个被观察者画家 canvas.drawText("画家画画", 50, 50, mPaint); //4.只有房间的人能看画家绘制 for(int i=0 ;i<lists.size(); i++){ lists.get(i).look(); }原创 2017-03-29 19:35:59 · 2031 阅读 · 0 评论 -
Android 图解自定义车速表
简单讲述绘制圆弧、渐变圆、时速表刻度、文字和时速指针1.前言:下图来自于度娘,截取一部分来绘制,其他的内容大同小异;而动图为所实现的效果图。 2.需求分析:如上第一张图,这些参数可能经常被变动,所以把这些做成自定义属性,方便后面修改。3.自定义属性的定义: 在values目录下新建attr.xml<?xml version="1.0" encoding="utf-8"?><resources>原创 2017-09-21 20:13:25 · 1766 阅读 · 1 评论 -
Android源码之路(一.安装Ubuntu系统)
1.前言:在VM12虚拟机创建ubuntu16.04,解决编译时:make: fork: 无法分配内存等跟window系统不太兼容的错误。 成功编译的结果2.安装ubuntu条件: 1.VMware12虚拟机 2.ubuntu-16.04.3-desktop-amd64.iso镜像文件 3.硬盘空间130g3.安装过程 (1).新建 (2).选择自定义 (3).下一原创 2017-09-10 23:44:44 · 2118 阅读 · 0 评论 -
Android源码之路(二.环境配置与整编)
为了实现在VM ubuntu 16.04 编译android 6.0源码,配置编译环境与源码的整体编译1.前言:在Ubuntu编译android源码时,编译不通过最主要的原因是缺少所要依赖资源,所以在安装依赖时一定要看是否成功。2.编译条件: 1.合适的Ubuntu系统:http://blog.csdn.net/github_38117599/article/details/77926922原创 2017-09-11 21:45:38 · 2049 阅读 · 0 评论 -
Android源码之路(三.配置Android.mk文件)
1.前言:虽然mk文件也只是偶然用到,但是前一段时间用到时花了不少的时间去弄,所以有空就整理一下。另外,这是在android6.0系统做的测试,一些例子也是依据源码的例子来的。(1)整编过得android6.0源码教程:http://blog.csdn.net/github_38117599/article/details/779383392.先配置一个最简单的mk,编译生成一个目标文件(1)在fr原创 2017-09-17 13:53:37 · 3121 阅读 · 1 评论 -
笔记之git工作使用
还记得当初刚接触git的时候因为操作不当,提交了错误代码上去git仓库,被叼飞起,因此平时工作遇到错误都做下笔记,最近有空就整理下分享出来,以便以后复习,要是有错还望指正。 这是前段时间应别人做的入门笔记:http://blog.csdn.net/github_38117599/article/details/698701191.前言:工作中使用git说简单也简单,说难也难;简单是指工作中可以原创 2017-09-16 14:41:28 · 1374 阅读 · 0 评论 -
gps冷启动,温启动和热启动源码分析
冷启动,温启动和热启动实现过程GpsLocationProvider.java 在全局定义了一个通往底层的方法,这个就是关联到flags是什么,通常做底层会封装好改接口,然后告诉你传递什么值对应着以什么方式启动,比如传入参数:冷启动:0XFFFF 暖启动:0X0001 热启动:0X0001private native void native_delete_aiding_data(int f原创 2017-08-15 16:43:31 · 3934 阅读 · 0 评论 -
Android 使用iperf测试wifi吞吐量
Android使用iperf测试wifi吞吐量大体上分为三个步骤编译生成android端的可执行文件iperf把该文件拷贝到/data/data/包名/iperf目录下根据iperf命令执行该文件第一部分,在android下编译生成iperf文件1.获取需要编译的源代码:https://osdn.net/projects/sfnet_iperf/downloads/iperf-2.0.5.t原创 2017-09-03 21:16:30 · 7531 阅读 · 2 评论 -
5.0绑定远程服务的两种方式
前言:今天闲下来翻了下以前的笔记,然后就做了个Demo,简单的使用两个apk来模拟服务端和客户端,用两种方式来绑定远程服务,实现IPC通讯。实现要点:1,先看客户端效果: 2,看两个项目的工程结构: 3,看客户端绑定远程服务的关键代码: //第一种绑定方式final Intent intentPay = new Intent();intentPay.setAction("com.xhunmo原创 2017-06-26 21:24:01 · 2487 阅读 · 0 评论 -
自定义收音机搜台控件——RadioRulerView
前言:像这类的自定义控件有非常多的开源项目,但还是没有找到我项目想要的,所以简单实现了一个,下面简单讲讲实现原理。效果图:实现思路:首先画固定背景尺子,而实现这个则要计算刻度线的宽度、刻度线间的距离,以及要确定刻度线的总是,根据这些可以求出第一条刻度线的x坐标,使得整个尺子居中;下图为尺子尺寸的计算方法:贴上关键代码: /** * 画固定的尺子 * @param canvas原创 2017-04-19 19:50:59 · 2372 阅读 · 2 评论 -
同时使用两种方式启动服务
突然看到公司项目有个地方同时使用startService()和bindService()启动服务,做了个demo测试了一下,下面直接上代码: Activity中:package com.example.test3;import android.app.Activity;import android.content.ComponentName;import android.content.C原创 2017-04-05 17:18:19 · 1823 阅读 · 0 评论 -
ps抠图的两种方式[杂]
1.前言:以前工作需要学了点抠图的技巧,输出的文档倒是很详细,但是因为隐私问题不便公开,趁周末翻出来整理下做个移动笔记,顺便复习下。 2.目标和资源:目标是要抠出来这两张图片,psd资源:http://pan.baidu.com/s/1i5CbVLj 3.方式一:单个图层–>脚本–>将图层导出到文件… (1)将两个目标图层留下,删除其他图层和组 删除前 删除后(2)选中两个图层后,文件原创 2017-10-28 19:39:12 · 428 阅读 · 0 评论