自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

硬币的博客

成功的道路

  • 博客(61)
  • 收藏
  • 关注

原创 Asset限制文件大小UNCOMPRESS_DATA_MAX为1MB

在使用Android自带的Res\raw或使用Asset时都需要经过AssetManager,这将会产生一个比较严重的问题,在Android模拟器测试时不存在问题,但放到真机G1时会面临多个问题,经过查看UNCOMPRESS_DATA_MAX的取值为1048576字节,除以1024不难发现是1MB。也就是说Android手机在处理资源文件时不能大于1mb的体积。由于标准的G1没有Root权限...

2011-05-30 10:49:40 196

原创 Android Canvas绘图抗锯齿解决方法

  对于Android来说Canvas一般大量用于自定义View和游戏开发中,对于图形的基础绘制类,提供的drawText、drawBitmap以及drawCircle都需要抗锯齿处理才能让人满意,下面Android123将他们分为两大种情况。 一、包含Paint参数情况时,对于drawText、drawBitmap这样的方法,一般最后一个参数为Paint对象,Paint对象一般用于设置笔...

2011-05-30 10:37:28 1808

原创 多国语言字符串移植

比如说 String strSite="android123.com"; // $NON-NLS-1$   这句,其实这和国家化i18n规范有关,从字符串NON-NLS我们可以翻译为 None Native Language 就是不能被本地化,出现这样的注释均为字符串,由于字符串的内容比如 android123.com ,是一个常量,我们不能翻译为Android开发网,主要是解决...

2011-05-30 10:29:40 166

原创 如何通过代码重启Android设备

很多开发者想如何重启Android设备通过编写代码的方式,大多数的设备都没有Root权限,想让设备重启比较简单的方法就想办法制造一些系统级的错误,强迫Android系统自动重启,类似Windows上Ring0级应用崩溃出现蓝屏,如果没有Root呢对于Android来说产生一个android.os.DeadObjectException的异常是一个不错的方法。...

2011-05-30 10:26:09 633

原创 【转】Android Drawable叠加处理方法

大家可能知道Bitmap的叠加处理在Android平台中可以通过Canvas一层一层的画就行了,而Drawable中如何处理呢? 除了使用BitmapDrawable的getBitmap方法将Drawable转换为Bitmap外,今天Android123给大家说下好用简单的LayerDrawable类,LayerDrawable顾名思义就是层图形对象。下面直接用一个简单的代码表示: Bitma...

2010-09-17 14:50:27 835

原创 【转】Android 实现真机远程调试并适应7寸屏大小

 <uses-sdk   android:targetSdkVersion="4"/> 加入上面代码运行效果如下: 经测试,发现版本号必须为4以上,才可支持适应全屏化,也就是说即便你写一个100也可以支持。 Tip:使用真机调试和使用模拟器调试操作是相同的。  ...

2010-09-17 14:43:03 122

原创 Android Permission List

android.permission.ACCESS_COARSE_LOCATION允许一个程序访问CellID或WiFi热点来获取粗略的位置(Allows an application to access coarse (e.g., Cell-ID, WiFi) location)android.permission.ACCESS_FINE_LOCATION允许一个程序访问精良位置(如GPS)...

2010-09-02 16:43:00 258

原创 Android 2.2兼容性移植

  近期很多手机都收到了OTA推送2.2固件,比如HTC Droid Incredible、HTC Desire G7等Android手机都开始获得Android 2.2 Froyo,而DroidX目前开始小部分推送测试。对于我们软件的兼容性有哪些影响呢?   1. 文件系统,大多数网友可能发现/sdcard/的路径已经变为/mnt/sdcard/了,所以过去硬编码相关的软件需要通过and...

2010-09-02 13:34:25 87

原创 NotificationManager and Notification

