Как получить дополнительные данные из ожидаемого намерения внутри модуля библиотеки? - PullRequest
0 голосов
/ 11 июля 2019

Я создаю библиотеку для встраивания в проекты. При получении push-уведомления, когда пользователь нажимает на уведомление, дополнительные данные получаются через намерение в onNewIntent на уровне приложения, но я хочу, чтобы эти данные были внутри модуля библиотеки. Как мы можем этого достичь?

Внутри модуля библиотеки я пытаюсь получить данные, используя слабую ссылку на уровне приложения.

Доплаты, которые я получаю, равны нулю. Тем не менее, я могу получить значение намерения в onNewIntent MainActivity.

, например

 private fun checkNotificationClick(context: WeakReference<Activity>?) {

    val activity = context!!.get()
    val extras = activity?.intent?.extras
    if (extras != null) {
        if (extras.getString("message_id") != null) { 
            val messageId = extras.getString("message_id")
        }
    }
  }

Ожидаются дополнительные данные из намерения, но оно становится нулевым.

1 Ответ

0 голосов
/ 15 июля 2019

Сообщите пользователю вашей библиотеки, что он должен вызвать метод из вашей библиотеки из onNewIntent(), который передает Intent в библиотеку.Эта информация не сохраняется (по умолчанию) нигде, откуда вы могли бы ее получить.

Пользователь также должен вызывать этот метод из onCreate() с исходным Intent, для обеспечения согласованности.

...