自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(48)
  • 资源 (1)
  • 收藏
  • 关注

原创 让人看出强势你就输了

当我是菜鸟一只的时候,曾经被发配到远远的一个大客户那里常驻服务。那家公司里有位神一样的传奇人物,我记得很清楚,当年她才三十六岁,已经官至SVP,工科女,技术人员出身,营销总监做了七年,我认识她的时候正调整分工,接管大供应链系统。她并不漂亮,但很顺眼,朴素得令人发指,一年四季永远穿各式白衬衫配不同颜色的西装裙低跟鞋。并不特别强势或者犀利,也没有特殊的亲和力或者幽默感,就是挺自然平常的一个人。没人

2015-01-29 09:57:37 1302 2

转载 Linux 工作队列和等待队列的区别

work queue是一种bottom half,中断处理的后半程,强调的是动态的概念,即work是重点,而queue是其次。wait queue是一种「任务队列」,可以把一些进程放在上面睡眠等待某个事件,强调静态多一些,重点在queue上,即它就是一个queue,这个queue如何调度,什么时候调度并不重要。对这2个容易混淆的队列做简单概念上的区别,怎么用? 等待队列在内

2015-01-27 15:48:27 546

转载 linux设备驱动程序中的阻塞机制

阻塞与非阻塞是设备访问的两种方式。在写阻塞与非阻塞的驱动程序时,经常用到等待队列。一、阻塞与非阻塞  阻塞调用是指调用结果返回之前,当前线程会被挂起,函数只有在得到结果之后才会返回。  非阻塞指不能立刻得到结果之前,该函数不会阻塞当前进程,而会立刻返回。  对象是否处于阻塞模式和函数是不是阻塞调用有很强的相关性,但并不是一一对应的。阻塞对象上可以有非阻塞的调用方式,我们可以通过

2015-01-27 15:41:12 958

转载 Android 开发之 ---- bootloader (LK)

LK是什么           LK 是 Little Kernel 它是 appsbl (Applications ARM Boot Loader)流程代码  ,little kernel 是小内核小操作系统。           LK 代码 在 bootable/bootloadler/lk 目录下           LK 代码结构           +app       

2015-01-26 18:07:41 617

原创 在江湖混要养成的10个好习惯

“人之患在好为人师”,我也特烦教导别人。一来是认为每个人的情况不一样,很难一概论之。那些号称他的成功可以复制的,不是为了骗你钱买书的,就是教你抄袭造假骗人的。二来我光讲、你光听,基本没用。我好好讲《易筋经》,你好好听,你还是不会少林武功。所以,你们想听我讲,刚入职场应该注意什么,让我为难了,想来想去,还是说说好习惯。在江湖上混,养成好习惯第一,其他就在你们各自的特质和造化了。第一个习惯是及

2015-01-26 10:45:47 946

原创 ContentProvider介绍

1. 什么是ContentProviderandroid系统中数据都是私有的,通过ContentProvider进行程序间数据的交换.一个Content Provider类实现了一组标准的方法接口,从而能够让其他的应用保存货读取此Content Provider的各种数据类型.也就是说,一个程序可以通过实现一个Content Provider的抽象接口将自己的数据暴露出去,外界可以通过Co

2015-01-23 10:41:15 700

原创 SQLiteDataBase

什么是SQLiteDataBase ?一个SQLiteDatabase 的实例代表了一个SQLite的数据库,通过SQLiteDatabase实例的一些方法,我们可以执行SQL语句,对数据库进行增/删/查/改 的操作.需要注意的是,数据库对于一个应用来说是私有的,并且在一个应用中,数据库的名字也是唯一的.什么是SQLiteOpenHelper ?这是一个SQLite的辅助类

2015-01-22 16:16:22 774

原创 sharedPreferences

使用sharedPreferences保存key-value的步骤如下:(1)使用activity类的getSharedPreferences方法获得SharedPreferences对象,其中存储key-value的文件的名称由getSharedPreferences方法的第一个参数指定.(2)使用SharedPreferences接口的edit获取SharedPreferences.E

2015-01-22 14:06:38 566

转载 如何不工作了还有源源不断的收入

导语 :拥有金山跟银矿,其实不值得羡慕。与其选择万贯家财,倒不如选择一个会持续冒出钱的杯子。很多人害怕上班的收入不确定,上班族急于寻找双薪,下班之后还要辛勤工作,以为这样就可以远离贫穷。  其实,无论兼做几份工作,单靠增加工时获得的收入永远无法让你摆脱贫穷。  想致富,我们必须记住几个原则:  第一,凡是不可持续的,就不值得羡慕。

