随笔分类 -  Android

摘要:MediaPlayer类可用于控制音频/视频文件或流的播放。关于如何使用这个类的方法还可以阅读VideoView类的文档。1.状态图对播放音频/视频文件和流的控制是通过一个状态机来管理的。下图显示一个MediaPlayer对象被支持的播放控制操作驱动的生命周期和状态。椭圆代表MediaPlayer对象可能驻留的状态。弧线表示驱动MediaPlayer在各个状态之间迁移的播放控制操作。这里有两种类型的弧线。由一个箭头开始的弧代表同步的方法调用,而以双箭头开头的代表的弧线代表异步方法调用。通过这张图,我们可以知道一个MediaPlayer对象有以下的状态:1)当一个MediaPlayer对象被刚刚 阅读全文
posted @ 2011-04-08 20:03 gansc23 阅读(6482) 评论(0) 推荐(1)
摘要:Android平台对一些常见的媒体格式内置了编解码器。并且应用可以非常简单地访问平台的多媒体功能――you do so using the same intents and activities mechanism that the rest of Android uses.Android可以让你播放多种音频和视频类型的数据源。你可以播放存放在应用程序raw资源中的多媒体文件,或是放在文件系统中的多媒体文件,或是从网络上读取的数据流。使用MediaPlayer类来播放音频和视频媒体。在被硬件支持的情况下,Android也可以让你录制音频和视频。录制需要使用MediaRecorder类。注意在模 阅读全文
posted @ 2011-04-08 01:35 gansc23 阅读(960) 评论(0) 推荐(0)
摘要:在Android应用的开发中,如果我们需要在不同的模块(比如不同的Activity之间)之间传递数据,通常有以下两种方法:1. 利用Intent对象携带数据通过查询Intent/Bundle的API文档,我们可以获知,Intent/Bundle支持传递基本类型的数据和基本类型的数组数据,以及String/CharSequence类型的数据和String/CharSequence类型的数组数据。而对于其它类型的数据貌似无能为力,其实不然,我们可以在Intent/Bundle的API中看到Intent/Bundle还可以传递Parcelable(包裹化,邮包)和Serializable(序列化)类 阅读全文
posted @ 2011-03-09 00:11 gansc23 阅读(7872) 评论(0) 推荐(1)
摘要:并不是所有的Android真机中都带有Google Map add-on,要想内置Google Map add-on是需要和google商谈的。 但是若我们开发一个使用到了Google Map add-on的Android应用程序(即使用了<uses-library android:name="com.google.android.maps" />),就会发现这个程序不能成功安装在没有内置Google Map add-on的真机中,那么我们有什么办法来解决这个问题呢?方法有两个:1)维护两条代码分支: 一条分支是针对于内置有Google Map add-on的A 阅读全文
posted @ 2011-02-28 17:37 gansc23 阅读(5997) 评论(0) 推荐(1)
摘要:当一个应用程序的第一个组件需要被运行时,android系统会启动一个只有一个主线程的linux进程来运行这个组件。默认情况下,应用程序的所有组件都是运行在这个主线程中的。 但是你也可以使组件运行在其它的进程中,而且你也可以从任何进程中新开起子线程。进程 在manifest文件中的<activity>,<service>,<receiver>和<provider>标签都有一个名为process的属性,通过设置这个属性,我们可以控制这个组件运行在哪个进程中。我们可以让这个应用程序中的所有组件运行在各自不同的进程中,或者让它们中的一部分运行在同一个进程 阅读全文
posted @ 2011-02-08 17:46 gansc23 阅读(1339) 评论(2) 推荐(1)
摘要:在android中,一个activity组件可以激活另一个activity组件(可能属于另一个应用程序)。 若新的被激活的activity组件属于另一个应用程序,则那个activity组件会运行在那个应用程序的进程中,但是从用户的角度来看,好像就是属于本应用程序一样。Android是通过将之前的activity组件和新被激活的activity组件放入同一个任务栈来实现这个功能的。从用户的角度看,一个任务栈就代表了“一个应用程序”。它实际上是一个栈,里面放着一组被排列好的相关的activity组件。位于栈底的activity(根activity)就是开启这个任务栈的activity组件,一般情. 阅读全文
posted @ 2011-01-26 10:33 gansc23 阅读(2417) 评论(2) 推荐(0)
摘要:Android应用程序主要是用Java语言来书写的。而android提供了一个名为aapt的工具来将编译完的java二进制文件(.class)和需要的数据和资源打包成一个apk包。用户可以在android设备上安装这个apk包。一个apk包就被认为是一个应用程序。 从很多角度来看,每一个android应用程序都是存活在一个独立的环境中的: 1)每一个应用程序默认是运行在它自己的linux进程中的。 2)每一个进程都有一个独立的虚拟器(VM),所以每一个应用程序相对于其它的应用程序是运行在一个孤岛环境中的。 3)每一个应用程序默认都会被分配一个唯一的linux用户id号。又因为有权限的作用,所. 阅读全文
posted @ 2011-01-21 17:16 gansc23 阅读(689) 评论(0) 推荐(0)
摘要:通过共享用户ID来实现多个应用程序使用同一个进程,这样也能使这些应用程序之间共享内存。1. 同一Apk中的同一包中的多个Activity调用时进程状况验证[1]创建Project: project name: FirstProject package : com.demo 默认Activity : MainActivity[2]添加一个新的Activity: name: SecondActivity[3]修改布局。在MainActivity布局中添加一个Button,当点击此Button时启动SecondActivity。在SecondActivity的布局中放置一个Textview,以证明S 阅读全文
posted @ 2011-01-21 14:39 gansc23 阅读(3072) 评论(0) 推荐(1)
摘要:Android是什么? Android是一个针对于移动设备的软件栈,它包括操作系统,中间件和关键应用。AndroidSDK提供了在Android平台使用Java编程语言进行开发应用程序的必要的工具和API。特点 *应用程序框架 使组件可重用并且可替换 *Dalvik虚拟机 为移动设备优化 *集成的浏览器 基于开源的WebKit引擎 *优化的图形处理 以定制的2D图形库和基于OpenGLES 1.0规范的3D图形(可选的硬件加速)为基础 * SQLite结构化数据的存储 *媒体支持 常见的音视频格式,还是图形格式(MPEG4, H.264, MP3, AAC, AMR, JPG, PNG, GI 阅读全文
posted @ 2010-12-21 11:19 gansc23 阅读(2895) 评论(0) 推荐(0)