自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

sean_xiang的专栏

一只心向光明努力奔跑的白痴

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

原创 android系统属性的初始化探索

系统属性中有一类是永久保存在文件中的:bionic/libc/include/sys/_system_properties.h#define PROP_SERVICE_NAME "property_service" #define PROP_PATH_RAMDISK_DEFAULT  "/default.prop" #define PROP_PATH_SYSTEM_BUILD

2013-09-23 16:30:19 6516

原创 Linux可执行文件引申的烦恼

项目中有时候碰到一些小问题特别烦恼,这些问题不起眼,但如鲠在喉,不弄清楚让人很不舒服。今天在项目中有些问题想要手动创建一个android工程,于是百度手动创建(即命令行创建)的方法:$ android create ....但是提示找不到android命令。因此这里有一个小烦恼:为什么找不到android命令?而我的android sdk配置是正常的,而且可以正常使用adb命令

2013-09-23 10:20:24 1155

翻译 Menu

从Android3.0开始,安卓设备不再提供菜单按钮。这样,我们就从原先的六选项菜单转移到现在使用控制条(action bar)显示用户的常用操作。尽管用户使用习惯有所改变,但定义一些控制和选择的用户行为仍然是基于Menu AP接口的。本篇介绍三种最基本的菜单类型。Options menu and action barOptions menu是activity的最基本容器。这里是放置一

2013-07-17 16:07:01 1001

翻译 Content Providers——Basics

Content ProvidersContent providers管理一套有组织的数据的使用。它们封装了数据,提供定义数据安全机制。Content providers是一个正在运行的进程连接另一个进程数据的标准接口。当我们想要获取content provider中的数据时,我们使用应用程序Context中的ContentResolver对象与作为客户端的provider通信。Conten

2013-07-15 20:23:46 929

翻译 Tasks and Back Stack

一个应用程序通常包含有多个activity。每个activity的设计都应围绕一个特别的动作展开这样用户可以显示和启动其它的activity。比如,一个email应用程序可能需要一个activity展示新邮件列表。当用户点击了一个email后,打开一个新的activity展示这个email的内容。activity还可以启动同一设备上其它应用程序的某个activity。例如,某个应用想要发送一封

2013-07-13 15:38:20 730

原创 API拾遗录之Fragment

Fragment必须内嵌到activity中,它不能单独使用,并且它的生命周期受到activity生命周期的制约——当activity暂停时,所有的fragment暂停,当activity停止时,所有的fragment停止。只有当activity处于运行态(resumed in lifecycle state)时,才可以单独操作各个fragment,比如添加或删除。在fragment事件中,act

2013-07-12 15:40:39 937

原创 API拾遗录之Activity

1. Using Intent filters在manifest.xml文件中必须为每一个activity申明一个元素标签。在这个标签中可以指定多个intent filters。它的作用是申明如何让其它应用组件启动它。当我们创建一个应用程序时,最基础的那个activity包含的一个intent filter总是申明了该activity对"main"方法的反馈结果,并且需要放置在"launc

2013-07-10 15:50:03 1295 1

原创 shell内部变量

$BASH            Bash的二进制程序文件的路径$BASH_ENV        这个环境变量会指向一个Bash的启动文件,当一个脚本被调用的时候,这个启动文件将会被读取$BASH_SUBSHELL        用来提示子shell的层次。$BASH_VERSINFO[n]    一个含有6个元素的数组,它包含了所安装的Bash的版本信息。0    主版本号1

2013-07-09 15:11:02 1237

原创 shell条件判断

Bash里用作条件判断的有test命令,各种中括号和圆括号操作,和if/then结构。if/then结构用来判断命令列表的退出状态码是否为0(0表示成功),如果成功,那么就执行接下来的一个或多个命令。“[”中括号是一个专有命令,这个命令与test命令等价,并且处于效率上的考虑,这是一个内建命令。这个命令把它的参数作为比较表达式或者作为文件测试,并且根据比较的结果来返回一个退出状态码(0表示

2013-07-08 20:31:47 540

原创 退出和退出状态码

exit被用来结束一个脚本,就像在C语言中一样。它也返回一个值,并且这个值会传递给脚本的父进程,父进程会使用这个值做下一步的处理。每个命令都会返回一个退出状态码。成功的命令返回0,不成功的命令返回非零值,非零值通常都会被解释成一个错误码。同样的,脚本中的函数和脚本本身也会返回退出状态码。在脚本或者是脚本函数中执行的最后的命令会决定退出状态码。在脚本中,exit nnn命令会把nnn退出码传

2013-07-08 17:50:28 1149

原创 shell之变量基础

变量替换变量的名字就是变量保存值的地方。引用变量的值就叫做变量替换。如果variable1是一个>变量的名字,那么$variable就是引用这变量的值,即这个变量所包含的数据。变量被一对双引号括起来的时候变量替换是不会被阻止的。所以双引号被称为部分引用。如果使用单引号的话,那么变量替换就会被禁止了,变量名只会被解释成字面的意思。$variable事实上只是${variable}

2013-07-08 17:28:50 494

原创 shell所有字符简介

特殊字符:;    命令分隔符。可以在一行上写两个或两个以上的命令。echo hello; echo there;;    终止case选项case "$variable" inabc)  echo "\$variable = abc" ;;xyz)  echo "\$variable = xyz" ;;esac.    点命令。等价于source命令。

