`
ai_longyu
  • 浏览: 481029 次
社区版块
存档分类
最新评论
文章列表
【讨论】通过bindService启动的service,在unbindService后service也结束了 20楼的回答非常清楚: 有三种情况:如果直接使用服务,则没有必要进行绑定,但是如果要使用服务里面的方法,则要进行绑定。具体的启动情况有下: 1.当启动时,单独调用bindService方法,在unbindService后,会执行service的onUnbind,在执行onDestroy方法。 2.当启动时,先调用startService,在调用bindService方法后,在unbindService后,会执行service的onUnbind,不会执行onDestroy方法。除非 ...
android 2.2 和android 2.3 在源码结构上有一些变化:tatusbar 的位置的变化,2.3中 statusbar 的源码在frameworks/base/packages/SystemUI中。 修改statusbar的背景,frameworks/base/packages/SystemUI/res/drawable-mdpi,替换 statusbar_background.9.png 调整statusba ...
我们在开发项目的过程中,会涉及到该应用中多个Activity组件之间的跳转,或者夹带其它应用的可复用的Activity。例如我们可能希望跳转到原来某个Activity实例,而不是产生大量重复的 Activity。这样就需要我们为 Activity 配置特定的加载模式,而不是使用默认的加载模式。 Activity 有四种加载模式 [1] standard 模式 这是默认模式,每次激活Activity时都会创建Activity实例,并放入任务栈中。 [2] singleTop 模式 如果在任务的栈顶正好存在该Activity的实例,就重用该实例( 会调用实例的 onNewInte ...
SharedPreferences存储共享变量的文件路径位于“/data/data/应用程序包/shared_prefs”目录下,通过adb shell,可以看到如下所示: 查看当前目录: # pwd /data/data/com.min.ijoke/shared_prefs 显示当前目录下的文件: # lsmin_ijoke.xml // 此文件就是存储SharedPreferences变量的文件 AppSettings.xml PushFlag.xml Finalize_Flag.xml ShowAdFlag.xmlStart_Tag.xml 查看SharedPrefer ...
最近刚看完freescale mma8451的驱动,并且一直了驱动,自己也没怎么改代码,不过读了一下代码,还是有点体会的,下面我就来分析一下。 首先看下代码结构,有兴趣的可以从一下方式获得代码,git@github.com:zhangjie201412/WorkSpace.git ,最好是先发mail给我, jay@jay:~/mygit$ tree . └── kernel ├── arch │ └── arm │ └── mach-mx5 │ └── mx53_smd.c ├── drivers │ └── hwmon │ ...
要想使自己的布局在不同设备达到精准空置,理清理顺android布局长度单位之间关系很有必要,否则你也许会经常挠头为什么显示出来的布局不是自己定义的效果呢,有些东西,虽然基础,但是弄个透彻也需要花些功夫,废话不多说,下面开始。 1.先了解一下android有支持哪些长度单位: px: pixels(像素). 不同设备显示效果相同,比如我们800*480的屏幕宽度就是 800px dip: device independent pixels(设备独立像素). 不同设备有不同的显示效果,这个和设备硬件有关,通常屏幕大时,density就大,屏幕小时,density就小 屏幕实际分辨率 ...
Luancher有一个相对比较复杂的功能就是拖放功能,要深入了解launcher,深入理解拖放功能是有必要的,这篇blog,我将对launcher的拖放功能做深入的了解 1.首先直观感受什么时候开始拖放?我们长按桌面一个应用图标或者控件的时候拖放就开始了,包括在all app view中长按应用图标,下面就是我截取的拖放开始的代码调用堆栈 at com.android.launcher2.DragController.startDrag(DragController.java:170) at com.android.launcher2.Workspace.startDrag(Works ...
在前面我的blog中,我已经说过了,Launcher所有的桌面项数据是存储在launcher.db/favorites表中 在Launcher启动时loadeworkspace函数中会从数据库中查询所有的数据并显示出来,这个桌面项数据加载过程在我的blog Launcher——启动过程详解中有比较详细的描述,这篇blog,我着重讲述Launcher桌面项的添加,变更和删除,下面就进入主题 1.Launcher桌面项的添加:从用户操作的角度来看,我们有两种方式来添加桌面项 --1.从all app view中拖到桌面,从下面的调用堆栈知道最后通过LauncherProvider.inse ...
一LauncherApplication->onCreate --1.//设置最小堆内存4M --2.//建立应用图标缓存器 --3.//建立LauncherModel --4.//注册Intent.ACTION_PACKAGE_ADDED,Intent.ACTION_PACKAGE_REMOVED,Intent.ACTION_PACKAGE_CHANGED事件监听器 LauncherModel作为广播接收器对上面3中事件进 ...
着手开发laucher 我个人觉得首先要从ui框架入手,了解清楚了ui框架对laucher就有了一个大致的了解,知道关键的几个类在哪里,对后面进一步深入地研究作出铺垫。废话不多说了,直接进入主题: 1.先看图 这是我正在研究的一个800*480的launcher的ui框架图,对应的桌面显示效果如下: 下面一行应用是我修改桌面后的结果,在前面我的ui框架图中没有。 闲话不多说,下面就一一做出讲解 1.DragLayer--DragLayer继承FrameLayout,并在此基础上组合了DragController实现拖放功能,DragLayer主要监听下面 ...
我在AbsoluteLayout动态添加了一些ImageView,用来表示批注,这些ImageView在相关事件中用layout改变位置。 但是改变了它们的位置后,再用addview方法添加一个新的ImageView后,所有ImageView都重新出现在原来addview时的位置上,没有移动,就像被重新初始化了。 问题来了:使用addView方法时,如何保持已有动态控件位置不初始化? 因为不知道布局中的addview是怎么实现的,所有没有想出直接解决问题的办法。
Q:What do "Bn*" and "Bp*" stand for in frameworks/base/include/utils/IInterface.h ?I understand that "B" is for binder but what about "n" and "p"? It seems like "p" may stand for "remote" and "n" for "native" b ...
操作系统:CentOS 6软件:apache2.2,trac0.12,python2.6,mysql概述 trac以python写成,python应用可以用多种方式布署到apache上,比如mod_python,FastCGI,WSGI等。 我们将以WSGI的方式将trac布署到apache上,因为WSGI是python的原生态协议。 一个WEB应用要使用WSGI,必须提供一个叫做*.wsgi的脚本,实际这个脚本是个python文件。在Apache的<Directory>配置中指定一个地址映射到.wsgi的路径,这样在访问这个地址时,就会执行这个wsgi脚本文件,于是兼容w ...
前面一篇文章实现了使用ViewPager实现高仿launcher拖动效果 ,后来很多朋友问能不能实现左右循环滑动效果和引导页面。今天实现了左右滑动,至于在最后一页滑动跳转,这个也做了但是效果不是太好,也希望有实现的朋友能够分享下。在最后一页添加一张图片单击跳转,这个认为很简单大家自己添加个图片,点击后跳转就OK。 这篇是在实现了使用ViewPager实现高仿launcher拖动效果的基础上做了一些小的修改,可以参照前面的。废话不多说了,直接上代码吧! 首先看一些layout下的xml <?xml version="1.0" encoding="u ...
操作系统:linux(CentOS 6)软件:apache2.2,subversion1.6概述 使用apache的目的是想让客户端以http协议的方式与subversion服务器通信。要实现这个目的,必须能在客户通过apache访问subversion的仓库时,以subversion的插件接管对这些请求的处理。过程 1 先安装apache: yum -y install httpd2 再安装subversion: yum -y install subversion mod_dav_svn其中mod_dav_svn就是apache的subversion插件。3 配置apache 其配置文件位于/ ...
Global site tag (gtag.js) - Google Analytics