Мы делаем гибридное приложение на платформе Mobile First. Для push-уведомлений мы будем использовать одноадресные уведомления. Я не смог найти никакой документации относительно отказа от подписки. Может ли кто-нибудь помочь мне узнать, как я могу отменить подписку пользователя на push-уведомление в сценарии одноадресного уведомления.

0
MobileFirst Developer 30 Дек 2015 в 00:19

2 ответа

Лучший ответ

Я нашел способ отказаться от подписки на одноадресное уведомление. Не уверен, что это правильный способ, но у меня он работает. Я использовал REST API Runtime Services

REST API для Push в среде выполнения MobileFirst позволяет приложениям внутреннего сервера, которые были развернуты вне MobileFirst Server, получать доступ к функциям Push из конечной точки REST API.

Думал, что он предназначен для внутреннего сервера, он работает для меня.

String  token = getToken("unregister-device");

Сначала получите токен, подробности о том, как получить токен, здесь

Как только вы получите токен, реализуйте остальной клиент, проверьте документацию здесь

Образец кода.

HttpClient httpClient = HttpClientBuilder.create().build();
        HttpDelete postRequest = new HttpDelete("http://localhost:10080/MyProject/imfpush/v1/apps/MyMobileApp/devices/12121-1212121-121212-12121");
            postRequest.addHeader("Content-Type", "application/json");
            postRequest.addHeader("Authorization", "Bearer "+token);
        HttpResponse response = httpClient.execute(postRequest);
        if (response.getStatusLine().getStatusCode() != 204) {
            throw new RuntimeException("Failed : HTTP error code : " + response.getStatusLine().getStatusCode());
        }
        BufferedReader br = new BufferedReader(new InputStreamReader((response.getEntity().getContent())));
        String output;
        System.out.println("============Output:============");
        while ((output = br.readLine()) != null) {
            System.out.println(output);
        }
0
MobileFirst Developer 2 Янв 2016 в 21:36

См. Официальную документацию здесь, в нем говорится:

UserId (s) должны быть идентификаторами пользователей, которые использовались для подписки на источник событий push-уведомлений.

Это говорит о том, что одноадресные уведомления используют те же механизмы подписки / отмены подписки на источник событий, проверьте официальную документацию здесь, чтобы узнать, как отказаться от подписки на источник событий.

1
Hisham 30 Дек 2015 в 18:34