- 博客(112)
- 资源 (8)
- 收藏
- 关注
转载 Cocos Create中使用对象池
1.先声明一个预制体cc.Class({extends: cc.Component,properties: {obj:cc.Prefab,},});2.创建一个管理节点对象的对象缓存池,并且将对象存入对象缓存池中,暂设数量为5cc.Class({extends: cc.Component,properties: {obj:cc.Prefab,},onLoad () {this.Obj_Pool=new cc.NodePool();let initCount = 5;for (l
2020-09-30 09:13:37 355
转载 (转)Android高级进阶--插曲-从Android5.0到Android9.0各版本变化
原文:https://blog.csdn.net/gaoxiaoweiandy/article/details/83216001 从Android5.0到Android9.0 自从公司提出了一些出其不意的需求之后我就下定了决心去了解安卓各版本系统的差异。这些出其不意的需求要么属于黑客行为,要么还不成熟,很难顺利的实现...
2018-11-03 18:06:48 3033 1
转载 Python2和Python3共存时安装BeautifulSoup4
问题同时安装有python 2.7.6和python 3.4.0,需要在python 3.4.0上面安装BeautifulSoup4,而直接采用下面命令:sudo apt-get install python-bs41则将BeautifulSoup4安装在了python 2.7.6上面。采用什么方法将其安装在与python2.7.6共存的python 3.4.0上面呢?
2017-11-19 10:36:57 639
原创 在SurfaceView中,用Canvas.drawBitmap,设置透明度无效的问题
之前没注意过,在Canvas中,drawBitmap,如下:private void drawBitmapForAlpha(Canvas c,Bitmap bmp,int x,int y,int alpha) { bmp.setHasAlpha(true); Paint paint = new Paint(); paint.setAlpha(al
2017-01-18 08:23:32 3581
原创 编译CM-13.0的注意事项
这周下载编译,并且烧录了CM-13.0的代码,列一下过程中遇到的问题1、CM的代码怎么下载就不说了,如果下载过Android源码的,都会,无非是配一下git和repo具体步骤CM的官网上写得很清楚,我的设备是Nexus7,参考的是https://wiki.cyanogenmod.org/w/Build_for_flo这里要注意的就是,下载代码要连VPN,由于我的VPN速度不是很
2016-10-25 20:50:14 842
转载 CM13编译错误解决
(/home/cm13.0/out/target/common/obj/JAVA_LIBRARIES/org.cyanogenmod.platform.sdk_intermediates/classes)javac: 找不到文件: /home/cm13.0/out/target/common/obj/APPS/org.cyanogenmod.platform-res_intermediates
2016-10-23 23:56:51 1739
原创 Android framework修改----Android原生字体,连体字效果
Android5.0以后,字库的加载方式和之前的不一样,有些字母,带有连体字效果,比如fi根据需求,要去掉这种效果frameworks/minikin/libs/minikin/Layout.cpp 修改if (fabs(ctx->paint.letterSpacing) > 0.03)将这一行屏蔽,就可以了。
2016-05-10 18:17:24 2547 1
原创 Android framework修改----关屏动画效果
Android5.0以后关屏采用了CRT电视特效,本身是蛮好的东西,但是由于项目需求,觉得关屏太慢了,需要修改速度代码位置:services/core/java/com/android/server/display/DisplayPowerController.java动画是通过mColorFadeOffAnimator来实现的 mColorFadeOffA
2016-04-29 11:24:47 3391
转载 Android 系统快捷开关
在Android源码中,提供的快捷开关相对是比较少的,Android4.0系统默认提供的桌面快捷开关AppWidget上只有5种开关(分别是Wifi开关、蓝牙开关、GPS开关、同步开关、亮度设置开关)如下图所示: 当然,有时候就需要开发实现承载更多的快捷开关的AppWidget来实现用户体验,所以,本文主要针对这些开关的主要代码实现来重点解决开发这些快捷开关
2016-01-05 16:49:13 1286
原创 统计apk或者jar包方法数量
有时候咱们开发应用的时候,由于使用了大量的第三方的控件和jar包,导致apk的方法数量超出了限制,那到底超出了多少呢?咱们可以通过一些工具来统计这里我们使用dex-method-counts-master来统计。使用方法:将下载的dex-method-counts-master解压,然后输入:./dex-method-counts-master "文件名" 就OK拉下载地址
2015-12-15 17:02:23 2626
原创 SonarQube 安装使用
1、下载SonarQube客户端http://www.sonarqube.org/downloads/这个我下载的时候连不上,翻墙以后下载就比较快,我会把压缩包共享出来2、下载完以后解压,进入bin目录,选择对应自己的操作系统。点击就可以启动3、在浏览器输入http://localhost:9000/,就可以进入SonarQube,用户名和密码默认为
2015-12-15 09:10:00 816
转载 Android插件化开发
客户端开发给人的印象往往是小巧,快速奔跑。但随着产品的发展,目前产生了大量的门户型客户端。功能模块持续集成,开发人员迅速增长。不同的开发小组开发不同的功能模块,甚至还有其他客户端集成进入。能做到功能模块开发和发布的独立,能像Html5一样能帅气的解决bug并动态更新到用户的手机,一直是客户端开发的梦寐以求的特性。一、问题提出 一般的,一个Android应用在开发
2015-12-11 10:52:31 910
原创 SystemUI源码提取到eclipse中编译
SystemUI源码提取到eclipse中编译SystemUI本身和系统的关联性比较大,在4.4以后,SystemUI和锁屏又整合在一起了。为了方便看代码和调试,将5.1的SystemUI提取出来(包括锁屏).以下是具体的步骤:Step 1将/frameworks/base/packages/SystemUI copy出来,在eclipse中导入工程。将/frameworks/
2015-10-13 11:14:19 2860
转载 下载Android 源码
国内被墙后如何获取android源代码按照http://source.android.com上的步骤并不能获取android源代码,估计又是被墙了。不过经过研究发现可以从一些镜像站点上获取android源代码Step 1.按照http://source.android.com/source/initializing.html配置好android编译环境Step 2.按照
2015-09-06 10:23:35 608
转载 跟我一起学习VIM - The Life Changing Editor
目录写在前面:Life Changing Editor什么是VIM为什么选VIM为什么选其它为什么犹豫选择它们VIM >= SUM(现代编辑器)如何学习VIM一秒钟变记事本VIM的基本用法VIM进阶:插件插件管理神器:Vundle配色方案导航与搜索自动补全语法其它终极配置: spf13与其它软件集成一些资源写在最后搭完网站之后的第一篇文章有些
2015-08-14 10:41:23 736
转载 GitHub上史上最全的Android开源项目分类汇总
Android开源项目分类汇总如果你也对开源实现库的实现原理感兴趣,欢迎 Star 和 Fork Android优秀开源项目实现原理解析 欢迎加入 QQ 交流群: (入群理由必须填写群简介问题答案) 214742675(五群) 377723625(一群已满) 383537512(二群已满) 63224677(三群已满) 148844489(四群已满) 不要重复加群
2015-07-21 16:02:02 2689
转载 快速Android开发系列通信篇之EventBus
先吐槽一下博客园的MarkDown编辑器,推出的时候还很高兴博客园支持MarkDown了,试用了下发现支持不完善就没用了,这次这篇是在其他编辑器下写的,复制过来后发现。。太烂了。怎么着作为一个技术博客社区,对代码的支持应该完善一下吧,`行内代码块`不支持就算了,代码段内还不能有空行,一有空行就识别不了了。而且试着用MarkDown发了篇草稿,右边的侧边栏竟然被挤到屏幕下方了,还影响到了博客布局。。
2015-05-08 10:46:28 598
转载 AlertController解析
跟以前一样,先看下AlertController类中的私有成员变量:[java] view plaincopyprivate final Context mContext; private final DialogInterface mDialogInterface; private final Window mW
2015-04-27 15:51:57 4130
转载 AlertDialog源码解析
按照惯例,先看类说明:[java] view plaincopyA subclass of Dialog that can display one, two or three buttons. If you only want to display a String in this dialog box, use the setMessage
2015-04-27 15:50:50 1637
转载 关于android屏幕分辨率
不少设计师和工程师都被安卓设备纷繁的屏幕搞得晕头转向,我既做UI设计,也做过一点安卓界面布局,刚好对这块内容比较熟悉,也曾在公司内部做过相关的讲座,在此,我将此部分知识重新梳理出来分享给大家!1、了解几个概念(1)分辨率。分辨率就是手机屏幕的像素点数,一般描述成屏幕的“宽×高”,安卓手机屏幕常见的分辨率有480×800、720×1280、1080×1920等
2015-03-31 16:48:41 827
原创 Android 5.0 Service Intent must be explicit
Android 5.0程序运行报Service Intent must be explicit错误,原因是5.0的service必须显式调用改成 Intent intent = new Intent(mContext, IService.class);或者 Intent intent = new Intent("com.xx.xx.Service").setPackage("xx.xx.x
2015-03-25 09:06:35 8286
转载 Android播放声音SoundPool、MediaPlayer、AudioTrack
Android平台中关于音频播放有以下三种方式: 1.SoundPool ---- 适合短促且对反应速度比较高的情况(游戏音效或按键声等) 2.MediaPlayer ---- 适合比较长且时间要求不高的情况 3.AudioTrack ---- 播放解码后的PCM码流方法一:SoundPool1)SoundPool简介
2015-03-11 19:51:03 1633
转载 MP3帧头格式(CBR,VBR)
1.介绍这篇文章的目的是讲解MPEG音频帧头的结构(包括XING和VBRI)。并能尽快和精确地计算一个MPEG文件的播放时长。因此不会涉及到关于音频数据的编解码的相关知识。MPEG音频文件构建于layer。最常见的是MPEG-1 Layer III (既MP3),它应用了比较成熟的压缩技术。2.MPEG音频帧一个MPEG音频文件是由很多帧数据组成。每一帧包含了一个帧头以
2015-02-03 16:08:16 1352
转载 Android Camera Preview ANativeWindow的处理
从JNI的调用看,Java通过surfacetexture来显示preview。CameraService通过surfacetexture获取ANativeWindow,向OpenGL传递数据。ANativeWindow的函数实现是在CameraHardwareInterface.h中, struct camera_preview_window { str
2015-01-19 16:12:47 1597
转载 Android Camera数据流分析全程记录
花了不少时间在这个数据流的分析上面,自己毕竟没怎么做过android,这里记录一下自己的见解,任何理解错误还望高人指教,以后还需慢慢纠正整个分析过程从app的onCreate开始:packages/apps/OMAPCamera/src/com/ti/omap4/android/camera/Camera.java在onCreate中做了很多的初始化,我们真正关注的是一下几条语句:
2015-01-14 20:00:44 4354
原创 WAVE格式解码分析
经过大半个月的学习,了解了分离器、解码器。学习了WAVE格式音频的解码,其中包括:MS_ADPCM、DVI_ADPCM。这里对这段时间的学习做个总结 1、了解WAVE格式数据结构。WAVE格式的文件的基本构成是称为”块”(Chunl)的单元。一般如下:-----------------------------------------------| RIFF CHU
2014-12-30 11:08:53 1781
转载 android camera4.2.2导入eclipse编译
1、 编译Android4.2的源码,目的是为了得到后面的四个classes文件,如果通过其他途径有这四个文件也可以不编译。4.2的源码编译需要在64位机子上。这四个文件稍后会上传到网上。 2、 将F:\AndroidSource4.2_r1\packages\apps下的Gallery2文件夹和Camera文件夹复制到桌面一份,后续将先导入Gallery2再导入Camer
2014-10-09 11:05:39 1360
转载 Eclipse设置文件默认打开方式
在开发中,我们打开文件时,默认的不是我们需要的打开方式. 所以我们就用右键文件,选择打开方式. 时间长了很麻烦,其实我们可以设置文件(jsp,xml...)默认打开方式. windows ==> preferences ==> General ==> Editors ==> file Associations, 选中文件类型,再选中你需要的打开方式(
2014-10-04 09:29:18 2868
转载 Android的系统服务一览
System_Server进程运行在system server进程中的服务比较多,这是整个android框架的基础 Native服务SurfaceFlinger 这是framebuffer合成的服务,将各个应用程序及应用程序中的逻辑窗口图像数据(surface)合成到一个物理窗口中显示(framebuffer)的服务程序 Java服务:这部分的服务大部分都有一个
2014-09-30 11:36:14 571
转载 Android OTA 升级之四:进入根文件系统
前言 从bootloader 进入Recovery 模式后,首先也是运行Linux内核,该内核跟普通模式没有区别(减轻了BSP开发者的任务)。区别从执行文件系统开始。 Recovery 模式的细节就隐藏在其根文件系统中。 下面,我们就看看进入Recovery 根文件系统都干些啥。 init.rc 和正常启动一样,内核进入文件系统会执行/ini
2014-09-29 15:01:20 765
转载 Android OTA 升级之五:updater
前言 可以说,前面分析的OTA升级的各部分代码都是在搭一个舞台,而主角现在终于登场,它就是updater. Google的代码架构设计非常好,各部分尽量松耦合。前面介绍升级脚本时,可知有两种类型的脚本,amend & edify. 他们各自对应一个updater.这里,我们主要关注新的edify的updater. Updater可以作为学习解释器/编译器的同学一个很
2014-09-29 15:00:31 639
转载 Android OTA 升级之二:脚本 ota_from_target_files
前言 前面介绍了ota package 的编译过程,其中最核心的部分就是一个 python 脚本:ota_from_target_files. 现在我们分析这个脚本。先看一下帮助不带任何参数,先看一下它的帮助:[c-sharp] view plaincopyprint?$ ./ota_from_target_files Given a t
2014-09-29 14:59:31 585
转载 Android OTA 升级之三:生成recovery.img
前言 得到了ota升级包后,我们就可以用它来升级系统了。Android 手机开机后,会先运行 bootloader。 Bootloader 会根据某些判定条件(比如按某个特殊键)决定是否进入 recovery 模式。Recovery 模式会装载 recovery 分区, 该分区包含recovery.img。recovery.img 包含了标准内核(和boot.img中的内核相同)以
2014-09-29 14:58:49 622
转载 Android OTA 升级之一:编译升级包
前言 OTA 升级是 Android 系统提供的标准软件升级方式。 它功能强大,提供了完全升级、增量升级模式,可以通过 SD 卡升级,也可以通过网络升级。 这里,我们先研究最简单的情况,通过 SD 卡进行完全升级。 如何执行升级就不多说了,网上有很多资料。(比如,介绍HTC手机如何升级)。我们感兴趣的是它是如何实现的,作为开发者,如何修改它以符合我们
2014-09-29 14:58:06 692
转载 Linux makefile 教程 非常详细,且易懂
什么是makefile?或许很多Winodws的程序员都不知道这个东西,因为那些Windows的IDE都为你做了这个工作,但我觉得要作一个好的和professional的程序员,makefile还是要懂。这就好像现在有这么多的HTML的编辑器,但如果你想成为一个专业人士,你还是要了解HTML的标识的含义。特别在Unix下的软件编译,你就不能不自己写makefile了,会不会写makefile,从一
2014-09-26 11:35:04 530
转载 grep命令梳理
一:grep的工作原理 grep命令在一个或多个文件中查找某个字符模式,如果这个模式中包含空格,就必须用引号把它括起来。grep命令中,模式可以是一个被引号括起来的字符串,也可以是单个词。位于模式之后的所有单词都被视为文件名。grep将输出发送到屏幕,它不会对输入文件进行任何修改或变化。grep返回的退出状态为0,表示成功。退出状态为1,表示没有找到。如果找不到指定的文件,退出状态为
2014-09-25 16:19:16 711
转载 Android Camera CameraHal.cpp 分析
作为上层和底层的中转站,hal层在android中起到的作用不言而喻,针对camera的研究已经有一段时间了,这里自己还是决定静下心来好好的分析一下CameraHal.cpp这里的代码,对自己更好的理解hal与上层和底层的交互作用不可小觑,特别对理解hal与kernel driver的交互过程作用很大不多说废话了,开始今天的主题我们首先从CameraHal的初始化,那么他是从哪里开
2014-09-23 17:18:05 2049
转载 在MFC里使用GDI+
1. 在"stdafx.h"里加入以下:#include using namespace Gdiplus;#pragma comment(lib, "gdiplus.lib") 2. 为CWinApp的派生类增加两个成员:ULONG_PTR m_gdiplusToken;GdiplusStartupInput m_gdiplusStartupInput;
2014-09-05 09:40:41 882
转载 IPicture总结
1、IPicture接口对象的创建 方法1:直接通过文件创建LPCSTR szFileUrl; IPicture *pIPicture; OleLoadPicturePath(CComBSTR(szFileUrl), (LPUNKNOWN)NULL, 0, 0, IID_IPicture, (LPVOID*)&pIPi
2014-09-05 08:48:43 623
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人