android 中service的简单事例

简介: 源码 public class ServiceDemoActivity extends Activity { private static final String TAG = "ServiceDemoActivity"; Button bindBtn; Button startBtn; @Override public void onCreate(B


源码


public class ServiceDemoActivity extends Activity {
	private static final String TAG = "ServiceDemoActivity";
	
	Button bindBtn;
	Button startBtn;
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        
        bindBtn = (Button)findViewById(R.id.bindBtn);
        startBtn = (Button)findViewById(R.id.startBtn);
        
        bindBtn.setOnClickListener(new OnClickListener() {
			public void onClick(View v) {
			Log.e(TAG, "bindBtn");
				bindService(new Intent(ServiceDemo.ACTION), conn, BIND_AUTO_CREATE);
			}
		});
        
        startBtn.setOnClickListener(new OnClickListener() {
			public void onClick(View v) {
			Log.e(TAG, "startBtn");
				startService(new Intent(ServiceDemo.ACTION));
			}
		});
    }
    
    ServiceConnection conn = new ServiceConnection() {
    	public void onServiceConnected(ComponentName name, IBinder service) {
			Log.e(TAG, "onServiceConnected");
		}
		public void onServiceDisconnected(ComponentName name) {
			Log.e(TAG, "onServiceDisconnected");
		}
	};
	@Override
	protected void onDestroy() {
		Log.e(TAG, "onDestroy unbindService");
		unbindService(conn);
		super.onDestroy();
	};
}

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >

    <Button
        android:id="@+id/bindBtn"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="绑定服务" />

    <Button
        android:id="@+id/startBtn"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="启动服务" />

</LinearLayout>


public class ServiceDemo extends Service {
	private static final String TAG = "ServiceDemo";
	public static final String ACTION = "com.example.servicedemoactivity.ServiceDemo";
	

	@Override
	public IBinder onBind(Intent arg0) {
		// TODO Auto-generated method stub
		Log.e(TAG, " onBind ");
		return null;
	}
	
	@Override
	public void onCreate() {
		// TODO Auto-generated method stub
		Log.e(TAG, " onCreate ");
		super.onCreate();
	}
	
	@Override
	public void onStart(Intent intent, int startId) {
		// TODO Auto-generated method stub
		Log.e(TAG, " 1onStart ");
		super.onStart(intent, startId);
	}
	
	@Override
	public int onStartCommand(Intent intent, int flags, int startId) {
		// TODO Auto-generated method stub
		Log.e(TAG, " onStartCommand ");
		return super.onStartCommand(intent, flags, startId);
	}

}

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.example.servicedemoactivity"
    android:versionCode="1"
    android:versionName="1.0" >

    <uses-sdk
        android:minSdkVersion="8"
        android:targetSdkVersion="18" />

    <application
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >
        
        <activity android:name=".ServiceDemoActivity">
            <intent-filter>
                <action android:name="android.intent.action.MAIN"/>
                <category android:name="android.intent.category.LAUNCHER"/>
            </intent-filter>
        </activity>
        
        <service android:name="com.example.servicedemoactivity.ServiceDemo">
            <intent-filter >
                <action android:name="com.example.servicedemoactivity.ServiceDemo"/>
            </intent-filter>
        </service>
        
    </application>

</manifest>





参考  http://aswang.iteye.com/blog/1424309










目录
相关文章
|
7月前
|
Android开发
Android 11 添加Service服务SELinux问题
Android 11 添加Service服务SELinux问题
400 1
|
7月前
|
Android开发
Android基础知识:请解释Service是什么,它与IntentService的区别是什么?
Android基础知识:请解释Service是什么,它与IntentService的区别是什么?
117 0
|
7月前
|
XML Java Android开发
Android Studio App开发之服务Service的讲解及实战(包括启动和停止,绑定与解绑,推送服务到前台实现音乐播放器,附源码)
Android Studio App开发之服务Service的讲解及实战(包括启动和停止,绑定与解绑,推送服务到前台实现音乐播放器,附源码)
1012 0
|
6月前
|
调度 Android开发
43. 【Android教程】服务:Service
43. 【Android教程】服务:Service
64 2
|
7月前
|
Android开发
Android Service Call /dev/xxx SELinux
Android Service Call /dev/xxx SELinux
135 1
|
4月前
|
编解码 网络协议 Android开发
Android平台GB28181设备接入模块实现后台service按需回传摄像头数据到国标平台侧
我们在做Android平台GB28181设备对接模块的时候,遇到这样的技术需求,开发者希望能以后台服务的形式运行程序,国标平台侧没有视频回传请求的时候,仅保持信令链接,有发起视频回传请求或语音广播时,打开摄像头,并实时回传音视频数据或接收处理国标平台侧发过来的语音广播数据。
|
7月前
|
存储 监控 Java
Android Service之设备存储空间监控 DeviceStorageMonitorService
Android Service之设备存储空间监控 DeviceStorageMonitorService
153 2
|
7月前
|
Android开发 数据库管理
Android如何在Activity和Service之间传递数据
Android如何在Activity和Service之间传递数据
317 3
|
7月前
|
Android开发
Android Service的两种使用方法
Android Service的两种使用方法
53 2
|
7月前
|
数据可视化 Android开发
[Android 四大组件] --- Service
[Android 四大组件] --- Service
57 0