![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
android
guojianhui0906
这个作者很懒,什么都没留下…
展开
-
理解Android系统的进程间通信原理(一)----RPC中的代理模式
[size=medium]理解Android系统的进程间通信原理(一)----RPC中的代理模式Android系统中的进程间通信是通过一个轻量级的RPC(Remote Procedure Call远程进程调用)和AIDL(Android Interface Definination Language)规范来生成两个进程之间可以相互访问的代码。其中RPC是以接口方式来实现,客户端与被调用实现之间...原创 2011-09-14 19:39:44 · 90 阅读 · 0 评论 -
android 2.3 取内外置SD卡
在android2.3中判断内置SD卡是否挂载:if(Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)){//为true的话,内置sd卡存在}判断外置SD卡是否挂载:if(Environment.getStorageState(Environment...原创 2013-06-06 12:42:32 · 108 阅读 · 0 评论 -
android 关闭数据连接方法
开关数据连接方法:[code="java"] Method getITelephonyMethod = null; try{ telephonyManagerClass = Class.forName(telephonyManager.getClass().getName()); getITelephonyMethod = telephonyMana...原创 2013-05-04 21:18:42 · 516 阅读 · 0 评论 -
Activity Task Task 栈
[size=small]1、Activity和Tasktask就好像是能包含很多activity的栈。 默认情况下,一个activity启动另外一个activity时,两个activity是放在同一个task栈中的,第二个activity压入第一个 activity所在的task栈。当用户按下返回键时,第二个activity从栈中弹出,第一个activity又在当前屏幕显示。这样,从用户角...原创 2011-12-03 15:30:30 · 89 阅读 · 0 评论 -
判断Android 网络状态
当需要开启Activity之前需要检测网络状态的时候需要用到一下代码。最近也在做DataConn方面的内容,分享下了...[code="java"]private boolean NetWorkStatus() { boolean netSataus = false; ConnectivityManager cwjManager = (Connectivit...原创 2011-12-03 11:53:26 · 83 阅读 · 0 评论 -
Android APK签名
1.签名的意义 为了保证每个应用程序开发商合法ID,防止部分开放商可能通过使用相同的Package Name来混淆替换已经安装的程序,我们需要对我们发布的APK文件进行唯一签名,保证我们每次发布的版本的一致性(如自动更新不会因为版本不一致而无法安装)。2.签名的步骤 a.创建key b.使用步骤a中产生的key对apk签名3.具体操作 方法一: 命令行下...原创 2011-11-23 10:30:39 · 112 阅读 · 0 评论 -
Android 横竖屏设置
最近遇到一个问题,关于Android 横竖屏的问题,我的launcher没有landscap资源,所以我在manifest里的Activity设置为portrait,但是当我打开sina微博时,横屏launcher会报错,我不解其中的原因,有的说法就是sina微博会发一个Intent给launcher,但是我没有看到sina微博的横屏,究其结果说吧,原因就是sina微博横屏时会重新Oncreate...原创 2011-11-17 09:03:19 · 95 阅读 · 0 评论 -
Android 设计之流畅设计
即使你的应用程序是快速且响应灵敏的,但一些设计仍然会给用户造成问题——与其它应用程序或对话框未事先计划的交互,意外的数据丢失,意料之外的阻塞等等。避免这些问题,有助于理解应用程序运行的上下文和系统的交互过程,而这些又正影响着你的应用程序。简而言之,你应该竭尽全力去开发一个与系统和其它应用程序流畅交互的应用程序。 一个常见的流畅问题是,一个应用程序的后台处理——例如,一个 Service或者...原创 2011-11-14 20:42:15 · 95 阅读 · 0 评论 -
onInterceptTouchEvent和onTouchEvent调用时序
onInterceptTouchEvent()是ViewGroup的一个方法,目的是在系统向该ViewGroup及其各个childView触发onTouchEvent()之前对相关事件进行一次拦截,Android这么设计的想法也很好理解,由于ViewGroup会包含若干childView,因此需要能够统一监控各种touch事件的机会,因此纯粹的不能包含子view的控件是没有这个方法的,如Lin...原创 2011-10-22 17:01:19 · 75 阅读 · 0 评论 -
activity 启动方式
在android里,有4种activity的启动模式,分别为: “standard” (默认) “singleTop” “singleTask” “singleInstance”它们主要有如下不同:1. 如何决定所属task “standard”和”singleTop”的activity的目标task,和收到的Intent的发送者在同一个task内,除非inte...原创 2011-10-15 11:15:26 · 75 阅读 · 0 评论 -
Android功能总结:仿照Launcher的Workspace实现左右滑动切换
对于Launcher的桌面滑动大家应该都比较熟悉了,最好的体验应该是可以随着手指的滑动而显示不同位置的桌面,比一般用ViewFlinger+动画所实现的手势切换页面感觉良好多了~~~~分析了一下Launcher中的WorkSpace,里面有太多的代码我们用不上了(拖拽,长按,,,),把里面的冗余代码去掉得到实现滑动切换屏幕所必需的。新建一个ScrollLayout类,继承自...原创 2011-10-09 17:36:27 · 461 阅读 · 0 评论 -
Android中的Handler, Looper, MessageQueue和Thread
前几天,和同事探讨了一下Android中的消息机制,探究了消息的发送和接收过程以及与线程之间的关系。虽然我们经常使用这些基础的东西,但对于其内部原理的了解,能使我们更加容易、合理地架构系统,并避免一些低级错误。对于这部分的内容,将分成4小节来描述:1.职责与关系2.消息循环3.线程与更新4.几点小结--------------------------...原创 2011-10-08 20:34:08 · 59 阅读 · 0 评论 -
ListView 动态加载
ListView的动态加载,想必大家在网上都看过很多资料了。我在这里也不罗嗦,提供非常简单的Demo给一些需要的人。这个Demo里面只有两个部分,Activity做显示,以及一个Factory创建信息。MainActivity.javaJava代码 收藏代码[code="java"]package com.demo;import java.util.Lis...原创 2011-09-29 20:46:51 · 64 阅读 · 0 评论 -
AppWidget加载流程(二)
1. 用户长按Launcher弹出添快捷组件的Dialog,选择添加AppWidget,这时会打开一个Activity(AppWidgetPickActivity)显示系统中全部AppWidget,单击某一个AppWidget后会做以下操作: (1) 通过AppWidgetService获取一个最新的appWidgetId值。 (2) 根据获取的appWidgetI...原创 2011-09-27 17:38:28 · 99 阅读 · 0 评论 -
AppWidget加载流程(一)
1. Android系统启动,SystemServer创建AppWidgetService,并调用systemReady()方法,在systemReady()方法中做以下三项准备工作: (1)通过PackageManager从Android系统中查找所有已经被安装的AppWidget(包含"android.appwidget.action.APPWIDGET_UPDATE“ 的Ac...原创 2011-09-27 17:34:54 · 181 阅读 · 0 评论 -
Android 中Locale,auto-rotate状态的获取
1. 得到当前locale:Context.getResources().getConfiguration.locale;2. 是否开启了auto-rotate:(这个和具体设备似乎也有关系,不确定是否通用)import android.provider.Settings;mAutoRotateSwitch = (Settings.System.getInt(thi...原创 2011-09-21 10:26:29 · 281 阅读 · 0 评论 -
深入理解Android消息处理系统——Looper、Handler、Thread
熟悉Windows编程的朋友可能知道Windows程序是消息驱动的,并且有全局的消息循环系统。而Android应用程序也是消息驱动的,按道理来说也应该提供消息循环机制。实际上谷歌参考了Windows的消息循环机制,也在Android系统中实现了消息循环机制。Android通过 Looper、Handler来实现消息循环机制,Android消息循环是针对线程的(每个线程都可以有自己的消息队列和消息循...原创 2011-09-19 10:56:40 · 76 阅读 · 0 评论 -
android 4.0 取内外置SD卡新特性
[size=large]private StorageManager mStorageManager = null; protected String mSDCardPath = null; protected boolean mSDCardMounted = true; protected boolean mSDCard2Mounted = false;...原创 2013-06-06 12:44:16 · 114 阅读 · 0 评论