2015-01-22 10:36:33 998 5

转载 Notification简介

Notification简介  Notification看名字就知道,是一个和提醒有关的东西,它通常和NotificationManager一块使用。具体来说,其主要功能如下。  1.NotificationManager和Notification用来设置通知  通知的设置等操作相对比较简单,基本的使用方式就是新建一个Notification对象,设置好通知的各项参数,然后使用系统后台

2015-01-20 16:00:31 1146

转载 工作队列workqueue

一、workqueue简介workqueue与tasklet类似,都是允许内核代码请求某个函数在将来的时间被调用.每个workqueue就是一个内核进程。workqueue与tasklet的区别:   1.tasklet是通过软中断实现的,在软中断上下文中运行,tasklet代码必须是原子的     workqueue是通过内核进程实现的,就没有上述限制的,最爽的是,工

2015-01-19 15:53:15 788

原创 android之dialog

什么是Dialog?Dialog类,是一切对话框的基类.需要注意的是,Dialog类虽然可以在界面上显示,但是并非继承于View类,而是直接从java.lang.Object开始构造出来的.类似于Activity, Dialog也是有生命周期的,它的生命周期由Activity来维护.Activity负责生成,保存,恢复它.在生命周期的各个阶段都有一些回调函数供系统反向调用.在Act

2015-01-19 10:19:31 745

原创 onCreateOptionsMenu()方法

