- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
关闭。这个问题需要debugging details .它目前不接受答案。
编辑问题以包含 desired behavior, a specific problem or error, and the shortest code necessary to reproduce the problem .这将帮助其他人回答问题。
7年前关闭。
Improve this question
我在 android 上的 quickblox 聊天服务中创建类型组对话框时遇到了一些问题。我能够从 quickblox 的服务器端获取所有用户,能够构建对话框并添加我在其中获得的那些用户,但是当涉及到调用 groupChatManager.createDialog(dialog, new QBEntityCallbackImpl()。我得到一个空指针异常(exception)。我后来发现我必须在扩展应用程序的类中初始化 chatService 我这样做了但仍然是同样的错误。这是我的代码
enter code here
My applicationSingeltonClass
public class ApplicationSingleton extends Application
{
private QBUser currentUser;
//quickBlox
private static final String APP_ID = "key";
private static final String AUTH_KEY = "authkey";
private static final String AUTH_SECRET = "authsec";
private static ApplicationSingleton instance;
private Map<Integer, QBUser> dialogsUsers = new HashMap<Integer, QBUser>();
private QBRoomChat currentRoom;
@Override
public void onCreate()
{
super.onCreate();
initApplication();
initImageLoader(getApplicationContext());
}
public static ApplicationSingleton getInstance()
{
return instance;
}
private void initImageLoader(Context context)
{
// This configuration tuning is custom. You can tune every option, you may tune some of them,
// or you can create default configuration by
// ImageLoaderConfiguration.createDefault(this);
// method.
ImageLoaderConfiguration config = new ImageLoaderConfiguration.Builder(context)
.threadPriority(Thread.NORM_PRIORITY - 2)
.denyCacheImageMultipleSizesInMemory()
.discCacheFileNameGenerator(new Md5FileNameGenerator())
.tasksProcessingOrder(QueueProcessingType.LIFO)
.enableLogging() // Not necessary in common
.build();
// Initialize ImageLoader with configuration.
ImageLoader.getInstance().init(config);
}
public QBUser getCurrentUser()
{
return currentUser;
}
public void setCurrentUser(QBUser currentUser)
{
this.currentUser = currentUser;
}
public Map<Integer, QBUser> getDialogsUsers()
{
return dialogsUsers;
}
public void setDialogsUsers(List<QBUser> setUsers)
{
dialogsUsers.clear();
for (QBUser user : setUsers)
{
dialogsUsers.put(user.getId(), user);
}
}
public void addDialogsUsers(List<QBUser> newUsers)
{
for (QBUser user : newUsers)
{
dialogsUsers.put(user.getId(), user);
}
}
public Integer getOpponentIDForPrivateDialog(QBDialog dialog)
{
Integer opponentID = -1;
for(Integer userID : dialog.getOccupants())
{
if(userID != getCurrentUser().getId())
{
opponentID = userID;
break;
}
}
return opponentID;
}
private void initApplication()
{
instance = this;
QBChatService.setDebugEnabled(true);
QBSettings.getInstance().fastConfigInit(APP_ID, AUTH_KEY,AUTH_SECRET);
}
enter code here
protected void onPostExecute(final Boolean success)
{
if(status.equals("accepted"))
{
pagedRequestBuilder.setPage(1);
pagedRequestBuilder.setPerPage(10);
final ArrayList<String> usersLogins = new ArrayList<String>();
usersLogins.add(userID);
usersLogins.add(herocivID);
final ArrayList<Integer> occupantIdsList = new ArrayList<Integer>();
occupantIdsList.add(civID);
occupantIdsList.add(heroCivID);
QBUsers.getUsersByFacebookId(usersLogins, pagedRequestBuilder, new QBEntityCallbackImpl<ArrayList<QBUser>>() {
@Override
public void onSuccess(ArrayList<QBUser> users, Bundle params)
{
if (!QBChatService.isInitialized())
{
QBChatService.init(getApplicationContext());
chatService = QBChatService.getInstance();
chatService.addConnectionListener(chatConnectionListener);
}
QBDialog dialog = new QBDialog();
dialog.setName("chat with mostafa wo may");
dialog.setType(QBDialogType.GROUP);
dialog.setOccupantsIds(occupantIdsList);
QBGroupChatManager groupChatManager = chatService.getInstance().getGroupChatManager();
groupChatManager.createDialog(dialog, new QBEntityCallbackImpl<QBDialog>()
{
@Override
public void onSuccess(QBDialog dialog, Bundle args)
{
Log.i("", "dialog: " + dialog);
}
@Override
public void onError(List<String> errors) {
Toast.makeText(getBaseContext(), "Something went wrong", Toast.LENGTH_SHORT).show();
}
});
}
@Override
public void onError(List<String> errors)
{
Toast.makeText(getBaseContext(), "Something went wrong", Toast.LENGTH_SHORT).show();
}
});
Toast.makeText(getBaseContext(), "you accepted the request", Toast.LENGTH_SHORT).show();
}
else if(status.equals("rejected"))
{
Toast.makeText(getBaseContext(), "you rejected the request", Toast.LENGTH_SHORT).show();
}
}
最佳答案
你是对的,
chatService.getInstance().getGroupChatManager();
关于android - 在 quickblox 中创建对话框时出现空指针异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26590564/
Quickblox 经常记录以下内容: Performing async request: RestRequest: ------ POST http://api.quickblox.com/sess
我在我的 C# (Xamarin) 应用程序中使用 Quickblox。我无法移植 Windows Phone 代码,因此我决定使用 RESTful API。 我在获取 token 时遇到问题。我关注
我按照下面的快速 blox 给出的说明进行操作: 从 sdk 2.6.1 开始添加对特定模块的依赖只需添加: dependencies { compile("com.quickblox:quic
我已经为 JS 的 QuickBlox 聊天示例添加了一个功能,它允许向现有聊天添加新用户 函数 addUsers(){ var curDlgId = currentDialog._id ; var
我试图在我的网站上使用 quickbox javascript api 作为聊天应用程序。我使用了 quickblox 示例并且运行良好。但我不明白如何创建新用户。任何人都有关于此分享的任何代码或教程
[QBRequest signUp: user successBlock: ^ (QBResponse * response, QBUUser * user) { // your f
我正在使用 quickblox 开发应用程序的聊天模块。它工作正常。但是当应用程序终止时,我没有收到任何聊天消息的推送通知。任何人都可以帮助我吗? 最佳答案 如果您想收到推送通知,您需要验证以下步骤。
我是 iOS 新手。我正在使用自定义身份验证。我检查了示例代码,我很困惑,他们如何在用户登录时更新用户面板中的注册用户。 请告诉我应该如何使用他们的代码,我下载并运行了他们的示例代码,但它已经过时并且
我是 QuickBlox 新手。我刚刚从 SimpleSample-chat users-ios 下载示例代码并将其与我在 QuickBlox 上的应用程序连接。 注册和正常登录都可以正常工作。 但是
我正在尝试通过 QUICKBLOX 加入一个群组,并在编译我的加入群组代码之后。它向我展示了这个错误。 (Error Domain=com.quickblox.chat Code=-1004 "(nu
我正在使用 Quickblox 的 REST API。但每次,我都会收到回复: {"errors": { "base": ["Required session does not exist"] }
我目前正在涉足Android开发,并且有一个Android Studio项目,正在尝试将QuickBlox sdk添加到我的项目中。我尝试按照提供的说明进行操作,但发现它不起作用。通过一些研究,我发现
使用“自定义模块”时,是否有 API 可以获取所有类的列表? 由于可能会不时通过管理面板添加新类,因此应用程序将需要动态检索所有类。 最佳答案 没有标准的 API 可以做到这一点,但您可以创建类,例如
有什么方法可以查出 Quickblox 用户是否在线?我正在使用 Quickblox iOS SDK。 最佳答案 有两种方法: 使用 REST API - 这是指南 http://quickblox.
有什么办法可以查到Quickblox用户是否在线?我正在使用 Quickblox iOS SDK。 最佳答案 有两种方式: 使用 REST API - 这是指南 http://quickblox.co
- (void)loadUserInfoForId:(int)userId { NSMutableDictionary *getRequest = [NSMutableDictionary d
我是否可以对 quickblox 中的对象进行等效的 sql 连接,以便我可以在一次 api 调用中获取所有信息? 例如: 如果我有一个名为购买的自定义对象,这可能包含有关购买的详细信息,但也将包含
当用户尝试登录(确实登录)并忘记密码时,他会尝试重置密码,然后应用程序如何通过电子邮件调用 Rest Password,因为用户尚未登录 Quickblox。用户是否不需要登录 QuickBlox 才
我正在尝试将通知从 quickblox js sdk 推送到 ios。我有一些示例代码。 QuickBlox JavaScript SDK:2.12.7 'use strict'; const Qui
所以我刚刚开始与 QB 合作并尝试实现视频聊天。我从他们的示例中获取了代码并对其进行了一些修改。我可以连接两个有声音的设备,但没有显示任何视频。我确实在日志中注意到了这条消息: -[QBCha
我是一名优秀的程序员,十分优秀!