随笔分类 - android solve
解决方案
摘要:from : http://blog.csdn.net/maxleng/article/details/5504485Service深入分析上一章我们分析了AndroidIPC架构,知道了Android服务构建的一些基本理念和原理,本章我们将深入分析Android的服务。Android体系架构中三种意义上服务:Native服务Android服务Init空间的服务,主要是属性设置,这个IPC是利用Socket来完成的,这个我将在另外一章来讨论。Navite服务,实际上就是指完全在C++空间完成的服务,主要是指系统一开始初始化,通过Init.rc脚本起来的服务,例如ServiceMangerser
阅读全文
摘要:from :http://blog.csdn.net/maxleng/article/details/5490770IPC框架分析 Binder,Service,Service manager 我首先从宏观的角度观察Binder,Service,ServiceManager,并阐述各自的概念。从Linux的概念空间中,Android的设计Activity托管在不同的的进程,Service也都是托管在不同的进程,不同进程间的Activity,Service之间要交换数据属于IPC。Binder就是为了Activity通讯而设计的一个轻量级的IPC框架。在代码分析中,我发现Android中只是把B
阅读全文
摘要:from :http://blog.csdn.net/maxleng/article/details/5490713基本空间划分Google给了我们一张系统架构图,在这张图上我们可以看到Android的大体框架组成。从上图可以看到:AndroidApplications,ApplicationFramework,DalvikVirtualMachine,Linux。如果将Android泛化,我们可以将系统划分成两部分:但是为了研究的方便我们先看最为本质的三层,上面是Android,中间叫Dalvik虚拟机,下面叫Linux。 虽然上两层都包含在Android中,但是为了理解的方便或者从实用主义
阅读全文
摘要:from :http://blog.csdn.net/maxleng/article/details/5476636手机的软件形态 上节我给出了手机的硬件树,本节将给出手机软件形态树。主要突出手机软件涵盖的内容。通过该思维导图,我们可以看到手机软件所涉及到的方方面面,Android所涉及到的内容也不会超过下面所示太多,这个也是Andoid系统外特性空间所要展示的,这个也是Android设计者需要考虑管理的大部分内容,通过下面的整理,我们可以让我们的思维更加贴近Android设计意图,从而更深入的了解Android中各种组成的由来,这个就是前面讲到的分析思想之一从退到源头出发,从思考最终极的问.
阅读全文
摘要:from :http://blog.csdn.net/maxleng/article/details/5476544手机硬件形态本节可能与Android无关,但是Android系统现在这个阶段更多的是移动终端形态的开发平台,本节给出了Android背后的工作-Android管理的硬件是什么,Android的本质就是要管理好这些硬件部分,为用户提供一个体验更好,速度更快的智能移动终端。对手机硬件形态的认识是要让我们对手机硬件组成有个感性的认识,让程序员知道系统中的代码是管理那一部分的,即我们堆砖头的目的是什么,让思维有一个伸展。为了对手机这类嵌入式系统有一个较为深入的了解,我制作了如下的手机硬件
阅读全文
摘要:from:http://blog.csdn.net/maxleng/article/details/5472988方法论探讨之概念空间篇 我们潜意识就不想用计算机的方式来思考问题,我们有自己的思维描述方式,越是接近我们思维描述方式,我们越容易接受和使用。各种计算机语言,建模工具,不外乎就是建立一个更接近人的思维方式的概念空间,再使用工具从该概念空间向另外一个概念空间映射,我称之为人性思维空间向01序列描述空间的一个映射。实现方面来看,系统就是一个翻译器,将机器性更加人性化的一种机制。大学计算机经典课“计算机体系结构”,其他的可以忘记,但是下面这个图不能忘记:这个就是概念空间最本质的原型体现:作
阅读全文
摘要:from:http://blog.csdn.net/column/details/androidcore.html?page=2分析方法论探讨之设计意图 为什么要研究Android,是因为它够庞大,它够复杂,他激起了我作为一个程序员的内心的渴望,渴望理解这种复杂性。我研究的对象是作为手机开发平台的Android软件系统部分,而不是Dalvik虚拟机本身。作为一个从其他平台装接过来的程序员,要从事Andoid平台系统开发,我的关于手机平台上积累的知识已经不能满足需要了,Android为我们带来了大量的新名词,Activity,Manifest,INTENT,Service,Binder,Dalv
阅读全文
摘要:String value = android.os.SystemProperties.get("xx.xx.xx");
阅读全文
摘要:SQLiteException 的 ErrorCode! from :http://blog.csdn.net/zhaojiangang/article/details/4350462Result Codes SQLITE_OK 0 /* Successful result *//* beginning-of-error-codes */ SQLITE_ERROR 1 /* SQL error or missing database */ SQLITE_INTERNAL 2 /* Internal logic error in SQLite...
阅读全文
摘要:from : http://xiaoych.iteye.com/blog/149328以前我一直以为File#renameTo(File)方法与OS下面的 move/mv 命令是相同的,可以达到改名、移动文件的目的。不过后来经常发现问题:File#renameTo(File)方法会返回失败(false),文件没有移动,又查不出原因,再后来干脆弃用该方法,自己实现一个copy方法,问题倒是再也没有出现过。昨天老板同学又遇到这个问题,File#renameTo(File)方法在windows下面工作的好好的,在linux下偶尔又失灵了。回到家我扫了一遍JDK中File#renameTo(File)
阅读全文
摘要:Future reference, need to point to mnt/sdcard/... not /sdcard/...It's strange that it still works, but gallery gets confused.
阅读全文
摘要://正确的设置流程private RadioGroup mDualMode = (RadioGroup)findViewById(R.id.dualmode);if(type != null && type.equals("RUIM")){ Log.i(TAG,"________________________________________CDMA RUIM"); mDualMode.check(R.id.dualmode_2);}else{ Log.i(TAG,"_______________________________
阅读全文
摘要:出处:http://www.cnblogs.com/sdphome/archive/2011/03/18/1987678.html快速重建system.img修改android的系统模块后, 需要重新生成system.img, 以前我用make systemimage,但这个过程太慢了,很烦人。于是通过make输出的信息, 找到一个比较快的方法,只编译模块和生成system.img,省去其它过程,重新生成system.img快了不少。以修改services模块为例,命令如下:cd frameworks/base/servicesmmcd -out/host/linux-x86/bin/mkya
阅读全文
摘要:问题fastboot刷新system.img的时候出现如下错误sending 'system' (131529 KB)... FAILED (remote: data too large) finished. total time: 0.000s 分析fastboot定义了的IMG文件的最大size: 120MB$ find bootable/ -name '*.h' | xargs grep 'CFG_MAX_DOWNLOAD_BUF_LEN' bootable/bootloader/legacy/include/boot/config.h:#
阅读全文
摘要:出处:http://blog.csdn.net/codejoker/article/details/5843143最近在向Android移植一个开源程序,编译的时候总是出现以下错误:arm-eabi-gcc::Nosuchfileordirectory 搜索arm-eabi-gccprebuilt$find.-namearm-eabi-gcc ./linux-x86/toolchain/arm-eabi-4.3.1/bin/arm-eabi-gcc./linux-x86/toolchain/arm-eabi-4.4.0/bin/arm-eabi-gcc./linux-x86/toolchain
阅读全文
摘要:转载请注明出处:http://blog.csdn.net/qinjuning 在Android中并没有定义MediaButtonReceive这个广播类,MediaButtonReceive只是作为一种通俗的命名方式来响应 插入耳机后,点击耳机上的按钮(名称:MEDIA_BUTTON)接受该广播事件的类。所有该MEDIA_BUTTON的按下我们就简称 为MEDIA_BUTTON广播吧。 顾名思义:它显然是一个广播接收器类(BroadbcastReceiver),那么它就具备了BroadbcastReceiver类的使用方式, 但是,因为它需要通过AudioManager对象注册,所以它有着自己
阅读全文
摘要:转载请注明出处:http://blog.csdn.net/qinjuning 前言: 虽然本文标题的有点标题党的感觉,但无论如何,通过这篇文章的学习以及你自己的实践认知,写个简单的滑屏小Demo还是justso so的。 友情提示: 在继续往下面读之前,希望您对以下知识点有一定程度掌握,否则,继续看下去对您意义也不大。 1、掌握View(视图)的"视图坐标"以及"布局坐标",以及scrollTo()和scrollBy()方法的作用-----必须理解 如果对这方面知识不太清楚的话,建议先看看我的这篇博客 <Android中滑屏初探 ---- scro
阅读全文
摘要:转载请注明出处:http://blog.csdn.net/qinjuning 前言: 最近一直在看Launcher模块,经过差不多两个月学习,终于摸透了Launcher的一些主要功能实现,目前继续还处于 摸索状态。未看Launcher时,于我而言,只能膜拜,以为所有功能都是它实现的 ;入门后,才发现,Launcher的很多功能只是 集成了框架/应用程序提供的功能。很多陌生的东西,只有接触了才感叹:“oh ,原来是这样的!” 今天先给大家分享下Launcher如何实现添加快捷方式(Shortcut) ,后续会慢慢增加其他方面的功能,帮助大家“一叶而知秋”。 具体来说,Launcher中的...
阅读全文
摘要:转载请注明出处:http://blog.csdn.net/qinjuning 今天给大家展现的如何创建一个窗口小部件(AppWidget)以及如何在自己的应用程序中添加窗口小部件(AppWidget)。 本文组织如下: 第一部分:创建一个窗口小部件; 第二部分:在自己的应用程序中添加窗口小部件(AppWidget)。 整个功能其实实现起来也是很简单的,只望大家能耐着性子点看 。 第一部分 、创建一个窗口小部件网上资料已经许多了 ,在此先给大家推荐几个不错的Blog ,大家可以先去看看: 1、SDK对AppWidget的介绍 2、Android 桌面组件【widget】初探 ...
阅读全文
摘要:转载请注明出处:http://blog.csdn.net/qinjuning Binder机制是Android系统进程间通信的核心机制,它很大而且很复杂,不过对它有一定程度的理解和掌握是真正接触Android核心的必备。网上关于它的介绍很多,希望大家能耐着性子认真地学习Binder机制的实现。在此,给大家分享一个 我认为挺好地学习Binder机制基础的博客《Android系统中Binder机制的分析系列》,希望对大家有用。 本来也准备自己 写点关于Binder机制的,但无奈自己的理解程度还很肤浅,只好放弃了。自己从事的模块开发采用了Binder机制进行功能的开发,对Binder机制的不熟悉..
阅读全文