首页 > 解决方案 > 如何调试“java.lang.NoClassDefFoundError”?

问题描述

此代码适用于 Android Lollipop、Marshmallow 和 Oreo。但它不在 Kitkat 中。

当我在应用程序类中调用以下代码时。

m_MainService_Interface = new MainService_Interface(getApplicationContext());

我的代码

public MainService_Interface(Context context) {

        mServiceConnection = new ServiceConnection() {
            @Override
            public void onServiceConnected(ComponentName name, IBinder service) {
                m_MainService = ((MainService.MainServiceBinder) service).getService();
            }

            @Override
            public void onServiceDisconnected(ComponentName name) {
                mServiceConnection = null;
                m_MainService = null;
            }
        };

        context.bindService(new Intent(context, MainService.class)
                .setPackage(context.getPackageName()), mServiceConnection, Context.BIND_AUTO_CREATE);
    }

中发生错误mServiceConnection = new ServiceConnection

    @Override
        public void onCreate() {

            super.onCreate();
            m_MyApplication = this;
            m_MainService_Interface = new MainService_Interface(getApplicationContext());
    }

MainService_Interface class

public MainService_Interface(Context context) {

        mServiceConnection = new ServiceConnection() {
            @Override
            public void onServiceConnected(ComponentName name, IBinder service) {
                m_MainService = ((MainService.MainServiceBinder) service).getService();
            }

            @Override
            public void onServiceDisconnected(ComponentName name) {
                mServiceConnection = null;
                m_MainService = null;
            }
        };

        context.bindService(new Intent(context, MainService.class)
                .setPackage(context.getPackageName()), mServiceConnection, Context.BIND_AUTO_CREATE);
    }

标签: androidservicebinding

解决方案


推荐阅读