2013-07-08 09:27:04 765

原创 资源类型之TypedArray

TypedArray定义在XML文件中。可以使用它来创建一组其它资源,例如drawables。注意到一组资源并不要求是相同类型的,所以可以创建一组混合类型的资源。但是我们必须知道各个数据类型在组中的具体位置以便可以使用TypedArray's的get...()方法获取每个项目。Note:一组typed array是一个由名字属性提供(而不是XML文件名)提供的简单资源引用。这样,我们可以把ty

2013-07-04 21:25:24 2418

翻译 Google Services——LocationL

Location APIsLocation APIs使我们不需要关心底层位置技术的细节就可以创建location-aware应用。同时通过提供的使用硬件的能力,还可以让我们减少电源开销。Fused location provider融合的location provider智能管理底层位置技术根据需求提供最佳位置信息:Simple APIs:指定一些高级需求例如:高精确性或低

2013-06-19 10:34:15 775

翻译 Location and Sensors APIs

Location and Sensors APIs在设备上使用感应器可以为应用添加位置以及其他动态功能。从GPS到网络位置,加速器,回转仪,温度计,气压计等。Location and MapsNote:本篇是关于android.location包中的Android framework location API的导论。Google Play Services部分的Google Locat

2013-06-19 09:51:36 896

翻译 App Widget Design Guidelines

App Widget Design GuidelinesStandard Widget Anatomy标准的app widget由三个组件组成:一个有界限的封装盒,一个框架和图形控制等元素。App widget可以包括一些安卓视图控件;支持文字标签,按钮和图像控制。好的设计往往在封装盒和框架之间有一些留白,框架内边界和widget控件件也有一些空白。Note:安卓4.0

2013-06-06 10:34:27 1325

翻译 Design:Widgets

WidgetsWidgets是主屏定制化的精髓。可以认为它们是应用程序最后总要数据和功能在主屏上的一瞥。用户可以在主屏上移动widget。还可以按用户喜好裁减widget的大小。Widget types按功能而言,典型的widget分为以下四类:Information widgetsInformation widgets显示重要的和按时改变的信息。一个典型的例子是weather

2013-06-06 09:16:35 896

翻译 AppWidgets

App WidgetsApp Widgets是一类视图较小的应用程序,它们可以内嵌在其它应用程序中(比如主屏)并 接收定时更新。在用户接口中,这类widget是以一些view视图呈现的,我们可以使用App Widget provider表述一个这种widget。可以内嵌App Widgets的应用程序组件称作App Widget host。下图是一个Music App Widget的截屏。

2013-06-05 16:30:53 1295

原创 view中setImportantForAccessibility调用时莫名其妙的空指针异常

如下:E/AndroidRuntime(11807): FATAL EXCEPTION: mainE/AndroidRuntime(11807): java.lang.NullPointerExceptionE/AndroidRuntime(11807):     at com.android.launcher2.HideFromAccessibilityHelper.restoreI

2013-06-03 16:55:00 7700

转载 Java移位运算符

http://java.chinaitlab.com/base/828314.htmljava移位运算符不外乎就这三种:>(带符号右移)和>>>(无符号右移)。  1、 左移运算符  左移运算符  1)它的通用格式如下所示:  value   num 指定要移位值value 移动的位数。  左移的规则只记住一点:丢弃最高位,0补最低位  如果移动的位数超过了该类

2013-05-14 20:20:19 764

原创 transition XML和TransitionDrawable实例

Transition.xml activity_main.xml<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_widt

2013-05-10 09:00:23 933

原创 layer-list XML和LayerDrawable实例

layer_list.xml <item android:id="@+id/beauty1" android:left="10dp" android:top="10dp"> <bitmap android:gravity="center" android:src="@dr

2013-05-09 20:20:38 1228

原创 Bitmap XML和BitmapDrawable应用实例

bitmap_xml.xml<bitmap xmlns:android="http://schemas.android.com/apk/res/android" android:dither="true" android:src="@drawable/beauty1" android:tileMode="disabled" >activity_main.xml<

2013-05-09 16:55:10 4050 1

原创 Drawable&Drawable Resources——BitmapDrawable应用实例

activity_main.xml<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:gravity="cent

2013-05-09 16:44:38 641

翻译 Drawable Resources

