#android #string
#Android #строка
Вопрос:
Я хочу отправить токен firebase в пакете другому действию. Длина токена Firebase составляет 163 символа, но в итоге получается 165 символов с несколькими несоответствиями.
Оригинал:
cNAMo3kXRRmTl3WEAPDz1b:APA91bEjMeqAkcqy8RXifh_ZZFXBqjq6CvnkfqfbJ_8jgnjubHEFpHe8P2YKRDyOv98NhRbDoSlsei6VKh5abM9K-Z6mCavOdxOvyIC6ezCH_LqgM1mPD0NN0iEg5jI01ZSiPQl_O3yM
После извлечения из пакета:
cNAMo3kXRRmTl3WEAPDz1b:APA91bEjMeqAkcqy8RXifh_ZZFXBqjq6CvnkfqfbJ_8jgnjubHEFpHe8P2YKRDyOv98NhRbDoSlsei6VKh5abM9K-Z6mCavOdxOvyIC6ezCH_LqgM1mPD0NN0iEg5jI01ZSiPQl_O3yM
Теперь, если вы проверите, вы увидите, что в char № 22 изменен. : turns to %3
Итак, что я могу сделать, чтобы остановить это поведение?
(извините, я сомневаюсь, чтобы отнести этот вопрос к какой категории, кроме типичного тега Android. Любые изменения приветствуются)
Комментарии:
1.
:
URL-адрес кодируется как:
. Такs = URLDecoder.decodeURL(s, "UTF-8")
что, вероятно. Слева и справа от двоеточия находится URL-безопасный Base64, использующий _ и — вместо / и ,2. хорошо, я думаю, это может быть исправлением, но является ли это фактическим поведением bundle в Android? я имею в виду, почему пакет должен даже изменять строку? тогда для получения фактической строки я должен писать строку предложения везде, где я получаю пакет?
3. Пожалуйста, не рассматривайте мой комментарий для исправления чего-либо. Более опытные пользователи Android должны предложить подходящее решение. (Поскольку строки выглядят как ключи аутентификации, вы можете сократить их с помощью … — теперь, когда ясно
:
, что URL-адрес был закодирован так, чтобы:
в результате получилось на 2 символа больше. Я видел аналогичную строку в формате JSON, а не в кодировке URL.)