2014年2月28日

摘要: 在Android系统中,广播(Broadcast)是在组件之间传播数据(Intent)的一种机制;这些组件甚至是 可以位于不同的进程中,这样它就像Binder机制一样,起到进程间通信的作用;本文通过一个简单的例子来学习Android系统的广播机制,为后续分析 广播机制的源代码作准备。 在Android系统中,为什么需要广播机制呢?广播机制,本质上它就是一种组件间的通信方式,如果是两个组件位于不同的进程当中,那么可以用 Binder机制来实现,如果两个组件是在同一个进程中,那么它们之间可以用来通信的方式就更多了,这样看来,广播机制似乎是多余的。然而,广播机制却是 不可替代的,它和Binder.. 阅读全文
posted @ 2014-02-28 15:10 冰花ぃ雪魄 阅读(329) 评论(0) 推荐(0) 编辑
 
摘要: “一切皆Socket!”话虽些许夸张,但是事实也是,现在的网络编程几乎都是用的socket。——有感于实际编程和开源项目研究。我们深谙信息交流的价值,那网络中进程之间如何通信,如我们每天打开浏览器浏览网页时,浏览器的进程怎么与web 服务器通信的?当你用QQ聊天时,QQ进程怎么与服务器或你好友所在的QQ进程通信?这些都得靠socket?那什么是socket?socket的类型 有哪些?还有socket的基本函数,这些都是本文想介绍的。本文的主要内容如下:1、网络中进程之间如何通信?2、Socket是什么?3、socket的基本操作3.1、socket()函数3.2、bind()函数3.3、li 阅读全文
posted @ 2014-02-28 10:36 冰花ぃ雪魄 阅读(218) 评论(0) 推荐(0) 编辑

2014年2月25日

摘要: (转自http://blog.csdn.net/guolin_blog/article/details/13171191)现在Fragment的应用真的是越来越广泛了,之前Android在3.0版本加入Fragment的时候,主要是为了解决Android Pad屏幕比较大,空间不能充分利用的问题,但现在即使只是在手机上,也有很多的场景可以运用到Fragment了,今天我们就来学习其中一个特别棒的应 用技巧。很多手机应用都会有一个非常类似的功能,即屏幕的下方显示一行Tab标签选项,点击不同的标签就可以切换到不同的界面,如以下几个应用所示: 上面三个应用从左到右分别是QQ、新浪微博和... 阅读全文
posted @ 2014-02-25 13:56 冰花ぃ雪魄 阅读(225) 评论(0) 推荐(0) 编辑
 
摘要: (转自http://blog.csdn.net/guolin_blog/article/details/8881711)我们都知道,Android上的界面展示都是通过Activity实现的,Activity实在是太常用了,我相信大家都已经非常熟悉了,这里就不再赘述。但 是Activity也有它的局限性,同样的界面在手机上显示可能很好看,在平板上就未必了,因为平板的屏幕非常大,手机的界面放在平板上可能会有过分被拉 长、控件间距过大等情况。这个时候更好的体验效果是在Activity中嵌入"小Activity",然后每个"小Activity"又可以拥有自己的布 阅读全文
posted @ 2014-02-25 13:30 冰花ぃ雪魄 阅读(239) 评论(0) 推荐(0) 编辑

2014年2月24日

摘要: 做Android的同学说起 Activity,那绝对是熟悉的不能再熟悉了,但是越熟悉的东西往往越陌生。我们真的了解她吗?她是我们所认识的那样吗?或许是,或许不是!了解与否, 让我们往下看。首先借Android官网的这张图来展现Activity的生命周期,这张金字塔图比起那张所有书上都有的生命周期流程图绝对要来的爽快:从上图可以看到,最右边下方的Android机器人代表启动一个Activity,经过一系列的操作和过程,经过三个生命周期回调方法,到达金字塔的顶层,爬到顶层就可以供用户操作了。然后从金字塔顶往下,再经过三个生命周期方法,就又到了金字塔的另一边底层,Activity就销毁了。但是当下金 阅读全文
posted @ 2014-02-24 15:56 冰花ぃ雪魄 阅读(256) 评论(0) 推荐(0) 编辑

2014年2月23日

摘要: 为了兼容性使用 AppCompat 支持库。现在我试图override AppCompat 中的一些项来建立自己的Theme,在values文件下的style.xml里添加如下内容。所以同样的方式做在这里: http://developer.android.com/guide/topics/ui/actionbar.html#StyleExample然而,Eclipse 在这里引发一个错误,说:android:actionBarStyle requires API level 11 (current min is 8) themes.xml这要这么办,如果不用Android:。。。。的话就无法 阅读全文
posted @ 2014-02-23 21:41 冰花ぃ雪魄 阅读(792) 评论(0) 推荐(0) 编辑
 
摘要: In its most basic form, the action bar displays the title for the activity and the app icon on the left. Even in this simple form, the action bar is useful for all activities to inform users about where they are and to maintain a consistent identity for your app.Figure 1. An action bar with the app 阅读全文
posted @ 2014-02-23 19:11 冰花ぃ雪魄 阅读(411) 评论(0) 推荐(0) 编辑
 
摘要: To respond to the button's on-click event, open the activity_main.xml layout file and add the android:onClick attribute to the element:The android:onClick attribute’s value, "sendMessage", is the name of a method in your activity that the system calls when the user clicks the button.Op 阅读全文
posted @ 2014-02-23 18:59 冰花ぃ雪魄 阅读(238) 评论(0) 推荐(0) 编辑
 
摘要: 近日,在做一个人人的第三方小项目。打算直接使用renren 的sdk 进行开发。因为renren的sdk是以android library project 形式发布的(关于这种project的内容可以参考android library project)。整个导入流程严格按照guide的内容操作,但是始终无法导入,设置导入后项目中不出现相关的Library project。在设置完library之后重新打开始始终显示关联错误,就是reference那里是个红叉。Eclipse也没有任何出错提示。在stackoverflow上也找过相应问题,找到了解决问题的方案(StackOverFlow上的解答 阅读全文
posted @ 2014-02-23 15:51 冰花ぃ雪魄 阅读(210) 评论(0) 推荐(0) 编辑

2014年2月21日

摘要: 使用@TargetApi annotaion, 使高版本API的代码在低版本SDK不报错例如:AsyncTask.THREAD_POOL_EXECUTOR, 这个静态变量是API11才有的, 设置project build target 为 2.1.这个时候eclipse会提示找不到这个变量。只要在方法前面加一个 @TargetApi(11), 这样就不会报错了,程序已经可以跑在低版本SDK上了。另外在代码上要加一个版本判断是否执行该代码, 例子如下@TargetApi(11)public void text(){if(Build.VERSION.SDK_INT >= 11){ /... 阅读全文
posted @ 2014-02-21 17:16 冰花ぃ雪魄 阅读(523) 评论(0) 推荐(0) 编辑