drawable资源是一个图形的通用概念,它表示这个图形可以绘制到屏幕上,可以使用API接口获取,例如getDrawable(int);或应用到另外的XML资源属性中,例如android:drawable和android:icon。有以下几种drawable资源。Bitmap File——一个位图图形文件(.png,.jpg,.gif)[此处指出了位图就是我们真是可见的图片]。创建一个Bitm

2013-05-09 10:58:04 1074

原创 安卓使用Canvas画图分析

安卓使用除了使用已有图片之外,还可以画图。前者由drawable完成,而后者则由Canvas等完成。本篇探讨后者,安卓画图涉及到的类,以及绘图机制的研究。绘制一副图形,有四个基本构成:一个hold像素点的Bitmap;一个进行绘制调用(写到bitmap中)的Canvas;一个基本绘画图形(例如Rect,Path,text,Bitmap),和一支画笔(定义了线条的颜色,样式等;Paint类)。

2013-05-07 16:14:12 955

翻译 Canvas and Drawables

Android framework API提供了一套2D绘画API绘制自己的图形到画布上或更改已有的Views定制外观。绘制2D图形,有两种方法:从layout中把图形或动画绘制给一个View对象。在这个方法中,图形绘制操作由系统普通View图层绘制进程完成——我们只需要定义这个图形到View视图中。直接绘制图形到画布上。这样需要个人调用onDraw()方法或者画布类的draw...()方

2013-05-06 20:51:43 1022

翻译 动画和图形——View Animation

我们使用view animation系统表示view视图的补间动画。补间动画计算动画信息,比如开始点,结束点,大小,旋转度和其他与动画相关的信息。一个补间动画可以表示一个View对象内容的一系列简单的变化(位置,大小,旋转和透明)。所以,如果有一个TextView对象,我们可以移动,旋转,伸缩这个text。如果有背景图片,背景图片可以随着text一起变化。animation包提供了补间动画使用

2013-05-06 15:39:57 703

翻译 动画和图形——Property Animation

property animation系统是一套健壮的框架,允许我们动画化几乎任何东西。我们可以定义一个动画来改变对象的任何属性,而不用管它是否会绘制到屏幕上。属性动画随着时间改变对象属性值(对象的一个域)。动画化一个实体,我们指定这个实物需要动画化的属性,比如一个实体在屏幕上的位置,持续多长时间和其它在动画持续过程中的属性。property animation系统允许需要我们定义以下特征:

2013-05-03 18:14:08 1149

翻译 动画和图形——Overview

安卓系统提供了一套很强的UI动画和绘制2D,3D图形的API。Animation安卓framework提供了两类动画系统:property animation(属性动画)(安卓3.0引入)和view animation(视图动画)。两类动画都是不错的选择,但property animation因其较大的灵活性和更丰富的特征性更为开发人员所青睐。这两类动画之外,还有一种Drawable an

2013-05-03 15:21:07 631

原创 Api-Demo Advanced preference分析

该Demo的效果图如下所示,点击MyPreference,数字会增加。而CheckBoxPreference则自动在Check和UnCheck切换:advanced_preferences.xml<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"> //自定义

2013-05-02 10:39:15 989

转载 Android Handler

http://www.pin5i.com/showtopic-android-handler.html一、Handler的定义:          主要接受子线程发送的数据, 并用此数据配合主线程更新UI.          解释: 当应用程序启动时,Android首先会开启一个主线程 (也就是UI线程) , 主线程为管理界面中的UI控件,进行事件分发, 比如说, 你要是点击一

2013-05-02 10:04:53 418

原创 实例探索Preference XML文件中的各项属性

Preference的API中定义了如下属性,我们通过实例一一分解它们的含义和用处。本例借助一个CheckBoxPreference分析,而且只分析Preference里的各项属性,对于子类的属性我们这里不作介绍。MainActivity.java:package com.sean.preferenceattributestest;import android.app.Ac

2013-04-28 15:07:59 2837

原创 写好一个Preference的大局观

1. 一个完整的Preference由两部分组成,一个继承自Preference的类(比如系统已定义的CheckBoxPreference或自定义CustomPreference)和放置相应配置信息的XML文件(包括系统已定义标签,,或自定义指向对应CustomPreference类的标签,这一类标签等同于自定义标签)。2.如果仅有Preference,那么可以认为只有了setting的后

2013-04-26 10:45:34 1362

原创 g++编译warning: deprecated conversion from string constant to ‘char*’ /tmp/ccSf0DmE.o: In function `ma

我用的ubuntu操作系统,以下是c++Primer Plus(第五版)的一段代码,结果出现了标题所示的警告,请教哪位大神帮忙解解,谢谢。完整警告如下: g++ strgfun.cpp -o strgfunstrgfun.cpp: In function ‘int main()’:strgfun.cpp:6: warning: deprecated conversion from

2012-11-20 09:29:11 951 1

空空如也

空空如也

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

TA关注的人

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