接口实现服务Service_暴露需要暴露的方法

原创 2018年04月16日 14:31:02

版权声明:本文为博主原创文章,未经博主允许不得转载。

https://blog.csdn.net/weixin_40790006/article/details/79960181

服务Service类:

    只有绑定服务时,取消绑定,会销毁服务。混合开启服务,不会

package com.example.f405.iserviceaidltest.utils;

import android.app.Service;
import android.content.Intent;
import android.os.Binder;
import android.os.IBinder;
import android.support.annotation.IntDef;
import android.support.annotation.Nullable;
import android.util.Log;
import android.widget.Toast;

/**
 * Created by F405 on 2018/4/16.
 */

public class MyTestService extends Service {

    private static final String TAG = "MyTestService";

    @Override
    public void onCreate() {
        super.onCreate();
        Log.d(TAG, "onCreate: ----onCreate");
    }

    @Override
    public int onStartCommand(Intent intent, int flags, int startId) {
        Log.d(TAG, "onStartCommand: ----onStartCommand");

        return super.onStartCommand(intent, flags, startId);

    }

    @Nullable
    @Override
    public IBinder onBind(Intent intent) {
        Log.d(TAG, "onBind: ----onBind");

        // 返回自定义的Binder类型
        return new MyBinder();
    }

    private class MyBinder extends Binder implements IService{

        // TODO 调用服务里的方法,通过接口,暴露需要暴露的方法
        public void callStartMusic(){
            startMusic();
        }

        public void callPauseMusic(){
            pauseMusic();
        }

        public void callStopMusic(){
            stopMusic();
        }

        // 不暴露的方法
        public void callLyrics(){
            lyrics();
        }

        public void callsinger(){
            singer();
        }

    }

    public void startMusic(){
        Toast.makeText(MyTestService.this, "start", Toast.LENGTH_SHORT).show();
    }
    public void pauseMusic(){
        Toast.makeText(MyTestService.this, "pause", Toast.LENGTH_SHORT).show();

    }
    public void stopMusic(){
        Toast.makeText(MyTestService.this, "stop", Toast.LENGTH_SHORT).show();

    }
    // 不对外暴露的方法
    public void  lyrics(){
        Toast.makeText(MyTestService.this, "lyrics", Toast.LENGTH_SHORT).show();

    }
    public void singer(){
        Toast.makeText(MyTestService.this, "singer", Toast.LENGTH_SHORT).show();

    }

    @Override
    public void onDestroy() {
        Log.d(TAG, "onDestroy:---- onDestroy");

        super.onDestroy();
    }
}

Dubbo/Dubbox的服务暴露(一)

前言源码入手平时我要了解一个框架,基本会去从他的Listener入手,如果web.xml中没有配置listener可能还会有 filter,这是spring给我们的启示,可是当要去了解dubbo的时候...
  • weiythi
  • weiythi
  • 2017-11-07 16:10:15
  • 333

Dubbo中暴露服务的过程解析

dubbo暴露服务有两种情况,一种是设置了延迟暴露(比如delay="5000"),另外一种是没有设置延迟暴露或者延迟设置为-1(delay="-1"): - 设置了延迟暴露,dubbo在Sprin...
  • dachengxi
  • dachengxi
  • 2017-03-17 00:51:31
  • 2688

dubbo组成原理-service服务暴露

继续上一篇dubbo的schema的定义,从DubboNamespaceHandler说起 这里对几个主要标签做一下说明。具体的阿里有专门出手册,手册地址为http://dubbo.io/User...
  • hdu09075340
  • hdu09075340
  • 2017-04-28 11:11:48
  • 1188

dubbo暴露服务过程

一般一个服务有可能即是服务端又是消费端。服务启动的时候会去像注册中心(一般是zk)暴露或者订阅自己的或者自己需要的服务。我们来看下dubbo是如何把本地服务注册到注册中心的。 我们来看下Servic...
  • xcylive520
  • xcylive520
  • 2016-08-28 18:52:16
  • 5308

webservice 的应用端(调用第一个程序暴露出来的接口)

1.新建一个项目 名为day01_ws_client 2.找到src目录按住shift然后右键在此打开命令行 3.输入wsimport -keephttp://localhost:8888/da...
  • two_people
  • two_people
  • 2016-09-09 14:33:05
  • 1669

CXF-10: CXF 与 Spring 的整合 之 使用别人暴露的 Web Service 接口

* 在传统Spring项目基础上增加 Web Service 的步骤(SSH ): 1 . 让 Controller 依赖远程 Web Service 的接口; 2 ...
  • cheng_feng_xiao_zhan
  • cheng_feng_xiao_zhan
  • 2016-10-30 22:27:02
  • 1067

Dubbo框架初探【用Spring配置声明暴露服务(可以使用multicast广播注册中心暴露服务地址或者使用zookeeper注册中心暴露服务地址)、加载Spring配置,启动服务】

文章来源:http://blog.csdn.net/kefeng824/article/details/43983621 1. Dubbo是什么? Dubbo是一个分布式服务框架,致力于提...
  • buster2014
  • buster2014
  • 2015-05-17 21:01:46
  • 1031

dubbo通过注解方式暴露服务和引用服务

通过注解方式配置服务暴露,dubbo注解只会在spring bean中被识别 package org.jstudioframework.dubbo.demo.service.impl; import...
  • zsg88
  • zsg88
  • 2017-08-20 21:29:14
  • 2737

node.js类暴露方法

类文件 function People(name, sex, age){ this.name = name; this.sex = sex; this.age = age; ...
  • dancheng1
  • dancheng1
  • 2017-09-06 21:33:06
  • 371

dubbo服务提供者暴露一个服务的详细过程

远程调用细节: 服务提供者暴露一个服务的详细过程: 上图是服务提供者暴露服务的主过程: 首先ServiceConfig类拿到对外提供服务的实际类ref,然后将ProxyFactory类的getIn...
  • liutengteng130
  • liutengteng130
  • 2017-08-30 22:40:18
  • 1213
收藏助手
不良信息举报
您举报文章:接口实现服务Service_暴露需要暴露的方法
举报原因:
原因补充:

(最多只允许输入30个字)