NotificationManager(通知管理器): NotificationManager负责通知用户事件的发生. NotificationManager有三个公共方法: 1. cancel(int id) 取消以前显示的一个通知.假如是一个短暂的通知,试图将隐藏,假如是一个持久的通知,将从状态条中移走. 2. cancelAll() 取消以前显示的所有通知. 3. notify(int id...

2010-08-25 10:55:05 91

原创 贝叶思咨询:中国手机游戏的创业机会

手机游戏泛指所有在手机终端上运行的游戏,中国手机游戏的发展按时间顺序大致经历了以下几个阶段:  第一阶段(1997-2000年)以内置单机游戏为主,例如很多诺基亚手机内置了贪吃蛇游戏,这是很多手机用户都曾经玩过的一款简单游戏。这个阶段手机的普及率比较低,更不要说手机游戏的发展了,自然也是在刚刚起步阶段,手机游戏开发商将游戏产品销售给手机厂商,以手机出厂时内置游戏为主。  第二阶段(2001...

2010-08-17 11:02:40 130

原创 J2me游戏开发引擎 - 包的定制(一)

      两年多没有写j2me代码了,最近公司要带一个新项目,因为是翻版项目,实在是对老项目看不过去,只能抽时间来写j2me游戏的引擎,自己早期的引擎没有插件概念,为了与时俱进,引擎的架构基本为核心类+插件包形式。      核心类中包含midlet,canvas,poolable,key&touch,插件包接口类,插件包中包含音乐包,网络包,文字处理包,工具包,特效包,ui框架包。...

2010-08-09 14:20:54 113

原创 平滑摇杆的实现

      很久不写关于游戏逻辑的文章了,略显生疏了,最近公司的项目需要用到平滑支持360度各角度摇动的摇杆,就随手写了一个,并非是区域判定的方法,那种方法很难达到用户的舒适度,体验感会下降得比较明显。      通过滑动的前后2个point来判断角度,为了舒适的平滑必须在手指离开屏幕的同时释放初始点,即如果手指没有离开屏幕时候的任何滑动的停止点都作为相对于初始点的结束点,这样做的讨巧点同样是...

2010-08-09 14:05:10 262

原创 【转】Android通过Intent发送电子邮件含附件

       如何在Android系统中发送带附件的电子邮件呢? 其实通过Intent可以很方便的发送Email,只需要短短10行代码就可以处理,这里Android开发网就以在sdcard上的android123.cwj文件为例,通过Intent来发送电子邮件。 完整代码如下 File file = new File("\sdcard\android123.cwj");...

2010-08-09 13:21:34 182

原创 java.net.SocketException四大异常解决方案

java.net.SocketException如何才能更好的使用呢?这个就需要我们先要了解有关这个语言的相关问题。希望大家有所帮助。那么我们就来看看有关java.net.SocketException的相关知识。第1个异常是 java.net.BindException:Address already in use: JVM_Bind。该异常发生在服务器端进行new ServerSock...

2010-08-03 11:42:50 13861

原创 INSTALL_FAILED_INSUFFICIENT_STORAGE调试错误的解决

     2.2之前的所有模拟器都会遇到的问题,机器内存的瓶颈,当apk大于我们的机器内存时,模拟器无情的抛出Installation error: INSTALL_FAILED_INSUFFICIENT_STORAGEPlease check logcat output for more details.Launch canceled!让我们无法调试     现在我们来根治这个问题,...

2010-07-20 11:26:31 223

原创 【转】【推】Android.mk文件语法规范及使用模板

Android.mk文件语法规范根据eoeandroid上的的连载,进行一些更新、修改和加亮。今天翻译ANDROID-MK.TXT文件(英文原文件在/development/Ndk/Docs/android-mk.txt)Android.mk文件语法规范Introduction:Android.mk编译文件是用来向Android NDK描述你的C,C++源代码文件的, 这篇文档描述了它的语法。在阅...

2010-07-15 18:14:04 96

原创 浅析android通过jni控制service服务程序的简易流程

android_net_wifi_startSupplicant这个就是jni函数=>wifi_start_supplicantstatic const char SUPP_CONFIG_TEMPLATE[]= "/system/etc/wifi/wpa_supplicant.conf";static const char SUPP_CONFIG_FILE[] = "/data/misc/w...

2010-07-15 18:03:38 133

原创 关于Linux下的umask

我们创建文件的默认权限是怎么来的?如何改变这个默认权限呢?umask是什么?当我们登录系统之后创建一个文件总是有一个默认权限的,那么这个权限是怎么来的呢?这就是umask干的事情。umask设置了用户创建文件的默认权限,它与chmod的效果刚好相反,umask设置的是权限“补码”,而chmod设置的是文件权限码。一般在/etc/profile、$ [HOME]/.bash_profile或...

2010-07-15 14:46:49 85

原创 Android 根文件系统启动过程

在Android系统启动时,内核引导参数上一般都会设置“init=/init”, 这样的话,如果内核成功挂载了这个文件系统之后,首先运行的就是这个根目录下的init程序。这个程序所了什么呢? 我们只有RFSC(Read the Fucking Source code)!!init程序源码在Android官方源码的system/core/init中,main在init.c里。我们的分析就从main开...

2010-07-15 14:45:44 71

原创 Android应用程序概述

一.    android应用程序开发方式        Android应用程序可以基于两种方式开发:Android SDK和Android 源代码二、  Android应用程序概念性描述1.     Android应用程序包含了工程文件、代码和各种资源,主要有Java编写,每一个应用程序被编译成Android的一个Java应用程序包,        即*.apk文件.2.  ...

2010-07-15 14:00:37 190

原创 【转】Android 的AudioTrack.write 暗藏机关

在Android的模拟器上测验1.5与1.6系统,发现用write输出波形数据,数据帧的个数必须是偶数。如果是奇数,线程就stuck在write里面,不返回了。这里所谓数据帧的个数是这样:波形数据的字节数 / 基本单元的字节数基本单元的字节数由初始化时候的AudioFormat来决定。ENCODING_PCM_16BIT 是2字节ENCODING_PCM_6BIT  是1字节...

2010-07-15 13:27:36 214

原创 MO,MT,Linkid的关系

       做移动互联网的过程中,有这样一些词是必须知道的,如MO,MT,GSM,LINKID上行(MO)上行的意思就是短信发送到服务器端 MO又称 Mobile Original下行(MT)下行的意思就是短信从服务器端发回到手机上,MT又称Mobile Terminated简单的说,从手机发起一个的过程叫上行(MO),到手机结束的过程叫下行(MT),比如,平时给你的朋友发送一条短信,对你来说就...

2010-07-15 11:33:08 317

原创 bitmap 设置图片尺寸,避免 内存溢出 OutOfMemoryError的优化方法

★android 中用bitmap 时很容易内存溢出,报如下错误:Java.lang.OutOfMemoryError : bitmap size exceeds VM budget  ● 主要是加上这段:BitmapFactory.Options options = new BitmapFactory.Options(); options....

2010-07-15 11:20:06 215

原创 Android中内嵌字体实现个性化

在Android中我们的应用可以灵活的内嵌自己的字体文件,实现各个手机上可以正常的显示个性化文字,我们都知道TextView的setTypeface方法可以设置目标文字的显示特性,比如字体、颜色、粗体、斜体等。我们直接找一个TrueTypeFont的字体文件即.ttf,对于Win32系统的用户可以直接在Windows/fonts文件夹中能找到很多。比如微软雅黑就不错,可是体积太大,由于Androi...

2010-06-30 11:08:02 131

原创 Android按键事件映射表和转义符对照

很多开发者表示不知道如何在Android的layout布局文件中输入类似&这样的符号,下面Android123整理了下一些案件事件映射和转义符对照表,比如说 & 在layout.xml中应该\uff06同时,从下表可以看到&和7在键盘上是同一个位置。             KeyEvent.KEYCODE_UNKNOWN,            KeyEvent.KE...

2010-06-30 10:19:00 398

原创 Android程序内存管理必读

      很多开发者都是从J2ME或J2EE上过来的,对于内存的使用和理解并不是很到位,Android开发网本次给大家一些架构上的指导,防止出现豆腐渣工程的出现。Android作为以Java语言为主的智能平台对于我们开发一些高性能和质量的软件来说了解Android程序内存管理机制是必须的。 Android的Dalvik VM在基础方面和Sun JVM没有什么大的区别仅仅是字节码的优化,我们要知道...

2010-06-30 10:14:38 71

原创 Android堆内存也可自己定义大小

对于一些大型Android项目或游戏来说在算法处理上没有问题外,影响性能瓶颈的主要是Android自己内存管理机制问题,目前手机厂商对RAM都比较吝啬,对于软件的流畅性来说RAM对性能的影响十分敏感,除了上次提到的 优化Dalvik虚拟机的堆内存分配 外,我们还可以强制定义自己软件的对内存大小,我们使用Dalvik提供的dalvik.system.VMRuntime类来设置最小堆内存为例: ...

2010-06-30 10:10:14 190

原创 优化Dalvik虚拟机的堆内存分配

对于Android平台来说,其托管层使用的Dalvik Java VM从目前的表现来看还有很多地方可以优化处理,比如我们在开发一些大型游戏或耗资源的应用中可能考虑手动干涉GC处理,使用dalvik.system.VMRuntime类提供的setTargetHeapUtilization方法可以增强程序堆内存的处理效率。当然具体原理我们可以参考开源工程,这里我们仅说下使用方法: privat...

2010-06-30 10:07:00 121

原创 EditText 监听 Text 的 改动

当EditText 的 Text 改变时 我们希望得到通知 但是可惜的是 android 并没有这个监听器 也就无从得知变化了 但是有个类可以帮助我们 那就是 TextWatcher [前提] 现有 EditText 其id = edit. [代码] 1. 定义 TextWatcher 的实例  private TextWatcher watcher = new Tex...

2010-06-19 15:27:58 66

原创 Android 什么是ContentValues类

什么是ContentValues类?ContentValues类和Hashtable比较类似,它也是负责存储一些名值对,但是它存储的名值对当中的名是一个String类型,而值都是基本类型。插入记录在这里我们将要插入的值都放到一个ContentValues的实例当中,然后执行插入操作,具体代码如下所示: public long createDiar...

2010-06-19 15:19:46 133

原创 EditText仅允许特定类型数据输入

很多网友可能在开发Android时发现EditText有时候需要限制用户输入的内容,通常我们可以使用正则表达式直接限制,但是Android已经为我们准备好了EditText的输入类型,这样的比正则要有以下几点优势:  1. 开发更简单,执行速度高效。 2. 输入法默认会根据情况变动,比如说设置为numeric后输入法会自动仅显示数字,不会出现Qwerty中的字母。  下面我们通...

2010-06-11 13:32:28 96

原创 Android程序完全退出的三种方法

很多网友可能发现自己的Android程序有很多Activity,比如说主窗口A,调用了子窗口B,在B中如何关闭整个Android应用程序呢? 这里Android123给大家三种比较简单的方法实现。  首先要说明在B中直接使用finish(),接下来手机显示的还是主窗口A,所以一起来看看Android开发网是如何实现的吧.  1. Dalvik VM的本地方法 andro...

2010-06-11 13:22:08 106

原创 androidmanifest.xml高级属性解析

Android工程的的主配置文件androidmanifest.xml的一些高级属性大多数开发者可能不了解,下面我们一起来看一看。 支持的屏幕大小设置,我们可以显示的指定允许运行在:<supports-screens android:largeScreens="true" //WVGA android:normalScreens="true" //HVGA android:small...

2010-06-09 00:04:54 86

原创 自定义Android应用的访问权限

由于Android部分设计原理较为开放,可能通过Intent或PackageManager就可以解析处理调用其他应用的子类,所以在部分应用中需要做更多的安全处理,保证应用内部的稳定性和安全性。Android123强烈大家仔细阅读本文,这将会对您在构架Android应用时减少一些隐患的发生。  稳定性: 部分类可能没有数值的传入将会导致可能初始化失败,造成Force Close等问题。  安...

2010-06-09 00:00:14 97

原创 【转】用代码安装APK程序

安装APK程序可以通过连接PC端安装,还有通过网络下载安装。 那如何在代码里控制安装呢? 其实很简单Intent i = new Intent(Intent.ACTION_VIEW); String filePath = "/sdcard/XXX.apk"; i.setDataAndType(Uri.parse("file://" + filePath),"ap...

2010-06-08 23:21:48 136

原创 【转】实现Activity不压入Activity栈

我们要实现在Activity栈里只存在一个相同的Activity。 例如:A 打开 B, B 打开 C, C 又打开 B, 然后返回i是 B -> C -> A。 如何实现呢?很简单,看代码。Intent intent = new Intent(this, SearchResult.class); intent.setFlags(Intent.FLAG_AC...

2010-06-08 23:18:59 434

原创 【转】SDK1.5r3以后写入SDCARD记得加权限

这两天把程序移到SDK1.6上编译,遇到对SDCARD写入的问题。开始觉得很奇怪,在1.5r2上正常,1.6上就不行。折腾了一会才想起1.5r3好像有增加了写入SDCARD的权限。 就是这个了<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"></uses-permissi...

2010-06-08 23:17:11 73

原创 【转】显示和隐藏软键盘

InputMethodManager imm = (InputMethodManager) getSystemService(INPUT_METHOD_SERVICE); View view = this.getCurrentFocus(); if (view != null){ imm.showSoftInput(view, 0); //显示软键盘...

2010-06-08 23:15:29 73

原创 【转】获取未安装的APK信息

在前面的文章发过一篇《获取已安装程序的名字、包名、版本和图标》,当时有朋友问我怎么获取未安装的APK信息(如:软件名称、包名、图标等等)。当时还不知道能读取未安装的APK信息,也没遇到这样的需求,所以也没去看怎么做。现在终于知道了,很简单。看代码会比较明了。 /** 获取未安装的APK信息 * @param context * @param archiveF...

2010-06-08 23:10:27 129

原创 【转】获取已安装程序的名字、包名、版本和图标

class PInfo { private String appname = ""; private String pname = ""; private String versionName = ""; private int versionCode = 0; private Drawable i...

2010-06-08 23:08:06 111

空空如也

空空如也

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

TA关注的人

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