日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

绑定服务调用本地服务中的方法

發布時間:2025/5/22 编程问答 22 豆豆
生活随笔 收集整理的這篇文章主要介紹了 绑定服务调用本地服务中的方法 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

如果想調用服務中的方法, 通過startService()是做不到的, 這時需要用bindService來解決.

下面的demo是在Activity中調用Service中的自定義方法---methodInService

這個demo可以解決在項目開發中調用service里的數據。

這里在service中使用到了代理模式。這是為了,給service組件和activity組件中間添加一個中間人。

通過代理來傳遞數據。也就是binder對象。這個代理就是接口IService

?

Service中的代碼如下:

?

1 public class DemoService extends Service { 2 3 /** 4 * 內部的小蜜,可以調用服務內部的方法 5 * 將小蜜私有了,建一個接口,提供對外訪問的方法 6 */ 7 private class Xiaomi extends Binder implements IService{ 8 //通過這個方法調用服務中的方法 9 //重寫接口中的抽象方法 10 public void callMethodInService(int money){ 11 if(money > 100){ 12 //這里調用了服務里的方法 13 methodInService(); 14 }else{ 15 System.out.println("這點錢還想辦事啊?"); 16 } 17 } 18 19 public void 洗桑拿(){ 20 System.out.println("一起洗桑拿"); 21 } 22 } 23 24 /** 25 * 在執行bindService時調用該方法 26 * IBinder相當于內部的小蜜 27 */ 28 @Override 29 public IBinder onBind(Intent intent) { 30 System.out.println("2,服務如果成功綁定,會執行onBind方法,返回IBinder小蜜"); 31 return new Xiaomi(); 32 } 33 34 @Override 35 public void onCreate() { 36 System.out.println("服務已經開啟了"); 37 38 } 39 40 @Override 41 public void onDestroy() { 42 System.out.println("服務已經關閉了"); 43 super.onDestroy(); 44 } 45 46 /** 47 * 服務中的方法 48 */ 49 public void methodInService(){ 50 System.out.println("6,你成功調用了服務中的方法"); 51 } 52 53 }

?

IService接口代碼如下:

?

1 public interface IService { 2 3 public void callMethodInService(int money); 4 5 }

?

Activity中的代碼如下:

?

1 public class MainActivity extends Activity { 2 3 @Override 4 protected void onCreate(Bundle savedInstanceState) { 5 super.onCreate(savedInstanceState); 6 setContentView(R.layout.activity_main); 7 } 8 9 MyConn conn; 10 //創建接口的對象 11 IService myBinder; 12 13 //綁定服務 14 public void bindService(View view) { 15 System.out.println("1,綁定服務"); 16 Intent intent = new Intent(this, DemoService.class); 17 conn = new MyConn(); 18 bindService(intent, conn, BIND_AUTO_CREATE); 19 } 20 21 //解綁服務 22 public void unbindService(View view) { 23 24 unbindService(conn); 25 } 26 27 /** 28 * 調用服務里的方法 29 */ 30 public void callService(View view) { 31 //通過內部的小蜜可以間接調用服務里的方法 32 System.out.println("5,利用myBinder間接調用服務里的方法"); 33 myBinder.callMethodInService(500); 34 } 35 36 37 /** 38 * 服務成功連接的通訊頻道 39 */ 40 private class MyConn implements ServiceConnection{ 41 42 //服務成功連接時 43 @Override 44 public void onServiceConnected(ComponentName name, IBinder service) { 45 System.out.println("3,得到了服務的鏈接,獲取到了小蜜"); 46 myBinder = (IService) service; 47 System.out.println("4,將IBinder強制轉換為小蜜myBinder"); 48 } 49 50 //服務連接不成功時 51 @Override 52 public void onServiceDisconnected(ComponentName name) { 53 54 } 55 } 56 }

?

關鍵代碼已經用紅色標出

?

在這個demo中, Activity想直接調用服務中的方法是辦不到的, 于是可以定義一個代理Iservice接口,

讓Service中的內部類Xiaomi來實現該接口, 并重寫抽象方法, 這樣就可以在Activity中調用了.

?

轉載于:https://www.cnblogs.com/wanghaoyuhappy/p/5293696.html

《新程序員》:云原生和全面數字化實踐50位技術專家共同創作,文字、視頻、音頻交互閱讀

總結

以上是生活随笔為你收集整理的绑定服务调用本地服务中的方法的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 精品人妻伦一二三区免费 | 日韩综合精品 | 久久久久国产精品人妻 | 韩国三级中文字幕hd久久精品 | 美女隐私免费网站 | 99久久99九九99九九九 | 日韩有码在线视频 | 欧美黑吊大战白妞欧美大片 | 一曲二曲三曲在线观看中文字幕动漫 | 久热最新 | 亚洲男女视频在线观看 | 国产一区在线看 | 亚洲一区二区三 | www.激情| 成人免费一区 | 天天操天天干天天舔 | 人人妻人人澡人人爽久久av | aaaaa级少妇高潮大片免费看 | h亚洲| 亚洲第一黄色 | 一本在线 | 3p视频在线 | www裸玉足久久久 | 国产春色 | 亚洲色欲色欲www在线观看 | 波多野结衣视频免费看 | 女人高潮特级毛片 | 精品一区二区三区人妻 | 亚洲老老头同性老头交j | 精品日韩欧美 | 国产天堂久久 | 国产精品毛片在线 | 日韩中文字幕一区二区三区四区 | 久久久久亚洲av成人毛片韩 | 丁香久久 | 性xxx欧美 | 亚洲第8页 | 深夜精品 | 朴麦妮原版视频高清资源 | 久国产| 女性裸体下面张开 | 超碰成人在线免费观看 | 少妇人禽zoz0伦视频 | 国产综合99 | 国产小精品 | 丝袜熟女一区二区三区 | 亚洲www啪成人一区二区麻豆 | 久久久久久久爱 | 男人天堂国产 | 久久免费在线观看 | 精品视频导航 | 久热中文字幕在线 | 妻色成人网 | 日韩人妻无码一区二区三区99 | 国产精品黄在线观看 | 亚洲 小说区 图片区 都市 | 射黄视频 | 国内特级毛片 | 亚洲第八页 | 日韩福利视频网 | 午夜爽视频 | 国模婷婷 | 91精品国产色综合久久不卡粉嫩 | 日本二区视频 | 亚洲女则毛耸耸bbw 边吃奶边添下面好爽 | 91精品国产一区二区在线观看 | 日韩三区在线 | 午夜小电影| 日本女人性视频 | 精品国产乱码久久久久久蜜臀网站 | 国产无套免费网站69 | 亚洲欧美另类激情 | 欧美色图校园春色 | 岛国伊人 | 牛牛精品一区二区 | 91精彩视频在线观看 | 欧美精品国产一区二区 | 亚洲欧美一区二区三区情侣bbw | 人体写真 福利视频 | 日日夜夜精品 | 成人在线免费网址 | 亚洲偷自 | 亚洲大尺度av| 精品久久无码视频 | 日韩极品少妇 | 久久久国产精品久久久 | 日韩爱爱免费视频 | 亚洲色图激情 | 久久综合九色 | 色av资源 | 老头av| 日本啊v在线 | jizz免费视频 | 污污视频网站在线免费观看 | 色99在线 | 四虎永久免费地址 | 久久免费久久 | 午夜宅男网| 稀缺呦国内精品呦 |