2019独角兽企业重金招聘Python工程师标准>>>

package com.evt.services;import java.io.FileDescriptor;
import java.io.PrintWriter;import com.evt.MyApplication;import android.app.Service;
import android.content.Intent;
import android.os.Binder;
import android.os.IBinder;
import android.util.Log;public class ServicesUpload extends Service {// 进度条最大值public static final int max_progress = 100;// 进度条进度值private int progress = 0;public int getProgress() {return progress;}public void setProgress(int progress) {this.progress = progress;}/*** 模拟下载任务,每秒钟更新一次*/public void startDownLoad() {Log.d(MyApplication.TAG, "开始下载");new Thread(new Runnable() {@Overridepublic void run() {while (progress < max_progress) {progress += 5;try {Thread.sleep(1000);Log.d(MyApplication.TAG, "线程睡眠一秒钟");} catch (InterruptedException e) {e.printStackTrace();}}}}).start();}@Overridepublic IBinder onBind(Intent intent) {// TODO Auto-generated method stubreturn new ServicesUploadBinder();}public class ServicesUploadBinder extends Binder {public ServicesUpload getServicesUpload() {return ServicesUpload.this;}}@Overrideprotected void dump(FileDescriptor fd, PrintWriter writer, String[] args) {// TODO Auto-generated method stubsuper.dump(fd, writer, args);}@Overridepublic void onCreate() {// TODO Auto-generated method stubsuper.onCreate();Log.d(MyApplication.TAG, "上传服务启动");}@Overridepublic void onDestroy() {// TODO Auto-generated method stubsuper.onDestroy();Log.d(MyApplication.TAG, "上传服务销毁");}

}

 <!-- 上传服务 -->         <service             android:name="com.evt.services.ServicesUpload"             android:enabled="true"             android:exported="false" >             <intent-filter>                 <action android:name="com.evt.services.ServicesUpload" />             </intent-filter>         </service>

activity中:

private ServicesUpload servicesUpload; // 上传服务

Intent intent = new Intent("com.evt.services.ServicesUpload"); bindService(intent, conn, Context.BIND_AUTO_CREATE);

ServiceConnection conn = new ServiceConnection() { @Override public void onServiceConnected(ComponentName arg0, IBinder arg1) { // TODO Auto-generated method stub servicesUpload = ((ServicesUpload.ServicesUploadBinder) arg1) .getServicesUpload(); } @Override public void onServiceDisconnected(ComponentName name) { // TODO Auto-generated method stub } }; @Override protected void onDestroy() { // TODO Auto-generated method stub unbindService(conn); super.onDestroy(); }

调用方法:

servicesUpload.startDownLoad();

转载于:https://my.oschina.net/bv10000/blog/354404

activity 和service通信,调用service方法相关推荐

  1. service层调用service层的方法,并切换数据库调用不同数据库获取数据

    我这边是的业务需求是:从A库查询到部分数据,返回一个结果集,通过这个结果集的某些字段来查询第二个数据库的数据,然后将两个返回的数据封装到一个list集合里面返回出来!(我还做了动态查询我也一块贴出来给 ...

  2. Activity service 通信

    引用:http://apps.hi.baidu.com/share/detail/32259955 前段时间工作太忙,所以android的学习落了下来.这两天休息礼拜,重新研究. 之前学习了socke ...

  3. 彻底搞懂AIDL,local service和remote service

    Android里Service可以分为两种情况,local service和remote service,其中remote service既可以是同个app中的又可以是另外一个app中的. 区分是否l ...

  4. 【Android 应用开发】Activity生命周期 与 Activity 之间的通信

    一. Activity生命周期 上图 1. Activity状态 激活状态 : Activity出于前台 , 栈顶位置; 暂停状态 : 失去了焦点 , 但是用户仍然可以看到 , 比如弹出一个对话框 , ...

  5. Activity与Service通信

    Activity与Service通信 Activity与Service通信的方式有三种: 继承Binder类 这个方式只有当你的Acitivity和Service处于同一个Application和进程 ...

  6. Activity和Service通信 Bind方式

    本文由PurpleSword(jzj1993)原创,转载请注明 原文网址 http://blog.csdn.net/jzj1993 在Service中自定义Binder类,实现方法getService ...

  7. AIDL跨进程通信和Service调用

    AIDL的作用 1.aidl 是Android interface definition Language 的英文缩写,意思Android 接口定义语言. 2.使用aidl 可以帮助我们发布以及调用远 ...

  8. android activity 通知 service,android activity和service通信问题

    首先,题主有个理解错误的地方, startService 只是开启 service ,service运行在后台,还是有可能因内存不足而被杀死. 第二点, service 可以以混合启动的形式启动,也就 ...

  9. SpringBoot整合WebSocket时调用service和mapper的方法

    场景 SpringBoot+Vue整合WebSocket实现前后端消息推送: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/114 ...

  10. Angular中怎样创建service服务来实现组件之间调用公共方法

    场景 Angular介绍.安装Angular Cli.创建Angular项目入门教程: https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/detail ...

最新文章

  1. 堆栈 cookie 检测代码检测到基于堆栈的缓冲区溢出_WhatsApp缓冲区漏洞曝光 攻击者可通过MP4文件执行远程代码...
  2. android surfaceflinger 老罗,「Android」SurfaceFlinger分析
  3. 经典C语言程序100例之八四
  4. FreeMarkerConfigurer使用TemplateDirectiveModel时获取request、session
  5. php冒泡排序和快速排序笔记
  6. SSM+easyUI(框架的搭建)
  7. 深入浅出Lua虚拟机
  8. 对数的应用 —— 数位(digits)的个数
  9. 化学堵水剂处理油井出水问题
  10. 用Python写的WiFi暴力破解工具(字典),已封装!!
  11. word转PDF-Python编写的插件
  12. 浪潮服务器自带备份软件,备份软件DPS
  13. linux分段加载程序_Linux的分段机制
  14. MapGIS名词解释
  15. 一个老网络工程师给年轻工程师的十大忠告!
  16. 10个超酷的H5特效设计+1个仿最新苹果UI设计(压轴)
  17. Pandas知识点-详解转换函数transform
  18. 【onnx】——since it‘s not constant, please try to make things (e.g., kernel size) static if possible
  19. 支付宝20积分兑换15天会员
  20. 四种属性范围(重点)

热门文章

  1. 评说SAP Business ByDesign
  2. windows 编译FFMPEG
  3. Linux acpi off学习的必要
  4. linux调度器(五)——进程管理与CFS
  5. 打开html文件显示undefined,undefined是什么?电脑网页出现undefined时如何解决?
  6. 设计模式之简单工厂模式,工厂方法模式,抽象工厂模式
  7. java 十进制与二进制,八进制,十六进制之间的转换
  8. tensorflow contrib_Tensorflow笔记:你都会了么?
  9. 编译内核_Linux内核编译(自己实现的网卡上面测试c1000k案例)
  10. c语言用指针取出字节,在C语言中一个指针占用多少字节。