- 浏览: 579756 次
- 性别:
- 来自: 广州
文章分类
最新评论
-
hxlniada:
[color=darkred][/color][size=sm ...
利用Handler来更新android的UI -
jack_ye:
...
检测Android中触摸屏手势的动作与坐标 -
z278013421:
Android Services使用示例 -
东方vs不败:
写的不错,挺好的
利用Handler来更新android的UI -
liangxping:
就是双缓存机制而已。
Android中SurfaceView的使用示例
Android开发中,当需要创建在后台运行的程序的时候,就要使用到Service。Service 可以分为有无限生命和有限生命两种。
特别需要注意的是Service跟Activities是不同的(简单来说可以理解为后台与前台的区别),例如,如果需要使用Service的话,需要调用startService(),从而利用startService()去调用Service中的OnCreate()和onStart()方法来启动一个后台的Service。
启动一个Service的过程如下:
context.startService() ->onCreate()- >onStart()->Service running
其中onCreate()可以进行一些服务的初始化工作,onStart()则启动服务。
停止一个Service的过程如下:
context.stopService() | ->onDestroy() ->Service stop
接下来的实例是一个利用后台服务播放音乐的小例子,点击start运行服务,点击stop停止服务。
程序运行界面:
代码:
定义服务,MyService.java
package com.example; import android.app.Service; import android.content.Intent; import android.media.MediaPlayer; import android.os.IBinder; import android.util.Log; import android.widget.Toast; public class MyService extends Service { private static final String TAG = "MyService"; MediaPlayer player; @Override public IBinder onBind(Intent intent) { return null; } @Override public void onCreate() { Toast.makeText(this, "My Service Created", Toast.LENGTH_LONG).show(); Log.d(TAG, "onCreate"); player = MediaPlayer.create(this, R.raw.braincandy);//运行例子是,需要替换音乐的名称 player.setLooping(false); // Set looping } @Override public void onDestroy() { Toast.makeText(this, "My Service Stopped", Toast.LENGTH_LONG).show(); Log.d(TAG, "onDestroy"); player.stop(); } @Override public void onStart(Intent intent, int startid) { Toast.makeText(this, "My Service Started", Toast.LENGTH_LONG).show(); Log.d(TAG, "onStart"); player.start(); } }
除此之外还要在Manifest里面声明服务:
<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.example" android:versionCode="1" android:versionName="1.0"> <application android:icon="@drawable/icon" android:label="@string/app_name"> <activity android:name=".ServicesDemo" android:label="@string/app_name"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> <service android:enabled="true" android:name=".MyService" /> </application> <uses-sdk android:minSdkVersion="3" /> </manifest>
定义Activity,ServicesDemo.java
package com.example; import android.app.Activity; import android.content.Intent; import android.os.Bundle; import android.util.Log; import android.view.View; import android.view.View.OnClickListener; import android.widget.Button; public class ServicesDemo extends Activity implements OnClickListener { private static final String TAG = "ServicesDemo"; Button buttonStart, buttonStop; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); buttonStart = (Button) findViewById(R.id.buttonStart); buttonStop = (Button) findViewById(R.id.buttonStop); buttonStart.setOnClickListener(this); buttonStop.setOnClickListener(this); } public void onClick(View src) { switch (src.getId()) { case R.id.buttonStart: Log.d(TAG, "onClick: starting srvice"); startService(new Intent(this, MyService.class)); break; case R.id.buttonStop: Log.d(TAG, "onClick: stopping srvice"); stopService(new Intent(this, MyService.class)); break; } } }
翻译整理自:http://www.planetandroid.com/
- ServicesDemo.rar (26.5 KB)
- 下载次数: 1276
评论
7 楼
z278013421
2014-02-08
6 楼
飞扬云
2011-09-18
楼主 列举的例子很好,看起来很顺,很容易懂。
非常感谢了!
向你学习!
非常感谢了!
向你学习!
5 楼
zhikook
2010-03-02
很多好的例子,都是SDK ,不过大家很多学习角度的不同
4 楼
wafj1984
2010-02-10
这个不是apidemo里边有吗?
3 楼
happyljt
2010-01-27
raymondlueng 写道
wylsx 写道
停止一个Service的过程如下:
应该是 context.stopService() | ->Service stop ->onDestroy() 吧 呵呵!
应该是 context.stopService() | ->Service stop ->onDestroy() 吧 呵呵!
不是的,是context.stopService() | ->onDestroy() ->Service stop
你可以在onDestroy()中作一些资源回收的工作!
UP
2 楼
raymondlueng
2010-01-15
wylsx 写道
停止一个Service的过程如下:
应该是 context.stopService() | ->Service stop ->onDestroy() 吧 呵呵!
应该是 context.stopService() | ->Service stop ->onDestroy() 吧 呵呵!
不是的,是context.stopService() | ->onDestroy() ->Service stop
你可以在onDestroy()中作一些资源回收的工作!
1 楼
wylsx
2010-01-15
停止一个Service的过程如下:
应该是 context.stopService() | ->Service stop ->onDestroy() 吧 呵呵!
应该是 context.stopService() | ->Service stop ->onDestroy() 吧 呵呵!
发表评论
-
类似Chome的翻转效果
2012-09-18 23:14 2412简单的demo,屏幕上下滑动翻转View,类似Android ... -
3D编程基础数学之旋转及在Android中的应用
2012-02-10 00:11 0最近因为兴趣,看了一些3D编程的书,有种感觉就是写这些书的作者 ... -
Android中屏幕Density对BitmapDrawable的影响
2011-07-08 21:44 7903很早之前写的文章了,发在这里记录一下。 在之前的 ... -
Android程序与Javascript的交换
2010-04-16 21:40 0hello! -
Android游戏开发之服务器端
2010-01-09 16:38 6719首先我不知道这篇文章发到Android开发板块是否适合的,因为 ... -
Android ListView常用用法
2009-12-03 20:56 36747ListView是比较常用的控件,但一直都觉得创建ListVi ... -
Android View添加 Listener 小技巧示例
2009-12-02 15:35 9871在开发中为控件添加Listener是非常常见的工作,最简单的添 ... -
Android Gesture 手势识别使用实例
2009-10-20 11:56 10215很高兴能在Android1.6的sdk看到手势识别这一 ... -
Android第二个游戏 DragonFeed(勇者喂恶龙)
2009-10-12 17:57 8117这是参加学校一个小比赛的参赛游戏,之前一直在忙 认证考试和项目 ... -
Android 震动示例--心跳效果
2009-10-02 23:58 7717正在开发第二个游戏,计时就要结束的时候,为了营造紧张的气氛, ... -
Android adb的使用略解
2009-09-30 16:08 40288安卓网的一个帖子,写得不错,记下来 ADB全称Android ... -
Android游戏开发之连连看算法
2009-09-29 00:36 10479因为有朋友在站内信中问到连连看的具体算法,所以我就把算法pos ... -
android游戏开发之选关画面
2009-09-21 15:44 4055在游戏开发中,往往要提供选关的页面,选择关卡可以简单地使用li ... -
Android重力感应Demo
2009-09-11 23:33 14080android中的很多游戏的游戏都使用了重力感应的技术,但其a ... -
Android游戏开发之爆炸效果
2009-09-02 00:29 18550在做Android游戏MagicBubble开发的时候 ... -
Android 的第一个游戏
2009-08-18 08:48 8019学了android1个多月,做了一款连连看游戏,上了andro ... -
Android canvas的save()和restore()用法
2009-08-05 12:21 19928在读Android SDK里面的samples里面游戏的时候, ... -
Android 2d物理引擎Box2d的使用示例
2009-08-04 09:06 14298Box2d是一个很出名的2d物理引擎,大家可以google之。 ... -
利用Handler更新Android UI的另一种方法
2009-07-29 11:28 11922文字程序很简单,一个View,一个Activity,利用han ... -
android布局学习利器-Hierarchy Viewer
2009-07-27 18:17 8148Hierarchy Viewer 帮你分析应用程序UI布局 ...
相关推荐
根据提供的文件信息,本文将详细解释 Android 中 Services 的使用,特别是如何通过 AlarmManager 来调度服务,实现定时任务。文章将分为几个部分:基础知识、AlarmManager 的使用方式、示例代码解析以及注意事项。 ...
在Android开发中,访问Web Services是一项常见的任务,用于与服务器端进行数据交互。Web Services可以是基于SOAP(简单对象访问协议)或者RESTful(表述性状态转移)的API,它们提供了一种跨平台、跨语言的数据交换...
在`Demo3_webServices`示例项目中,我们可以预期看到一个简单的Android应用,该应用展示了如何调用一个Web服务并处理返回的数据。项目可能包含以下几个关键部分: - 主Activity:负责触发Web服务请求,展示请求结果...
ServicesDemo是一个专门用于学习和理解Android Services工作原理的示例项目。通过分析ServicesDemo的源码,我们可以深入理解如何在Android应用中使用Service。 首先,让我们了解什么是Android Service。Service主要...
在这个项目中,开发者可以找到对各个API函数和控件的使用示例,比如如何在Android应用中添加按钮并响应点击事件,或者如何加载和显示网络图片。这样的实例教程可以帮助开发者快速上手,理解不同控件的工作原理和交互...
OpenGL ES是Android平台上的2D和3D图形库,对于高级游戏,开发者可能需要使用它来实现复杂的视觉效果。同时,Android还提供了SurfaceView和TextureView等组件来帮助处理游戏画面的更新。 音效和音乐的集成也是游戏...
在Android开发领域,掌握一些常见的代码示例是至关重要的,因为它们可以帮助开发者快速理解并解决实际问题。这个压缩包文件提供了多种Android代码示例,涵盖了Android应用开发的基础和进阶内容。下面,我们将深入...
4. **使用示例**: "google-services-master"中的Android子项目提供了各个服务的示例代码,如Google Sign-In、Firebase Authentication等,开发者可以参考这些代码实现具体功能。 三、iOS平台的集成 1. **配置...
在Java和Android开发中,访问WebServices接口是常见的需求,用于获取服务器端的数据或者实现远程调用功能。本实例将详细介绍如何在Java(特别是针对Android环境)中实现对WebServices的调用。 首先,我们要理解Web...
在本示例代码“android services”中,开发者可能展示了如何创建、启动和绑定到一个Android服务。 1. **服务的创建**: - 创建服务类:继承自`Service`类,并重写其关键方法,如`onStartCommand()`和`onBind()`。 ...
本示例将深入探讨如何使用ArcGIS Runtime SDK for Android来加载和显示SHP文件。 ArcGIS Runtime SDK for Android是Esri公司提供的一个强大的开发工具包,它允许开发者构建功能丰富的地图应用。通过这个SDK,我们...
在Android开发领域,官方网站Android Developer提供了丰富的资源和教程,其中包括一系列实用的例子代码,帮助开发者深入理解和应用Android SDK的各种功能。这些例子涵盖了从基础组件到高级特性的广泛内容,旨在提升...
在Android系统中,`frameworks`, `services`, `jni`, `hardware`以及`kernel`是五个非常关键的组件,它们共同构建了Android操作系统的核心架构。`frameworks_services_jni_hardware_kernel.zip`这个压缩包文件提供了...
- 接下来,添加Android应用到项目中,输入应用的包名并下载`google-services.json`文件,将其放在Android项目的`app`目录下。 - 在项目设置中,启用FCM服务并获取Server Key,这是服务端发送消息时所需的认证密钥...
《C#开发Android应用实战 使用Mono for Android和.NET C#》是一本专注于使用C#语言在Android平台上开发应用程序的专业书籍。Mono for Android是Xamarin公司(现已被Microsoft收购)推出的一个框架,它允许开发者利用...
本示例将重点讲解如何利用Web Services技术实现这一功能。Web Services是一种通过网络提供和消费服务的方式,它使得不同系统之间可以进行数据交换,实现了跨平台的通信。 首先,我们需要理解Android系统的基本架构...
本篇将深入探讨如何在Android应用中实现与Web Services的交互,并通过一个具体的示例来展示其实现过程。 #### Web Services 概述 Web Services是一种让应用程序可以通过网络进行通信和数据交换的技术。它使用标准...
Android SDK 提供的所有 API 的示例代码,包括视图(View)、布局(Layout)、事件处理(Event Handling)、数据存储(Data Storage)、网络通信(Network Communication)、多媒体(Multimedia)、位置服务(Location Services)...
上面的这句话是官方的解释,这句化的第一句很明显的阐述了Service的使用场景,也就是说在不需要与用户进行交互(用户点击屏幕等触发事件的行为都是交互行为)的情景,以及某个操作需要在后台长时间运行的情况。...