- 浏览: 281977 次
- 性别:
- 来自: 北京
文章分类
最新评论
-
jasonking412:
鄙视抄袭,都TMD一样的。
Openfire red5.war下载已经配置 -
xhg19901120:
有没有下载地址啊
【转】Android 多级菜单 -
yxl2005play:
为什么是404?博主,求解
Openfire red5.war下载已经配置 -
tan2416:
回复看看。。。。。
实现在popwindow中展示listview列表 -
liufeng7600:
你好,求教: 我可不可以在pc上用web浏览器访问 Andr ...
android中实现JavaScript与Java之间实现互相调用
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停止服务。
程序运行界面:
附件: 644c4660-e3a2-356f-baf6-5baeaf268c1d.png
代码:
定义服务,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代码
- <?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;
- }
- }
- }
发表评论
-
singleTop和singleTask有什么区别?(活动 Activity 四种加载模式)
2013-03-22 17:50 1459singleTop要求如果创建intent的时候栈顶已经有要 ... -
onCreateOptionsMenu和onPrepareOptionsMenu的差別在哪呢?
2012-09-17 16:25 1614在做菜单的功能,发现 ... -
android状态栏中多个通知冲突的问题
2012-09-11 17:49 6458网上看到的解决办法: 如果用相同的通知id, 该怎么 ... -
Anroid 异常:is not valid; is your activity running?
2012-08-29 11:23 1196是由于有activity时依附于另一个activity的, ... -
Android 如何让EditText不自动获取焦点
2012-08-15 11:42 3691在项目中,一进入一个页面, EditText默认就会自动获取焦 ... -
Animation
2012-07-31 23:51 852前面定义旋转,移动,缩放到什么程度, 后面是轴承点,根据这个点 ... -
删除android ScrollView边界阴影方法
2012-07-19 10:26 1344XML文件中添加以下方法: android:fadin ... -
Android的webview加载本地html、本apk内html和远程URL
2012-07-19 09:56 1710... -
如何在mac中创建android adb 环境
2012-05-03 23:31 1787Create an environment variable ... -
AlarmManager详细讲解
2012-04-21 23:33 1298AlarmManager的作用文档中的解释是:在特定的时刻为我 ... -
用Android代码实现打开USB调试
2012-03-20 17:52 9184打开Android手机的USB调试对于使用豌豆夹、调试程序等来 ... -
android ROM RAM 内部存储 系统存储 系统缓存区别
2012-03-16 14:58 5355内部存储┐ 系统存储├─物理位置是位于手机内部的非易失性存储 ... -
Android 读取MCC, MNC
2012-03-12 13:46 13350TelephonyManager telManager = ( ... -
Android 动画详解
2012-03-09 14:09 3754Tween动画又称“补间动画”、“中间动画”,这并不重要,就好 ... -
Region.Op
2012-02-29 17:37 983//INTERSECT 取两者交集,默认的方式 //DIF ... -
Eclipse中LogCat突然停止工作的解决
2012-01-18 17:34 1769... -
sdcard
2011-12-29 13:28 1058把文件放入SD卡 使用Activity的o ... -
Android 中自定义属性(attr.xml,TypedArray)的使用!
2011-10-07 17:39 1068在xml 文件里定义控件的属性,我们已经习惯了android ... -
Android 中自定义View的应用.
2011-10-07 17:38 854大家好我们今天的教程 ... -
android Canvas类介绍
2011-09-23 11:01 1379package com.yarin.android.E ...
相关推荐
在Android开发中,Service是四大组件之一,它在后台运行,不与用户界面直接交互,常用于执行长时间的任务,如播放音乐、网络通信等。本篇文章将深入解析"android service 简单实例源代码",帮助你理解如何在Android...
在Android应用开发中,Service是用于执行长时间运行操作的一个组件,比如后台下载任务。本教程将详细介绍如何使用Android Service来实现文件下载,并在前台显示进度,同时通过通知栏同步更新下载进度。 首先,我们...
在Android开发中,Service是应用组件之一,它可以在后台长时间运行,即使用户界面不在活动状态。Service主要用于执行长时间运行的任务,如音乐播放、网络通信等。而`Toast`则是一种轻量级的通知方式,用于显示短暂的...
在Android应用开发中,Service是四大组件之一,它在后台执行长时间运行的操作,不与用户界面直接交互。本讲解文档将深入探讨Local Service和Remote Service的实现与使用,以及广播接收器的重要作用。 首先,我们来...
在Android应用开发中,Service和EventBus是两个重要的组件,它们在实现后台任务处理和界面交互方面发挥着关键作用。Service用于在后台长时间运行任务,而EventBus则是一种优秀的事件总线框架,使得组件间通信更为...
在Android应用开发中,Service是四大组件之一,用于在后台执行长时间运行的操作,即使用户界面不在活动状态。本文将通过四个小实例详细介绍Android Service的四种启动方式:启动方式、绑定方式、线程方式以及AIDL...
在Android开发中,Service是一种非常重要的组件,它可以在后台长时间运行,执行一些不需要与用户交互的任务。本示例中,我们关注的是如何利用Service来实现资源的异步下载,并且在下载完成后对ZIP文件进行解压。这个...
### Android Service 学习(下): 进程间通信与 AIDL 在深入探讨 Android Service 的高级用法时,我们不可避免地会接触到进程间通信(IPC)这一关键概念。由于 Android 应用程序通常在各自独立的进程中运行,因此它们...
在Android应用开发中,Service是四大组件之一,它在后台长时间运行,即使用户与应用程序的交互界面(Activity)已经关闭。Service主要用于执行长时间运行的操作,如播放音乐、处理网络交易或者与内容提供者进行交互...
在Android应用开发中,Service是四大组件之一,它在后台长时间运行,不依赖于任何用户界面,用于执行长时间运行的任务,如播放音乐、网络通信等。这篇博客"Android Service深入解析Demo"通过实例深入讲解了Service的...
在Android应用开发中,Service是四大组件之一,用于在后台执行长时间运行的操作,即使用户界面关闭也能继续工作。本篇文章将深入探讨`startService`类型的Android Service,通过一个简单的实例来展示其工作原理和...
在Android系统中,Service是一种非常重要的组件,它允许应用程序在后台长时间运行操作,即使用户界面已经关闭。Service主要用于执行长时间运行的任务,如播放音乐、网络通信或者定期数据同步。本篇我们将深入探讨...
在Android应用开发中,`Service` 是一个非常重要的组件,它允许应用程序在后台长时间运行操作,即使用户已经离开或关闭了应用界面。本教程将详细讲解如何利用Android的`Service` 组件来实现文件下载功能。 一、...
Service是Android系统中的一个重要组件,它是应用程序框架的一部分,允许开发者在后台执行长时间运行的操作而无需与用户交互。这篇博客文章将深入介绍Android Service类的基本概念、功能、生命周期以及如何在实际...
在Android应用开发中,Service是实现后台长时间运行任务的关键组件,它可以脱离用户界面(UI)独立执行。在“android service反馈到主线程更新界面”这个主题中,我们主要探讨的是如何利用Service和Handler机制,...
在Android应用开发中,Service是实现后台长时间运行任务的关键组件,比如音乐播放、网络通信以及本例中的断点续传下载。"Android Service实现断点下载"是一个实用的功能,允许用户在任意时间点暂停下载任务,并在...
在Android应用开发中,Service是不可或缺的一部分,它用于在后台执行长时间运行的操作,例如播放音乐、后台数据同步等。然而,Android系统为了优化资源管理,可能会在内存紧张时杀死正在运行的Service。本文将深入...
Android Service和Activity基于串口蓝牙模块的双向通信 通过本帖,我们可以了解到如何使用 Android 的 Service 和 Activity 实现基于串口蓝牙模块的双向通信。这种通信方式可以用来控制家电、智能小车等设备。 ...
"Android Service Demo"是一个示例项目,它展示了如何在Android应用中使用Service,尤其是结合AIDL(Android Interface Definition Language)来实现进程间通信(IPC,Inter-Process Communication)。 首先,我们...