这个方法负责生成menu,它是一个回调方法,当按下手机设备上的menu按键的时候,android系统才会生成一个包含两个子项的菜单.1)在onCreateOptionMenu()方法里边,首先得到super函数调用后的返回值.并且在方法的最后进行返回.2)调用menu.add()给menu添加一项.代码如下:public boolean onCreateOptionMenu(Men

2015-01-17 10:33:39 6416

转载 ProgressBar的使用

页面上现有ProgressBar控件progressBar,请用书写线程以10秒的的时间完成其进度显示工作。publicclass ProgressBarStu extends Activity {private ProgressBar progressBar = null;protected void onCreate(BundlesavedInstanceState) {super

2015-01-16 16:41:08 1175

转载 谈谈Android的IPC(进程间通信)机制

一说明 Android系统最常见也是初学者最难搞明白的就是Binder了,很多很多的Service就是通过Binder机制来和客户端通讯交互的。所以搞明白Binder的话,在很大程度上就能理解程序运行的流程。我们这里将以MediaService的例子来分析Binder的使用:l        ServiceManager,这是Android OS的整个服务的管理程序l       

2015-01-16 11:59:25 1401

转载 Handler,Thread和Runnable这三个类之间的关系

Android的CPU分配的最小单元是线程,Handler一般是在某个线程里创建的,因而Handler和Thread就是相互绑定的,一一对应。而Runnable是一个接口,Thread是Runnable的子类。所以说,他俩都算一个进程。HandlerThread顾名思义就是可以处理消息循环的线程,他是一个拥有Looper的线程,可以处理消息循环。与其说Handler和一个线程绑定,不如说H

2015-01-16 11:47:28 897

转载 Android性能优化——工具篇

Android性能优化是Android开发中经常遇见的一个问题,接下来将对Android性能优化方面的知识点做一个简单的梳理和总结,将从工具和代码两方面进行梳理。所谓工欲善其事必先利其器,本文首先来看一下Android性能优化有哪些得力的工具。1、TraceViewtraceview是Android SDK中自带的一个工具,可以对应用中方法调用耗时进行统计分析,是Android

2015-01-16 09:58:51 531

转载 android 使用DDMS

DDMS 的全称是Dalvik Debug Monitor Service,它为我们提供例如:为测试设备截屏,针对特定的进程查看正在运行的线程以及堆信息、Logcat、广播状态信息、模拟电话呼叫、接收SMS、虚拟地理坐标等等。如何启动 DDMSDDMS 工具存放在SDK – tools/路径下,启动DDMS方法如下:直接双击ddms.bat运行;在Eclipes调试程序的过程中

2015-01-16 09:49:38 2532

转载 ListView中getChildAt(index)的使用

1.原理在很多时候ListView列表数据不需要全部刷新,只需刷新有数据变化的那一条,这时可以用getChildAt(index)获取某个指定position的view,并对该view进行刷新。注意:在ListView中,使用getChildAt(index)的取值,只能是当前可见区域(列表可滚动)的子项!即取值范围在 >= ListView.getFirstVisiblePo

2015-01-15 17:58:58 557

转载 Android 中的接口回调

在Android中到处可见接口回调机制,尤其是UI事件处理方面。举一个最常见的例子button点击事件,button有一个点击方法onClick(),我们知道onclick()是一个回调方法,当用户点击button就执行这个方法。在源码中是这样定义的:[html] view plaincopy//这个是View的一个回调接口  /**  * 

2015-01-15 17:35:48 629

转载 Android之Adapter用法总结

Android之Adapter用法总结1.概念        Adapter是连接后端数据和前端显示的适配器接口,是数据和UI(View)之间一个重要的纽带。在常见的View(List View,Grid View)等地方都需要用到Adapter。如下图直观的表达了Data、Adapter、View三者的关系:Android中所有的Adapter一览:

2015-01-15 15:47:39 486

转载 android:layout_gravity 和 android:gravity 的区别

gravity 这个英文单词是重心的意思,在这里就表示停靠位置的意思。android:layout_gravity 和 android:gravity 的区别从名字上可以看到,android:gravity是对元素本身说的,元素本身的文本显示在什么地方靠着换个属性设置,不过不设置默认是在左侧的。android:layout_gravity是相对与它的父元素说的,说明元素显示在父元素的什

2015-01-14 15:30:09 436

转载 Android LayoutInflater详解

在实际开发中LayoutInflater这个类还是非常有用的,它的作用类似于findViewById()。不同点是LayoutInflater是用来找res/layout/下的xml布局文件,并且实例化;而findViewById()是找xml布局文件下的具体widget控件(如Button、TextView等)。具体作用:1、对于一个没有被载入或者想要动态载入的界面,都需要使用Layou

2015-01-14 15:18:57 468

原创 bt.setOnClickListener(new OnClickListener()报错java.lang.nullpointerException

代码没有提示红叉,运行时却会报错.import android.app.Activity;import android.app.Fragment;import android.content.Intent;import android.os.Bundle;import android.view.LayoutInflater;import android.view.Menu;impo

2015-01-14 14:17:21 3143 3

转载 利用getLayoutParams()方法和setLayoutParams()方法

利用getLayoutParams()方法 和 setLayoutParams()方法 重新 设置 控件的 布局,1、首先利用getLayoutParams()方法,获取控件的LayoutParams。     eg:LayoutParams  laParams=(LayoutParams)imageView.getLayoutParams();2、设置该控件的layoutPa

2015-01-14 10:52:15 772

转载 各种Adapter的用法

同样是一个ListView,可以用不同的Adapter让它显示出来,比如说最常用的ArrayAdapter,SimpleAdapter,SimpleCursorAdapter,以及重写BaseAdapter等方法。  ArrayAdapter比较简单,但它只能用于显示文字。而SimpleAdapter则有很强的扩展性,可以自定义出各种效果,SimpleCursorAdapter则可以从数据库中

2015-01-13 15:31:49 499

转载 关于Android ListView组件中android:drawSelectorOnTop含义

android:drawSelectorOnTop="true" 点击某一条记录,颜色会显示在最上面,记录上的文字被遮住,所以点击文字不放,文字就看不到android:drawSelectorOnTop="false"点击某条记录不放,颜色会在记录的后面,成为背景色,但是记录内容的文字是可见的When set to true, the selector will be drawn over

2015-01-13 14:21:34 511

原创 下拉列表(Spinner)介绍与应用

Spinner提供一种下拉列表选择,这种输入方式也是很常见的.比如选择语言,屏幕灭屏时间选择等.按照之前介绍的其他组件一样,Spinner的实现也是首先在main.xml文件中添加一个按钮,单击此按钮会跳转到这个SpinnerActivity文件.添加Button的代码如下所示:<Button android:id = "@+/spinner_button" andro

2015-01-13 10:05:29 685

原创 单项选择(RadioGroup)介绍与应用

RadioGroup提供了一种多选一的选择模式,也是经常应用的组件,这里介绍RadioGroup的用法.按照之前已经介绍过的其他组件,首先在main.xml文件中添加一个按钮,单击该按钮会启动这个RadioGroupActivity,首先添加Button的代码,具体如下:<Button android:id = "@+id/radio_group_button" and

2015-01-12 17:37:05 4275 1

转载 android GPS驱动

关于android定位方式android 定位一般有四种方法,这四种方式分别是GPS定位、WIFI定位、基站定位、AGPS定位。1、 Android GPS需要GPS硬件支持直接和卫星交互来获取当前经纬度,这种方式需要手机支持GPS模块现在大部分的智能机应该都有了。通过GPS方式准确度是最高的但是它的缺点也非常明显。1、 比较耗电2、 绝大部分用户默认不开启GPS模块3、

2015-01-12 14:52:09 10180

原创 CheckBox介绍与应用

CheckBox一般用来提供给用户输入信息的组件,可以一次选择多个选项.这个组件解决了不是很方便的手机屏幕操作输入时.用选择组件供用户单击输入选项,显得非常有用.在Android中,和其他组件一样,也是在xml中定义,安装前面讲解的其他组件的编程思路,首先在main.xml文件中再增加一个按钮"CheckBox",单击该按钮程序运行将展示介绍CheckBox的界面.<Button an

2015-01-12 10:37:04 732

原创 编辑框(EditText)介绍与应用

而后前面介绍TextView应用一样,首先在程序的主入口界面上添加一个名字为"EditText"的按钮,并设定其监听器在接收到单击事件时,程序打开展示EditText的界面,在XML文件中添加Button的代码如下所示:<Button android:id = "@+id/edit_view_button" android:layout_width = "wrap_conten

2015-01-10 16:25:25 798

原创 文本框(TextView)介绍与应用

添加一个button,当这个button被单击的时候,显示用来讲解TextView的界面.<button android:id = "@+id/text_view_button" android:layout_width = "wrap_content" android:layout_height = "wrap_content"

2015-01-10 15:00:45 563

原创 按钮(Button)介绍与应用

Button在整个组件中的地位非常特殊,其一般情况下扮演"终结者"的角色,例如:用户在一个界面上输入一些信息,很多情况下都有一个"确认"或者"取消"的按钮.用户的动作一般在这里结束,然后开始另外一系列的动作.在这个项目的主界面上放置一个按钮,看看它是如何使用的,实现代码如下:<LinearLayout xmlns:android="http://schemas.android.com

2015-01-10 14:38:29 1059

原创 onclicklistener的写法

如果要对button做一个监听常见的一种写法: button0.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { Intent intent0 = n

2015-01-10 12:27:11 703

原创 android 应用的基本组件介绍

android应用 通常由一个或者多个基本组件组成.常见的有activity , service , brodacastreceiver , contentprovider  等.1.activity 和 viewactivity是android应用中负责与用户交互的组件. activity只能通过setContentView(View)来显示指定组件.View组件是所有UI控件,容器

2015-01-09 11:34:55 1200

转载 android中getSystemService详解

http://blog.sina.com.cn/s/blog_71d1e4fc0100o8qr.htmlhttp://blog.csdn.net/bianhaohui/article/details/6220135   android的后台运行在很多service,它们在系统启动时被SystemServer开启,支持系统的正常工作,比如MountService监听是否有SD卡安装及

2015-01-08 17:10:05 517

转载 context & service

context:        Context字面意思上下文,位于framework 的android.content.Context中。其实该类为LONG型,类似Win32中的Handle句柄,很多方法需要通过Context才能得到调用者的实例,比如说Toast的第一个参数就是Context,一般在Activity中我们直接用this代替;而到了一个button的onClick(View

2015-01-08 15:35:30 592

转载 PowerManager 类wakelock的操作实例

使用WakeLock可控制电源状态。比如在玩游戏时不允许屏幕变成DIM或者黑屏,那么只需要在启动游戏的activity的onResume函数中获取wakelock,在退出游戏时的activity的onPause函数中释放wakelock就行。操作方式就是:private void acquireWakeLock() { if (wakeLock ==null) {

2015-01-08 15:26:36 639

转载 android的content provider之二:添加数据库属性及用ContentObserver实现数据库的监听

工作中有时需要开启一个线程做大量的查询,来检测某个数据库值发送了变化,导致的开销很大,后来利用了ContentObserver完美的解决了该问题,这里做下总结。(1)ContentObserver——内容观察者,目的是观察(捕捉)特定Uri引起的数据库的变化,继而做一些相应的处理,它类似于数据库中的触发器,当所察的Uri发生变化时,便会触发它。它的主要方法有:       A,public

2015-01-07 18:01:26 463

yocto开发kernel

2016-12-13

空空如也

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

TA关注的人

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