国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

使用混合方式開啟服務----百度音樂盒框架的搭建

2019-11-08 00:37:58
字體:
來源:轉載
供稿:網友
MainActivity 類:
package com.itheima74.test;import android.content.ComponentName;import android.content.Intent;import android.content.ServiceConnection;import android.os.Bundle;import android.os.IBinder;import android.support.v7.app.AppCompatActivity;import android.view.View;/** * 混合方式開啟服務,百度音樂盒框架的搭建 */public class MainActivity extends AppCompatActivity {    PRivate MyConn mConn;    private Iservice mIservice;// 中間人對象,獲取這個對象后可以調用其方法(服務中的方法)    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        // 1.先startService()保證服務在后臺長期運行        Intent intent = new Intent(this, MusicService.class);        startService(intent);        // 2.再bindService()獲取中間人對象以調用服務中的方法        mConn = new MyConn();        bindService(intent,mConn,BIND_AUTO_CREATE);    }    private class MyConn implements ServiceConnection {        @Override        public void onServiceConnected(ComponentName name, IBinder service) {            mIservice = (Iservice) service;        }        @Override        public void onServiceDisconnected(ComponentName name) {        }    }    // 點擊按鈕,播放音樂    public void playMusic(View view) {        mIservice.callPlayMusic();    }    // 點擊按鈕,暫停音樂    public void pauseMusic(View view) {        mIservice.callPauseMusic();    }    // 點擊按鈕,重新播放音樂    public void replayMusic(View view) {        mIservice.callReplayMusic();    }    @Override    protected void onDestroy() {        super.onDestroy();        // 取消綁定服務        unbindService(mConn);    }}
MusicService 類:
package com.itheima74.test;import android.app.Service;import android.content.Intent;import android.os.Binder;import android.os.IBinder;import android.support.annotation.Nullable;/** * Created by My on 2017/2/23. */public class MusicService extends Service {    @Nullable    @Override    public IBinder onBind(Intent intent) {        return new MyBinder();    }    @Override    public void onCreate() {        super.onCreate();    }    @Override    public void onDestroy() {        super.onDestroy();    }    // 播放音樂的方法    public void playMusic(){        System.out.println("音樂播放了");    }    // 暫停音樂的方法    public void pauseMusic(){        System.out.println("音樂暫停了");    }    // 重新播放音樂的方法    public void replayMusic(){        System.out.println("音樂重新播放了");    }    // 定義中間人對象    private class MyBinder extends Binder implements Iservice{        @Override        public void callPlayMusic() {            playMusic();        }        @Override        public void callPauseMusic() {            pauseMusic();        }        @Override        public void callReplayMusic() {            replayMusic();        }    }}
Iservice 接口:
package com.itheima74.test;/** * 定義一個接口,將想暴露的方法暴露出去 * Created by My on 2017/2/23. */public interface Iservice {    void callPlayMusic();    void callPauseMusic();    void callReplayMusic();}
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 连城县| 卓资县| 灵台县| 宣汉县| 高州市| 江安县| 景德镇市| 北辰区| 正镶白旗| 富民县| 汝阳县| 报价| 探索| 平南县| 望都县| 自治县| 绥中县| 辽源市| 宿松县| 龙井市| 漠河县| 岫岩| 五家渠市| 景谷| 台江县| 枣阳市| 福建省| 高碑店市| 雅江县| 大冶市| 浠水县| 宝兴县| 台中市| 闽侯县| 明溪县| 通辽市| 板桥市| 武邑县| 十堰市| 丽江市| 嘉定区|