- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我开发了一个绑定(bind)服务作为一个单独的项目,我正在尝试从客户端访问该服务,但不知何故我得到了
AndroidRuntime: FATAL EXCEPTION: main
08-08 12:00:40.898 3206 3206 E AndroidRuntime: java.lang.NullPointerException
08-08 12:00:40.898 3206 3206 E AndroidRuntime: at com.test.binder.BinderServiceActivity.onClick(BinderServiceActivity.java:61)
08-08 12:00:40.898 3206 3206 E AndroidRuntime: at android.view.View.performClick(View.java:3526)
08-08 12:00:40.898 3206 3206 E AndroidRuntime: at android.view.View$PerformClick.run(View.java:14139)
08-08 12:00:40.898 3206 3206 E AndroidRuntime: at android.os.Handler.handleCallback(Handler.java:605)
08-08 12:00:40.898 3206 3206 E AndroidRuntime: at android.os.Handler.dispatchMessage(Handler.java:92)
08-08 12:00:40.898 3206 3206 E AndroidRuntime: at android.os.Looper.loop(Looper.java:137)
08-08 12:00:40.898 3206 3206 E AndroidRuntime:在 android.app.ActivityThread.main(ActivityThread.java:4725) 08-08 12:00:40.898 3206 3206 E AndroidRuntime:在 java.lang.reflect.Method.invokeNative( native 方法)
我怀疑没有调用 onServiceConnected。谁能帮我解决这个问题。
提前致谢
请在下面找到客户端代码:
public class BinderServiceActivity extends Activity implements OnClickListener {
private static final String TAG = "LogActivity";
ILogService logService;
LogConnection conn;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
// Request bind to the service
conn = new LogConnection(); //
Intent intent = new Intent("com.test.binder.ILogService"); //
intent.putExtra("version", "1.0"); //
bindService(intent, conn, Context.BIND_AUTO_CREATE); //
// Attach listener to button
((Button) findViewById(R.id.button1)).setOnClickListener(this);
}
class LogConnection implements ServiceConnection { //
public void onServiceConnected(ComponentName name, IBinder service) { //
logService = ILogService.Stub.asInterface(service); //
Log.i(TAG, "connected");
}
public void onServiceDisconnected(ComponentName name) { //
logService = null;
Log.i(TAG, "disconnected");
}
}
public void onClick(View button) {
try {
logService.log_d("LogClient", "Hello from onClick()"); //
Message msg = new Message(Parcel.obtain()); //
msg.setTag("LogClient");
msg.setText("Hello from inClick() version 1.1");
logService.log(msg); //
} catch (RemoteException e) { //
Log.e(TAG, "onClick failed", e);
}
}
@Override
protected void onDestroy() {
super.onDestroy();
Log.d(TAG, "onDestroyed");
unbindService(conn); //
logService = null;
}
}
最佳答案
由于您没有发布包括服务在内的完整源代码,因此很难解决您的问题。您可以下载 Demo Source
通过示例了解每种类型的服务绑定(bind)并快速了解。该演示包含使用三种类型的服务绑定(bind)
1.) Binding using IBinder
2.) Binding using Messenger
3.) Binding using AIDL
关于android - onServiceConnected 未被调用,出现空指针异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11844920/
我是一个初学者,我编写了一个简单的程序来展示服务的工作原理。 ..... toStartService = new Intent(this, SimpleService.class); sc
我正在尝试像这样从另一个服务绑定(bind)服务: public class ServiceA extends Service { private ServiceB mDataService;
我已经提到了以下问题,但找不到答案: Can't get service object (onServiceConnected never called) , onServiceConnected n
我在使用后台服务时遇到问题。 我正在使用 2 个 Activity 的服务。 第一个 Activity 开始 Service与 startService(intent)并使用 bindService(
我开发了一个绑定(bind)服务作为一个单独的项目,我正在尝试从客户端访问该服务,但不知何故我得到了 AndroidRuntime: FATAL EXCEPTION: main 08-08 12:00
我正在实现 Service,它与服务器建立 TCP 连接,然后允许客户端通过此连接传递消息。客户端使用 bindService 调用连接到服务。结果 onServiceConnected 在客户端 S
如何自己启动一个服务??我不想从另一个 Activity 启动服务。但我想将服务绑定(bind)到 Activity 。我的问题与此链接中描述的完全一样。 onServiceConnected nev
我尝试为 Android 上的音素状态编写一个 XML 日志。首先,我编写了一个类来在 Activity 处于 Activity 状态时记录内容。现在我尝试在服务中编写 xml 文件并将服务绑定(bi
我一直在寻找一个明确的答案,但找不到任何地方。当 Android 应用程序尝试与服务建立连接并实现 ServiceConnection 方法(onServiceConnected() 和 onServ
我正在尝试将一些应用内购买添加到我正在开发的应用中,但进展并不顺利。 我有一个像这样的 FragmentActivity: public class TestInAppBilling extends
我正在尝试构建并运行一个用于 react native 应用程序的服务,在该服务运行后,我需要调用一些服务方法,这意味着我需要获取正在运行的服务的实例,所以我正在尝试使用bindservice()。
我正在使用 AIDL 编写一个服务来远程调用方法。我能够成功连接到该服务,并且还可以调用它的方法。但是,如果我尝试调用 onServiceConnected() 中的方法,则会出现空指针异常。代码片段
我发现的许多类似问题都没有帮助解决我的问题。 以下是我看过的一些问题: ServiceConnection.onServiceConnected() never called after bindin
我正在尝试开发一个连接 android 和 RedBear BLE shield 的应用程序。 第一次一切正常。但是当我第二次尝试连接到设备时,它不起作用。 OnServiceConnected()
在我打开我的应用程序后,它会跳转到辅助功能设置。但是在我打开我的 AccessibilityService(称为 VoiceService)后,onServiceConnected 没有被调用。 你能
public class DeviceScanActivity extends AppCompatActivity/*ListActivity*/ { @Override public vo
我有一个非常简单的 Activity : public class MainActivity extends Activity { private Intent serviceInt
我有一个特殊的情况:由广播接收器启动的服务启动一个 Activity 。我想让这个 Activity 能够与服务进行通信。我选择使用 AIDL 来实现它。除了在 Activity 的 onCreate
我们的应用程序连接到通过 AIDL 接口(interface)公开的 IPC Service。到目前为止一切正常,但突然我们观察到在调用 onServiceConnected 回调后立即抛出 Null
在游戏应用程序中,我有以下场景: 从主游戏 Activity 开始,玩家会启动几个在后台运行且持续时间不同的游戏任务。 玩家应该能够在单独的View中查看正在运行的游戏任务的进度。 为此,我创建了两个
我是一名优秀的程序员,十分优秀!