为了账号安全,请及时绑定邮箱和手机立即绑定

报错内容 Error:(55, 15) 错误: 从内部类中访问本地变量service2; 需要被声明为最终类型

//下面是主要代码内容

//报错内容 Error:(55, 15) 错误: 从内部类中访问本地变量service2; 需要被声明为最终类型




        MyBindService  service2;

        ServiceConnection conn1=new ServiceConnection() {
            @Override//启动源跟service连接成功后自动调用
            public void onServiceConnected(ComponentName name, IBinder binder1) {
              service2= ((MyBindService.MyBinder)binder1).getService1();

            }

            @Override//启动源跟service的连接以为丢失的时候会调用这个方法,例如崩溃 呗杀死
            public void onServiceDisconnected(ComponentName name) {

            }
        };



//下面是Mybindservice.java类的内容

package com.example.administrator.myapplication;

import android.app.Service;
import android.content.Intent;
import android.content.ServiceConnection;
import android.os.Binder;
import android.os.IBinder;
import android.util.Log;

/**
 * Created by Administrator on 2015/5/5.
 */
 public class MyBindService extends Service {


    @Override
    public void onCreate() {
        Log.i("info", "**********IBinder onBind");
        super.onCreate();
    }
     public   class  MyBinder extends Binder{
         public   MyBindService getService1(){
            return MyBindService.this;//返回服务对象
        }
    }

    @Override
    public IBinder onBind(Intent intent) {
        Log.i("info", "**********IBinder onBind");
        return new MyBinder();
    }

    @Override
    public void unbindService(ServiceConnection conn) {
        Log.i("info", "**********IBinder onBind");
        super.unbindService(conn);
    }


    public void play1(){
        Log.i("info", "**********IBinder 播放");
    }

    public void stop1(){
        Log.i("info", "**********IBinder 停止");
    }

}

5548d4b5000147ff05000659.jpg

5548d4b70001a2e105000659.jpg


正在回答

3 回答

他这是版本问题  jdk1.8就可以直接访问

0 回复 有任何疑惑可以回复我~

MyBindService service2; 不要放在的doClick里,放在外面,放在你的class MainActivity里!

0 回复 有任何疑惑可以回复我~

MyBindService  service2;前面加个final试试。

0 回复 有任何疑惑可以回复我~
#1

laocaixw

不对!应该是:“MyBindService service2;”不要放在的doClick里,放在外面,放在你的class MainActivity里!
2015-12-27 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
Android攻城狮的第二门课(第3季)
  • 参与学习       74912    人
  • 解答问题       420    个

手势识别、数据存储和4大组件,让你牢牢掌握之前的基础知识点

进入课程

报错内容 Error:(55, 15) 错误: 从内部类中访问本地变量service2; 需要被声明为最终类型

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信