我写了一个流媒体音乐应用程序,我工作正常,直到我尝试在不同的进程中运行音乐服务。在Android Developer的服务之后,我在清单中添加了服务流程,如下所示:
<service android:name=".MyPlayer"
android:process=":myPlayer"
android:enabled="true"/>
然后在MainActivity中,我调用启动服务:
if(_playIntent == null) {
_playIntent = new Intent(getApplicationContext(), MyPlayer.class);
startService(_playIntent);
bindService(_playIntent, musicConnection, Context.BIND_AUTO_CREATE);
}
bindService将调用ServiceConnection:
MyPlayer _player;
private ServiceConnection musicConnection = new ServiceConnection() {
@Override
public void onServiceConnected(ComponentName name, IBinder service) {
MyPlayer.MusicBinder binder = (MyPlayer.MusicBinder)service;
_player = binder.getService();
}
@Override
public void onServiceDisconnected(ComponentName name) {
isConnection = false;
}
};
然后应用程序在这一行之后停止工作:
MyPlayer.MusicBinder binder = (MyPlayer.MusicBinder)service;
该应用程序显示消息“不幸的是,Mx舞曲已经停止”,堆栈跟踪:“致命例外:主android.os.类异常:ooper.loopBinderProxy无法转换为ooper.java:137Kandroid.app.音乐。hread.mainKhread.java:4823音乐的MyPlayer$MusicBinder。主活动$java.lang.reflect.服务连接(MainAethod.invoke)在LoadedApk$ServiceDethod.invoke连接(LoadedAethod.java:511)在com.android.internal.os.LoadedApk$ServiceDispatcher$RunCaller.run(LoadedApk.java:1114)在android.os.Handler.handle回调(Handler.java:615)在android.os.Handler.dispatch消息(Handler.java:92)在java.lang.Landroid.os.(Lcom.xi)在y.mxActivityTcom.xi(ActivityTy.mx)在3.onMctivity.java:356Native(Native Method)在android.app.Mispatcher.do(Mpk.java:1097)在android.app.ZygoteInit$MEodAndArgsConnection.run(ZygoteInit. java: 789)在dalvikos. com. android. international(ZygoteInit. java: 556)
线程返回的类加载器。对于承载多个应用程序的进程,getContextClassLoader()可能会失败。您应该显式指定上下文类加载器。例如:Thread。setContextClassLoader(getClass()。getClassLoader());
然后如果我去掉这条线:
bindService(_playIntent, musicConnection, Context.BIND_AUTO_CREATE);
应用程序没有崩溃。如何修复这个错误?我感谢大家的任何帮助。
MyPlayer.MusicBinder binder = (MyPlayer.MusicBinder)service;
这仅适用于本地绑定服务。切换到远程服务后:
的子类。从该AIDL生成的存根
类所有这些都包含在AIDL的文档中。
null
我有一个情况,我需要启动两个线程一个接一个。我尝试了以下代码片段,在这里我可以启动Thread12,但不能启动Thread2。我怎样才能开始两个......?如何启动两个线程一个接一个...? 代码片段
如何在将GUI保持为活动状态而不是Hibernate/等待状态的同时延迟进程或创建队列?
1.1. 酷狗音乐 Skill 接入流程 1.1.1. 酷狗音乐skill介绍 1.1.2. 酷狗音乐skill接入通用流程介绍 1.1. 酷狗音乐 Skill 接入流程 本文旨在介绍酷狗音乐技能的接入流程,方便B端厂商快速接入酷狗音乐优质的资源内容。 一、酷狗音乐skill介绍 二、酷狗音乐skill通用流程 1.1.1. 酷狗音乐skill介绍 酷狗音乐skill内容介绍 技能名称 介绍 价格
1.1. 叮当音乐 Skill 接入流程 1.1.1. 叮当音乐skill介绍 1.1.2. 叮当音乐skill接入通用流程介绍 1.1.3. 叮当音乐skill接入流程 1.1. 叮当音乐 Skill 接入流程 本文旨在介绍叮当音乐技能的接入流程,方便B端厂商快速接入叮当音乐优质的资源内容。 一、叮当音乐skill介绍 二、叮当音乐skill通用流程 三、叮当音乐skill接入流程 1.1.1.
问题内容: 我正在使用使用node_redis的kue,但是我已经在会话中使用了,所以我想在特定端口上创建一个服务器,说默认值,然后在port上侦听。 我将如何做到这一点?我发现这篇文章讨论的是类似的内容,但是我并不是真的想要创建一个初始化脚本来执行此操作。 问题答案: 启动redis-server并为“ port”提供一个不同的参数,可以在命令行中完成: 例如,您也可以这样做,以便在启动时进行。