摘要: 最近在使用AIDL做IPC的时候,在处理复杂的数据类型的时候,编译器总是报couldn't find import for class错误,所以在这里总结下AIDL使用的时候的一些注意事项,希望对你能有所帮助。Android 中进程间通信使用了 AIDL 语言,但是支持的数据类型有限:1.Java的简单类型(int、char、boolean等)。不需要导入(import)。2.String和CharSequence。不需要导入(import)。3.List和Map。但要注意,List和Map对象的元素类型必须是AIDL服务支持的数据类型。不需要导入(import)。4.AIDL自动生成 阅读全文
posted @ 2013-08-30 16:59 silencer 阅读(7764) 评论(0) 推荐(1) 编辑
摘要: 一、简介service是android应用4种组件之一,是没有界面的在后台运行的服务。service有两种形式1. 启动的(Started)通过应用组件的接口startService()启动,服务启动后独立运行。2. 绑定的(Bound)通过应用组件的接口bindService()启动,提供CS方式的进程间通讯,在所有绑定的组件解除绑定后,服务退出。这两种形式可以单独也可以同时存在于一个service上。注意:默认service运行在主线程中,并没有独立线程、进程专门运行service。为了防止ANR,应专门启动一个线程运行service对于有界面的应用,且后台只在界面运行时运行的,建议使用T 阅读全文
posted @ 2012-08-12 16:42 silencer 阅读(239) 评论(0) 推荐(0) 编辑
摘要: 今天基本完成了GPSMI客户端的工作,还有几张图片要处理下,然后就进入SDK的tools目录找到draw9patch.bat文件,运行时发现无法找到java.exe,出现一下信息。ERROR: No suitable Java found. In order to properly use the Android DeveloperTools, you need a suitable version of Java JDK installed on your system.We recommend that you install the JDK version of JavaSE, avai 阅读全文
posted @ 2012-08-02 12:30 silencer 阅读(2150) 评论(0) 推荐(0) 编辑
摘要: 编译Android4.0时遇到下面的问题,/home/joeyjiaojg/android/src/cm4/external/llvm/lib/Support/Mutex.cpp:69: undefined reference to `pthread_mutexattr_init'/home/joeyjiaojg/android/src/cm4/external/llvm/lib/Support/Mutex.cpp:75: undefined reference to `pthread_mutexattr_settype'/home/joeyjiaojg/android/src 阅读全文
posted @ 2011-12-19 17:15 silencer 阅读(1703) 评论(0) 推荐(0) 编辑
摘要: Android开发又将带来新一轮热潮,很多开发者都投入到这个浪潮中去了,创造了许许多多相当优秀的应用。其中也有许许多多的开发者提供了应用开源项目,贡献出他们的智慧和创造力。学习开源代码是掌握技术的一个最佳方式。下面推荐几个应用开源项目,这些项目不仅提供了优秀的创意,也可以直接掌握Android内核的接口使用: 1、Android团队提供的示例项目 如果不是从学习Android SDK中提供的那些样例代码开始,可能没有更好的方法来掌握在Android这个框架上开发。由Android的核心开发团队提供了15个优秀的示例项目,包含了游戏、图像处理、时间显示、开始菜单快捷方式等。 地址:http... 阅读全文
posted @ 2011-11-28 11:55 silencer 阅读(607) 评论(0) 推荐(1) 编辑
摘要: res/raw和assets的相同点:1.两者目录下的文件在打包后会原封不动的保存在apk包中,不会被编译成二进制。res/raw和assets的不同点:1.res/raw中的文件会被映射到R.java文件中,访问的时候直接使用资源ID即R.id.filename;assets文件夹下的文件不会被映射到R.java中,访问的时候需要AssetManager类。2.res/raw不可以有目录结构,而assets则可以有目录结构,也就是assets目录下可以再建立文件夹读取文件资源:1.读取res/raw下的文件资源,通过以下方式获取输入流来进行写操作InputStream is = getRes 阅读全文
posted @ 2011-10-27 18:06 silencer 阅读(5836) 评论(1) 推荐(1) 编辑
摘要: Coding is sort of like a superpower; with it you can create things that millions of people see. You can change the way people behave, the way they think, and the way they interact with others. This is beyond awesome, but I’ve also met a lot of people that think that this ability is inaccessible to t 阅读全文
posted @ 2011-10-18 12:50 silencer 阅读(573) 评论(0) 推荐(0) 编辑
摘要: I continued to look into Android's new Overscroll functionality introduced in Gingerbread and discovered some more interesting things. The functionality to make a a view scroll beyond its limits and then bounce back (almost exactly like iOS) is sort of built into the framework, but just hidden. 阅读全文
posted @ 2011-09-19 10:46 silencer 阅读(2401) 评论(0) 推荐(0) 编辑
摘要: Bitmap是Android系统中的图像处理的最重要类之一。用它可以获取图像文件信息,进行图像剪切、旋转、缩放等操作,并可以指定格式保存图像文件。本文从应用的角度,着重介绍怎么用Bitmap来实现这些功能。一、Bitmap的生成1.1 BitmapFactory decode出Bitmap Bitmap实现在android.graphics包中。但是Bitmap类的构造函数是私有的,外面并不能实例化,只能是通过JNI实例化。这必然是某个辅助类提供了创建Bitmap的接口,而这个类的实现通过JNI接口来实例化Bitmap的,这个类就是BitmapFactory。图一、BitmapFactory主 阅读全文
posted @ 2011-09-14 18:09 silencer 阅读(1596) 评论(0) 推荐(0) 编辑
摘要: aunchmode4种模式:1,standard:如果从A跳到A,intent5次,task里5个activity;2,single Top:如果从A 跳B,再从B跳A,如果此时栈顶为A,则不创建新实例,直接把Intent给A,但如果栈顶不是A,则还要创建A的例3,singleTask如果从A跳B,再从B跳A,无论是否栈顶栈底,只要A在,则将Intent给A,不会创建A的新实例;4,singleInstance不同于前3种模式,前3种只是在同一个task的,而实例化的策略不同。这种模式下的activity会单独存在一个task下。现成的例子是google地图。比如我有一个应用是导游方面的,其中 阅读全文
posted @ 2011-08-02 15:40 silencer 阅读(698) 评论(0) 推荐(0) 编辑