activity的深入浅出
文章平均质量分 69
duanyu218
这个作者很懒,什么都没留下…
展开
-
Android多媒体-MediaPlayer使用方式
先不多说,直接上代码public class SimpleMediaPlayerActivity extends Activity { //private static final Uri mMusicUri = Uri.fromFile(new File("/sdcard/sound_file_1.mp3")); private static final Uri mMusicUri原创 2014-06-09 17:05:30 · 909 阅读 · 0 评论 -
Android多媒体- ExifInterface读取图片相关信息
从Android 2.0开始新增了ExifInterface类,ExifInterface类主要描述多媒体文件比如JPG格式图片的一些附加信息,比如图片文件的旋转,gps,缩略图等。该类位于android.media.ExifInterface的位置,需要调用API Level至少为5即2.0 SDK。图片的的Exif信息和MP3的ID3标签类似,使用了属性和值的存储方式。通过public v原创 2014-06-10 17:02:22 · 1518 阅读 · 0 评论 -
Android多媒体-人脸识别
1. 相关背景Google 于2006年8月收购Neven Vision 公司 (该公司拥有 10 多项应用于移动设备领域的图像识别的专利),以此获得了图像识别的技术,并很快应用到免费的 Picasa 相册管理程序中,提供基于人脸识别的相片管理功能,另外还推出了一个新项目叫Goggle ,能从照片中识别世界各地的地标建筑,同样Google 也把人脸识别功能添加到了Android 中。不过由原创 2014-06-10 17:34:07 · 1152 阅读 · 0 评论 -
Android多媒体-MediaRecorder 录制音视频
不多说,直接上代码,有详细注释MyAudioRecord.javaimport java.io.File;import java.io.IOException;import android.app.Activity;import android.content.ContentValues;import android.content.Intent;import android.m原创 2014-06-10 15:54:14 · 1054 阅读 · 0 评论 -
Android多媒体-播放多媒体时的前台服务
众所周知,一般我们将播放的逻辑都放入service当中,这样就能实现在后台继续播放音乐的功能。后台service被系统回收的概率相对来说比较低,但是这种情况也确实存在。前台服务是哪些被认为用户知道的并且在内存低的时候不允许系统杀死的服务。前台服务必须给状态栏提供一个通知,他被放到了“正在进行中(Ongoing)”标题之下,这就意味着直到这个服务被终止或从前台删除通知才能被解除。例如,一原创 2014-06-10 14:08:53 · 1230 阅读 · 0 评论 -
Android中launchMode模式详解
关于Android中launchMode的文章介绍的真心不少,广为流传而且介绍的最详细的莫过于这篇文章http://blog.csdn.net/android_tutor/article/details/6310015。但是这篇文章中关于singletask和singleinstance在评论中还是有些不解和争论,在此根据实例重点说下这两种模式:实例简介:有两个Activity,分别为AAct原创 2014-07-01 14:59:55 · 942 阅读 · 0 评论 -
PagerTabStrip和PagerTitleStrip异同
相信很多开发者朋友使用过ViewPager这个类,这个类在使用时必须在项目中添加android-support-v4.jar这个类包。在xml中引用时必须要写全包名,否则无法找到此类。举例如下:[java] view plaincopy android:id="@+id/viewpager" andro原创 2013-12-04 15:20:25 · 1373 阅读 · 0 评论 -
Android提高UI性能技巧
提高UI性能的方法其实有很多在实际的开发中都已经用到了,在此做一下总结。1.减少主线程的阻塞时间若一个操作的耗时较长(超过5秒),我们应该将其放入后台线程中执行,只在需要修改UI界面时通知主线程进行修改。Android已经提供了AsyncTask以实现从主线程生成新的异步任务的方法。2.提高Adapter&AdapterView的效率(1)重用已生成过的Item View(原创 2014-06-12 13:20:52 · 1044 阅读 · 0 评论 -
Android生命周期里你或许不知道的事
Android生命周期估计连初学者都再熟悉不过的东西了,但这里我抛出几个问题,或许大家以前没有想过或者可能认识的有些错误。一、当A启动B时,A和B生命周期方法执行的先后顺序是怎样的?当按返回键返回时,又是怎样的?(读者可以先想想,可能会跟你的答案不一致)A--->B时,打印结果如下:按返回键B--->A,打印结果如下:结论:先执行当前显示Activity的onPau原创 2014-07-02 11:39:00 · 853 阅读 · 0 评论 -
PagerAdapter、FragmentPagerAdapter和FragmentStatePagerAdapter的关系
ViewPagerViewPager 如其名所述,是负责翻页的一个 View。准确说是一个 ViewGroup,包含多个 View 页,在手指横向滑动屏幕时,其负责对 View 进行切换。为了生成这些 View 页,需要提供一个 PagerAdapter 来进行和数据绑定以及生成最终的 View 页。setAdapter()ViewPager 通过 se原创 2013-12-04 14:12:31 · 953 阅读 · 0 评论 -
Android多媒体-支持的多媒体格式
1.Network ProtocolsRTSP (RTP, SDP)HTTP progressive streamingHTTP live streaming draft protocol (Android 3.0 and above)Note: HTTPS is not supported at this time.2.Core Media Formats原创 2014-06-09 15:03:16 · 759 阅读 · 0 评论 -
android动画-移动动画问题
Android写动画效果不是一般的麻烦,网上找了好久,终于解决了动画的问题,总结记录以共勉。仅以水平方向移动效果做说明,垂直方向类似。 完整动画函数代码: 1 public void slideview(final float p1, final float p2) { 2 TranslateAnimation animation = ne原创 2014-01-17 17:35:24 · 895 阅读 · 0 评论 -
activity的深入浅出-------通过几个问题来深入理解handler机制
1.handler的作用是什么 1)执行计划任务,你可以再预定的实现执行某些任务,可以模拟定时器 2)线程间通信。在Android的应用启动时,会创建一个主线程,主线程会创建一个消息队列来处理各种消息。当你创建子线程时,你可以再你的子线程中拿到父线程中创建的Handler对象,就可以通过该对象向父线程的消息队列发送消息了。由于Android要求在UI线程中更新界面,因此原创 2012-03-19 17:14:51 · 673 阅读 · 0 评论 -
activity的状态保存
当我们在微博中洋洋洒洒写了n多文字时,这时候电话铃声突然响起,当我们挂断电话时发现我们写的文字已经消失的无影无踪了。这时候你是不是感觉郁闷的要死啊,哈哈。。。,这就是今天我要说的activity的状态保存。activity的状态保存有两种方式:1.onSaveInstanceState和onRestoreInstanceState2.onPause和onResume下面我谈谈这两种原创 2012-03-19 11:14:52 · 926 阅读 · 1 评论 -
发现了除了在adapter中加载图片的另外一种方法
以前加载图片都是在adapt而当中j原创 2014-05-20 17:25:32 · 978 阅读 · 0 评论 -
android动画-动画分类及代码示例
原来一直对动画一知半解,只知道按照网上的方法会用就行了,但是自己写起来感觉确实有点费劲,今天终于研究了代码实现,一下子感觉清晰多了。先把总结如下,代码中有详细的注释。动画分类 1.Peoperty Animation 这个动画是Android3.0之后推出的目前用处不大。 2.View Animation 这类动画也叫twe原创 2014-06-04 17:52:06 · 1229 阅读 · 0 评论 -
android动画-tween动画实现原理
现有的 Android 动画框架是建立在 View 的级别上的,在 View 类中有一个接口 startAnimation 来使动画开始,startAnimation 函数会将一个 Animation 类别的参数传给 View,这个 Animation 是用来指定我们使用的是哪种动画,现有的动画有平移,缩放,旋转以及 alpha 变换等。如果需要更复杂的效果,我们还可以将这些动画组合起来,这些在下原创 2014-06-05 14:32:36 · 1103 阅读 · 0 评论 -
android动画-Activity之间切换动画
Android中页面之间动画切换可以使用两种方式,一种是代码,一种是定义修改Activity Theme。一.代码实现相对来说比较简单通过调用 overridePendingTransition() 可以实时修改Activity的切换动画。但需注意的是:该函数必须在调用startActivity()或finishe后立即调用,且只有效一次。二.Activity Them原创 2014-06-05 16:04:22 · 894 阅读 · 0 评论 -
android动画-拖动
先上图看效果实质上说是动画有点不妥,确切的说应该是手势的处理,废话不多说看代码SimpleDragSample.javapublic class SimpleDragSample extends Activity { protected int contentTop; @Override protected void onCreate(Bundle saved原创 2014-06-06 13:23:54 · 1152 阅读 · 0 评论 -
Android多媒体-底层流程简介
先上图,根据图做一个简单介绍我们讲一下MediaPlayer应用层的播放器首先调用framework层的MediaPlayer的类,接着FrameWork层会继续调用Native层的MediaPlayer类,然后通过Binder调用MediaPlayerService,MediaPlayerService调用OpenVC库解码成原始的视频流和音频流,视频流通过UI一帧一帧的显示出来,Med原创 2014-06-09 14:45:45 · 977 阅读 · 0 评论 -
Android多媒体-MediaPlayer生命周期
Android MediaPlayer的生命周期MediaPlayer的状态转换图也表征了它的生命周期,搞清楚这个图可以帮助我们在使用MediaPlayer时考虑情况更周全,写出的代码也更具健壮性。这张状态转换图清晰的描述了MediaPlayer的各个状态,也列举了主要的方法的调用时序,每种方法只能在一些特定的状态下使用,如果使用时MediaPlayer的状态不正确则会引发Il原创 2014-06-09 16:05:42 · 799 阅读 · 0 评论 -
Android多媒体-MediaPlayer唤醒锁及音频焦点
MediaPlayer的唤醒锁 一般使用MediaPlayer播放音频流,推荐使用一个Service来承载MediaPlayer,而不是直接在Activity里使用。但是Android系统的功耗设计里,为了节约电池消耗,如果设备处于睡眠状态,系统将试图降低或者关闭一些没设备必须的特性,包括CUP和Wifi硬件,然后,如果是一个后台播放音乐的应用,降低CUP可能导致在后台运行的时候干扰原创 2014-06-10 11:02:29 · 2634 阅读 · 1 评论 -
Android进程的生命周期
Android系统想要永久的保留一个应用进程几乎是不可能的,所以系统就需要不断的释放老的或者不太重要的进程以便腾出足够的内存空间来运行新的或者更重要的进程,那么系统如何决定哪个进程应该保留哪个应该杀死呢,原来系统会根据进程中运行组件以及他们的状态列出一个“重要层级”,当内存出现紧张的时候,系统会首先杀死最不重要的进程,接着是第二个,第三个。。。,以此类推来不断的释放系统资源直到内存不再紧张为止。原创 2014-06-19 16:34:56 · 1152 阅读 · 0 评论