- 博客(130)
- 资源 (10)
- 收藏
- 关注
原创 Android4.0.3中的提示音
一、ToneGenerator的使用参照com.android.contacts.dialpad.DialpadFragmentToneGenerator只能播放在ToneGenerator中定义好的TONE_TYPE。1、常量申明/** Tone音的长度,单位:milliseconds */private static final int TONE_LENGTH_MS =
2013-05-20 08:56:06
4212
原创 Android中后台显示悬浮窗口的方法
想照着音量对话框的做法,作一个在后台显示Dialog的方法,可是在Dialog.show()的时候,出了下面这个异样:android.view.WindowManager$BadTokenException: Unable to add window android.view.ViewRootImpl$W@411da608 -- permission denied for this windo
2013-04-25 14:05:20
3568
原创 自制ADB驱动
对于不能正常安装ADB驱动的设备,直接在设备管理器的这个设备的右键属性 -〉 详细 -〉 硬件ID USB\VID_0930&PID_0963&REV_0229&MI_01USB\VID_0930&PID_0963&MI_01然后编辑[android-sdk\extras\google\usb_driver\android_winusb.inf]在[Google.NTx86]和[G
2013-03-12 14:21:21
912
转载 80x86寄存器
80x86寄存器 【注意】本文使用到的汇编指令的语法是Intel汇编语法,除此之外的内容与汇编语法无关 【80x86寄存器】 32位CPU所含有的寄存器有: ・4个32位通用寄存器(EAX、EBX、ECX和EDX) ・2个32位变址和指针寄存器(ESI和EDI) 2个32位指针寄存器(ESP和EBP) ・6个[16位(段选择符)+隐藏部分(描述符缓冲)]段寄存器(
2013-02-18 16:27:13
4140
原创 针对某项目中QNX驱动的反思
第一次接触驱动层的东西,心里还有点小激动。总感觉自己比没搞之前提高了那么一点点,也不知是真的假的,拉出来遛遛。 1.整体思路 ★驱动层 先从驱动层说起,他将USB设备通过Resource Manager注册成一个文件,提供 IO服务:① :通过USB控制接口登陆回调函数② :通过USB的回调函数“insertion”,也就是USB插入信号来生成Reso
2013-02-04 17:29:20
1589
原创 嵌入式系统中状态机的应用
某项目中在业务逻辑的处理过程中需要处理多种的中断信号,导致逻辑部分的代码被搞得支离破碎。一直在想有没有好点的,漂亮一点的方法。这次在一个后续的项目中真好有一个重写这部分代码的机会,就拿它开开刀,拉出来练练。 1.分离逻辑处理和中断处理 在原来的实现中因为没有区分处理的原有逻辑和中断逻辑,才导致到处都是大段大段的if/else的。所以上来就将处理逻辑和中断逻辑砍开: ・处理逻辑:
2013-02-04 15:11:58
2997
原创 Python将多个文件合成一个大文件,忽略非法字符
想把一堆文件合成一个大文件,但是里面有好多无法识别的字符,每次执行总是抱错,最后找到了codecs的ignore相当好用import osimport codecs#遇到非法字符时,不报错,直接写入后继续执行wFile = codecs.open("d:\\output.log","w","utf-8","ignore")for file in os.listdir("d\\inpu
2012-09-27 08:50:17
2014
原创 从Access中导出Excel文件的宏
最近需要从Access中抽出一些数据,手工操作太麻烦,所以写了宏来帮忙。作用: 将制定Table中的数据,作为检索条件,分别抽出数据并导出到Excel文件中。Option Compare DatabasePrivate Sub export() On Error GoTo ERROR_HANDLER Dim daoDB As Dat
2012-07-05 16:05:23
2700
原创 自动登陆网站,并定期获取信息
最近报了驾校,因为是普通类,所以每次都要自己预约。而且一次只能预约3个小时。消化了这3个小时才能预约下一次。等我消化了这3个小时后,才发现半个月内的都已经被预约完了。没办法,只能自己没事刷刷看,有没有取消的。 昨天终于刷烦了,干脆写个程序帮我刷,有事没事,我看看结果就行。网上下了一个HttpClient,看看教程搞了一个。 Fiddle截获Http电文挺好用的package m
2012-06-14 14:43:35
929
转载 E-State:企业级状态机 - 来自ROOM的框架
正在愁怎么用状态机整理项目里的通信,找到这篇。参照一下整理的时候用:状态表演示的时候用状态图实现的时候?想把状态机的实现和业务逻辑分开应该是状态机,facade,逻辑。逻辑独立与状态机,通过facade组合进去E-State和工作流我在前面的文章“状态机与工作流(State Machines and Workflow)”(WLDJ,卷3,第1期)中讨论过工作流和
2012-02-01 16:47:09
813
原创 Python--遍历+合并目录
下了android2.2的代码后发现都是放在一个个子目录里的,不好用eclipse直接参照过去,所以准备把他们整到一个目录。手工的话怕麻烦,而且前段时间看过python,决定就拿它炼炼手了。在baidu的帮组下搞出来下面这个东西。#!/usr/bin/env python
2011-09-22 12:13:55
1131
原创 读《Software Architecture in Practice》--001.关于架构
看andengine准备裁减以下改进一下自己的小游戏,觉得直接抄的话没意思,就想自己参照着写一个。可是参照参照就又变成抄了。印象中andengine有一个BaseGameActivity,所有抄的时候就以它为基础。一点点往下搭的时候,越搭越不爽,因为里面的东西都是相关的,接口加在
2011-09-09 12:22:20
2100
原创 andengine中的ParticleSystem
看ParticleSystemSimpleExample,看得眼冒金星也没有看出来为什么那写笑脸会从左下角出来,并以抛物线的轨迹在东。实在没办法了,觉得调试一下试试看,发现实际跑出来的和那个笑脸的不一样,坑嗲啊。 网上查了一下粒子系统的定义,感觉应该是这么回事:粒子系统
2011-08-25 08:50:58
2930
原创 andengine中的pool
在看屏幕事件处理的时候,看着又是TouchEventPool、又是RunnablePoolUpdateHandler的,有点晕。就把pool单独拿出来看看,发现还是挺简单的,就是层次多了点。・GenericPool:使用堆栈保存未使用的元素,开放onAllocatePoo
2011-08-25 08:48:26
1038
原创 andengine中的屏幕事件
1.OnTouchListener的注册 ・BaseGameActivity.onLoadEngine():生成引擎 ・BaseGameActivity.onSetContentView():生成View ・RenderSurfaceView.setRender
2011-08-25 08:46:22
2494
原创 andengine中的Texture
看到AnimatedSpritesExample中咵咵几下就搞出四个挺牛叉的动画,来看看到底是咋整地。一、Texture体系 1、纹理分为两类 ★Texture:保存纹理本身的信息,如大小,格式和图片信息啥的 ・Texture中的BitmapTextur
2011-08-19 15:17:05
5746
1
原创 andengine中的IModifier
看完了EntityModifierExample,总结一下IModifier。1、IModifier的作用 IModifier是针对各种控件作变换用的接口。它使用策略模式将各控件的变换算法抽象出来。2、IModifier的实现体系 IModifier接口定义了
2011-08-18 17:28:10
1997
原创 andengine的更新时序
每次andengine的Engine在描画结束后都回激活UpdateThread进入更新作业更新作为分为以下三个层次・Engine层:具体作用不明,可能以后会用到・Scene层:更新背景和所有子控件・控件层:更新子控件的每层的更新操作又分为以下
2011-08-18 11:02:36
1287
原创 andengine的描画流程
BaseGameActivity调用onLoadEngine()生成引擎 BaseGameActivity生成RenderSurfaceView,并将引擎作为Renderer穿给了它 BaseGameActivity在显示前的doResume()方法中调用onLo
2011-08-18 10:52:25
1515
原创 使用andengine绘制静态图像
之前搞的那个android小游戏,画面总是感觉有点卡,虽然尝试着把View换成了SurfaceView,而且还加了一些其他的改动,可是还是有点卡。总觉得很业余。准备用OpenGL ES重新写一下。网上一查好像还有些游戏引擎。找到了andengine,就从它开始学习了。先不搞引擎的原理,从使用上开始学习。一、使用Andengine绘制静态图像 看了AndengineExamples里的S
2011-08-18 10:37:43
1798
1
原创 Android界面系统与使用过的界面系统的对比
用过比较完整的Java界面系统算了Android一共四个。一、最早的是一个叫VisualFrame的产品,刚接触的时候感觉比较新颖: ①、一个比较完整的Java界面编辑工具。界面编辑,画面迁移都作的挺不错。最后以xml保存。 ②、服务器通信等做的也挺不错。 ③、而且还能通过
2011-07-28 17:48:56
736
原创 SimplePentomino的总结
一、由来 前段时间李san推荐了一个iphone上的五联方小游戏,觉得挺有意思。准备也下一个玩玩。可是回去一搜android上竟然没有这个游戏。决定自己搞一个,顺便也学习学习android,据说以后会很火。现在也差不多搞完了,回头总结一下。二、概要设计 1、游戏页面的类图
2011-07-28 14:35:32
526
原创 android中对2.0以前版本的支持
最近写了一个针对android2.2的小游戏,放到google market以后发现还有一些系统版本为1.5,1.6的人下载。放到模拟器上一测发现竟然都不能启动。在网上查了半天,终于解决了问题。写下来留个记录。1,修改BACK键的响应方式。 2.0以前,BACK键在onKeyD
2011-07-28 10:34:58
632
原创 windows批处理参数的处理
1、将所有参数两端加上双引号SET PARAM=:LOOP IF [%1]==[] GOTO END SET PARAM=%PARAM% "%~f1" shift GOTO LOOP:ENDecho %PARAM% 说明:windows的批处理中没有提供类似于[$#]这样直接取得参数个数的内在变量,只能这样处理了。 普通参数的访问为[%1],[%~f1]表示将参数一
2011-02-09 16:51:00
2195
转载 java程序性能优化
1、避免在循环条件中使用复杂表达式2、为'vectors' 和 'hashtables'定义初始大小3、在finally块中关闭stream4、使用'system.arraycopy ()'代替通过来循环复制数组5、让访问实例内变量的getter/setter方法变成”final”6、避免不需要的instanceof操作7、避免不需要的造型操作8、如果只是查找单个字符的话,用charat()代替startswith()9、使用移位操作来代替'a / b'操作10、使用移位
2010-07-21 09:44:00
378
原创 基于双缓存的嵌入式画面系统的设计
一、需求 一个嵌入式项目中的画面,每次迁移的时候总是会发生无法忍受的闪屏。系统中的画面时基于AWT的,考虑下来闪屏主要是以下两个方面: 1)、画面生成特别慢,应该是AWT中实现的功能太多,影响了画面生成的效率 2)、画面刷新时,总是会先刷背景,再画内容。由于硬件性能的影响,整个刷新过程可以看到很明显的闪屏。 在这里记录以下解决过程
2010-07-01 18:00:00
797
翻译 QNX的启动
v/:* {behavior:url(#default#VML);}o/:* {behavior:url(#default#VML);}w/:* {behavior:url(#default#VML);}.shape {behavior:url(#default#VML);} Normal 0 0 2
2010-05-16 16:22:00
2959
翻译 Hardware connection
QNX Neutrino在启动时会启动一个设备管理器(device enumerator),它会监测多数硬件的驱动。这个管理器会根据/etc/system/enum/devices里定义的信息,来定义在添加或移除硬件是系统应该作什么。一、PCI/AGP 设备 你可以使用下面的命令来查询你使用的控制器的型号: pci -vvv二、USB设备 USB Bus(Univ
2010-05-16 13:23:00
1102
翻译 QNX4文件系统与文件系统的恢复
QNX4 文件系 统 是 QNX Neutrion 默 认 的操作系 统 ,它使用与 QNX4 文件系 统 一 样 的磁 盘结 构,由 fs-qnx4.so 提供,当使用 devc-* 加 载 QNX4 文件系 统时 自 动 加 载 。它使用 (extent-based) , 带 指 纹 的位 图 分配方式,有效防止了数据 丢 失,并且更容易恢复。 ・ 基于 POSIX 文件系统
2010-05-10 16:20:00
2357
翻译 QNX的字符IO
一、简介 字符设备是一种通过一组串行字节进行IO操作的设备,与块设备(如硬盘)不同。PC上的典型字符设备有: ・serial ports:串口 ・parallel ports:并口 ・text-mode consoles:字符模式的控制台 ・pseudo terminals(ptys):虚拟终端 程序通常使用标准的open()、close()、read()、wr
2010-05-09 14:10:00
1515
原创 关于QNX文件系统的悲剧
公司最近开发的系统中偶尔会发生文件的损坏和目录的丢失,在调查的过程中发现使用自己不了解的东西总是要付出代价的。这里记录下调查的过程: 首先在测试环境了作了以下两个实验: ①长时间连续读写文件 ②写文件中断电 实验①在15小时的连续读取中没有发生文件损坏及目录丢失、实验②20次的断电实验中也没有发生即存文件的损坏,这是唯一的一个好消息,说明这个问题发生的机率很低。
2010-05-08 18:38:00
1925
1
翻译 QNX的文件系统
QNX支持多种文件系统。多数文件系统都是挂在指定路径下的资源管理器。QNX的文件系统有如下特点: ・文件系统能够动态启动和终了 ・多个文件系统可能同时运行 ・提供给程序一个与配置和文件系统数无关的、统一的路径空间和接口 ・一个点上的文件系统对于其他点时透明的?一、简介1、Filesystem的种类 ・Image:一个特殊的文件系统,在Image中提供各
2010-05-08 11:05:00
3707
原创 QNX中库的链接与资源管理
一、链接 系统中会提供一些共同的库,如printf()、malloc()、write()等。 静态链接(Statically link)是说程序与特定的库文件在链接时链在一起,这时我们不能改变这种链接状态,除非我们重新链接。静态链接的程序通常以.a结尾,如libc.a。 动态链接(Dynamically link)是说程序中包含了所需要链接库的加载信息,并在运行时加载并链接这些库
2010-05-06 15:11:00
1662
原创 QNX的进程管理
QNX Neutrino中的Process Manager包含了以下三个方面: ・Process management[进程管理]:对进程的创建,销毁和进行的属性如UID(user ID)和GID(group ID)进行管理。 ・Memory management[内存管理]:管理进程的地址空间和共享库,和进程内的共享内存。 ・Pathname management[路径管理
2010-05-03 17:23:00
1707
原创 QNX中的多核处理介绍
QNX Neutrino支持以下几种多核处理模式 ・AMP(Asymmetric multiprocessing):非对称式多核处理 每个内核独立,各自运行一个操作系统 ・SMP(Symmetric multiprocessing):对称式多核处理 在SMP中,多个内核紧密耦合,并由操作系统的单个实例控制。SMP本质上是令多核器件从软件角度看是一个处理器的“核技
2010-05-03 14:19:00
1279
原创 QNX Neutrino工具版内核 [procnto-instr]
QNX Neutrino提供了一个叫procnto-instr工具版本的内核,它能够让你通过跟踪、解析来实时监视运行中的系统。工具模式[Instrumented module]是非侵入性的,也就是说你不用为了监视去修改你的程序。具体可参照[System Analysis Toolkit Users Guide]。
2010-05-03 13:44:00
1387
原创 QNX中的进程间通信(IPC)
在QNX Neutrino中消息传递(Message passing)是IPC的主要形式,其他形式也都是基于消息传递来实现的。QNX中提供了如下一个形式的IPC: Serive: Implemented in: ・Message-passing Kernel ・Signals
2010-05-03 12:49:00
2801
企业应用架构模式(中文版)
2008-05-30
皇帝新脑.pdf
2008-05-30
什么是数学:对思想和方法的基本研究 -2
2008-05-30
什么是数学:对思想和方法的基本研究 -1
2008-05-30
Apache Ant 1.5.4 Manual
2008-05-30
Building Applications Using Ant 1.6
2008-05-29
Linux系统分析与高级编程技术-1
2008-05-29
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人