- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我正在构建一个使用 AllJoyn 框架的 Android 应用程序。基本上,我需要 LAN 通信来创建大厅并允许加入其中的人玩某种游戏。
为此,我创建了一个 Lobby 对象及其相应的 LobbyInterface。我现在所做的是:- 用户可以创建一个大厅,这会显示在所有连接设备的列表中。-用户可以选择已创建的大厅并加入它。
我现在想要的是当用户加入大厅时刷新列表。为此,我需要获取大厅中的用户列表。我正在尝试从 LobbyInterface 获取此列表。我知道我无法通过总线获取复杂的对象(如果它们不是按结构构建的),但我正在尝试获取一个简单的字符串数组。
这是我的代码:
LobbyClass:
public class Lobby implements LobbyInterface, BusObject {
private String[] lstUsers;
private String name;
public Lobby(String name){
this.name = name;
lstUsers = new String[4];
}
/**
extra code here
**/
@Override
public String[] getLstUsers() throws BusException {
return lstUsers;
}
}
大厅界面类:
@BusInterface(name = "com.example.cantor.pruebamultiplayerv3.lobby", announced = "true")
public interface LobbyInterface {
@BusMethod(replySignature = "as")
String[] getLstUsers() throws BusException;
}
这是我调用它的方法,形成一个 UsersFacade 类:
public String[] getLstUsers(){
try {
Log.d(TAG, "USER could get users list");
return lobbyI.getLstUsers();
} catch (BusException e) {
Log.d(TAG, "USER error getting users lst");
e.printStackTrace();
}
return null;
}
这总是返回 null,错误是:
04-23 21:09:47.327 5864-5864/com.example.cantor.pruebamultiplayerv3 W/System.err: org.alljoyn.bus.ErrorReplyBusException: org.alljoyn.Bus.ErStatus
04-23 21:09:47.346 5864-5864/com.example.cantor.pruebamultiplayerv3 W/System.err: at org.alljoyn.bus.ProxyBusObject.methodCall(Native Method)
04-23 21:09:47.346 5864-5864/com.example.cantor.pruebamultiplayerv3 W/System.err: at org.alljoyn.bus.ProxyBusObject.access$300(ProxyBusObject.java:35)
04-23 21:09:47.346 5864-5864/com.example.cantor.pruebamultiplayerv3 W/System.err: at org.alljoyn.bus.ProxyBusObject$Handler.invoke(ProxyBusObject.java:264)
04-23 21:09:47.346 5864-5864/com.example.cantor.pruebamultiplayerv3 W/System.err: at java.lang.reflect.Proxy.invoke(Proxy.java:397)
04-23 21:09:47.346 5864-5864/com.example.cantor.pruebamultiplayerv3 W/System.err: at $Proxy2.getLstUsers(Unknown Source)
04-23 21:09:47.346 5864-5864/com.example.cantor.pruebamultiplayerv3 W/System.err: at com.example.cantor.pruebamultiplayerv3.UsersFacade.getLstUsers(UsersFacade.java:70)
我知道我可以返回指定位置和类型的结构。但我已经看到我可以使用简单的字符串数组: https://allseenalliance.org/docs/api/java/org/alljoyn/bus/annotation/Signature.html
我一直在这里阅读其他答案,但这些答案适用于复杂的数据,例如: signature get error on Alljoyn framework?
我的代码有什么问题吗?还有其他选择吗?
非常感谢您的关注!
最佳答案
没关系...我刚刚发现了错误。我正在使用一个空列表(一些槽位为空,因为我试图填充该列表)。我用空字符串填充它,现在它可以工作了......
public Lobby(String name){
this.name = name;
lstUsers = new String[4];
for (int i = 0; i <=3; i++){
lstUsers[i] = "";
}
}
关于java - AllJoyn BusSignalReply 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36815326/
我引用了“AllJoyn Programming Guide for the Objective-C Language”文档。 document is here 但是当我构建基本代码时,它会显示 /m
我尝试在 ProxyBusObject 接口(interface)上调用远程 AllJoyn 方法,但收到 ErrorReplyBusException。我似乎无法在 API 指南或引用文档中找到任何
我有两个关键问题: 1) 我的设备无法使用 ICE 找到彼此。 ICE要关闭了吗?几周前,ICE 使设备能够非常快速地找到彼此! 2) 为什么 alljoyn 花了这么长时间才发现我家本地无线网络中的
在查看 Allseen 网站上的几个文档后,我发现了过时的 git hub 链接。有下载 sdks for android 和 linux 的下载链接。但是,是否可以下载适用于 Android 的入职
我正在测试 AllJoyn's Control Panel service framework (detailed description)。有一个 controller 设备的 Android 示例
我正在尝试寻找基于 AllJoyn 的开源应用程序。我得到的只是几个反复出现在各种网站上的应用程序,但没有一个是开源的。 https://www.alljoyn.org/app-developers/
我正在尝试使用 alljoyn 库创建一个 iOS 应用程序。但是,当我尝试通过调用 busAttachment = AJNBusAttachment.init(applicationName: "B
我正在尝试使用 Alljoyn 框架传输文件,Alljoyn 提供的示例向我展示了如何发送和接收通过在 fileExplorer 的 ListView 上单击一次选择的文件。问题是我想传输几个选定的文
我正在构建一个使用 AllJoyn 框架的 Android 应用程序。基本上,我需要 LAN 通信来创建大厅并允许加入其中的人玩某种游戏。 为此,我创建了一个 Lobby 对象及其相应的 LobbyI
我在使用 alljoyn 转换为字节数组后发送字符串,该字符串也包含图像(在使用 Base64 转换为字符串后)。它工作正常,但在某些图像的情况下会出现以下错误 08-08 18:55:21.158
我尝试从 AllSeenAlliance Run Page 构建示例项目“AllJoyn iOS 项目模板” . 我一步一步地按照教程进行操作,现在我正处于需要构建所有项目的步骤中。在为第一个项目(“
客户端和服务器运行在连接到局域网的不同计算机上。我们可以使用 Alljoyn 发布服务器以供在连接到同一局域网的远程计算机上运行的客户端自动发现吗? 所有机器都运行 Linux,并通过局域网而不是 W
开放互连联盟刚刚发布IoTivity ,物联网的开源框架,类似于 AllSeen 联盟的 AllJoyn框架。除了基于 CoAP 的 IoTivity 和基于 D-Bus 的 AllJoyn 之外,它
AllJoyn和 MQTT都是物联网互操作性的开源项目,都提供事件总线和路由器/代理来连接设备。有什么不同?它们兼容吗?我应该使用哪种标准来实现面向 future 的物联网设备? 最佳答案 AllSe
尝试运行从 https://allseenalliance.org/framework/download 下载的 Android 示例“事件和操作” 在 bin 文件夹中下载了“核心 SDK - 调试
AllJoyn 中是否可以从远程设备发布的“关于”消息中获取其众所周知的名称?我想稍后使用众所周知的名称连接到设备,而无需新的发现过程。 我知道我可以从“关于”消息中获取设备 ID,但众所周知的名称似
我正在尝试将 AllJoyn 用于我的应用程序,但是当我尝试使用示例代码 (sample 13) 时,我无法加入 session 并收到错误 BUS_BLOCKING_CALL_NOT_ALLOWED
Alljoyn 真的支持 iOS 吗?似乎最后一个版本支持 iOS 8.x。没有看到任何超过 8.x 的东西。我错过了什么吗?寻找一种在 Android、iOS 和 Windows10(移动)平台上使
我正在创建一个使用 AllJoyn 库的 IOS 应用程序。与 AllJoyn 一起提供的用于构建 AllJoyn 的 alljoyn_darwin xcode 项目在build设置中没有我的应用程序
有人知道如何解决以下问题吗? scons: Entering directory `/Users/ajchandra15/Documents/Developer/Framework/alljoyn-i
我是一名优秀的程序员,十分优秀!