java - Backendless - 我应该从服务订阅 channel 吗?

标签 java android channel backendless

在 Backendless 中,我可以通过一种方法订阅 channel 并监听传入消息。

 Backendless.Messaging.subscribe(
                channelName, //some random name
                500,         //500 ms interval for polling
                new AsyncCallback<List<com.backendless.messaging.Message>>() {
                    @Override
                    public void handleResponse(List<com.backendless.messaging.Message> messages) {
                        System.out.println("message received on your channel");
                    }

                    @Override
                    public void handleFault(BackendlessFault backendlessFault) {

                    }
                },
                new AsyncCallback<Subscription>() {
                    @Override
                    public void handleResponse(Subscription subscription) {
                        System.out.println("You subscribed to channel" + subscription.getChannelName() + " succssesfuly");
                    }

                    @Override
                    public void handleFault(BackendlessFault backendlessFault) {
                        System.out.println("Error: " + backendlessFault.getMessage());
                    }
                }
        );

如果它从 MainActivity 订阅,并且当应用程序位于另一个 Activity 中时发送了数据,那么它如何从响应(第一个 handleResponse 方法中的 List)中获取数据并在其他 Activity 中使用它? 我应该使用服务吗?我应该使用监听器将 Activity 绑定(bind)到此服务吗?

或者有没有更简单的方法来满足我的需求?

在不久的将来,我希望这个监听器在应用程序位于后台时工作并向用户显示通知。

最佳答案

Backendless 使用两种类型的消息传递,请参阅 Publish-Subscribe Messaging & Push Notifications 。第一个是使用上面使用的监听器实现的。第二个使用服务。请参阅文档,尽管它们并不是很好,但它们确实提供了必要的信息。

关于java - Backendless - 我应该从服务订阅 channel 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41144018/

相关文章:

java - ElasticSearch Java API : Update Existing Document

android - Chrome Web View : triggering native Android Share function

database - Android SQLite,询问ContentValues

go - 可以让 channel 保持打开状态吗?

Django Channels/Daphne 内部服务器错误 "' dict' 对象不可调用”

java - Java 中的类型文字是什么?

java - 使用 ExecutorService 在 java 中并行处理文件不会使用所有 CPU 能力

select - golang : channel in select statement is only receiving sometimes (? ??)

java - 通过 ResourceBundle 访问属性文件时出错

android - 如何使用 ionic 调试 Android 模拟器?