Итак, я загрузил Dancingnomads в Test Flight, и на следующий день он был отклонен. Я поиграл в приложение и обнаружил, что автоматический вход не работает. Неважно, но логин не работает, и если я не могу войти, я ничего не могу сделать. То есть приложение не работает!

Я попытался отладить его и узнал кое-что интересное. Если вы подключите свое устройство к компьютеру через USB-кабель или через ту же сеть Wi-Fi, а затем откроете XCode → Window → Device and Simulators, вы увидите свое устройство или он попросит вас несколько подсказок для подключения вашего устройства.

Там будет кнопка «Открыть консоль», нажмите ее. Вы получите несколько консольных сообщений, например:

Так я узнал, что не так. Что в моем коде AsyncStorage была ошибка.

До исправления мой код для установки моих токенов был таким:

AsyncStorage.setItem('Auth', JSON.stringify(response.data["Auth"]))

Ответ — это данные ответа, которые я получу от своего API. Изначально мой код назывался JSON.stringify, но он не работал. Это связано с тем, что в iOS для AsyncLocalStage требуется строка.

Вот почему мы получили ошибку выше или,

Exception '-[NSNull length]: unrecognized selector sent to instance 0x1ff2719b0' was thrown while invoking multiSet on target AsyncLocalStorage with params 

Чтобы исправить это, я обнаружил, что мне нужно всего лишь внести простое изменение, обернув JSON.stringify с помощью String().

AsyncStorage.setItem('Auth', String(JSON.stringify(response.data["Auth"])))

и это исправит!

Если вы предпочитаете видео, посмотрите это видео, которое я сделал для этого выпуска.

Посмотрите этот пост, он действительно помог мне разобраться во всем.

Вот и все на сегодня, ребята, надеюсь, что помогли!

Свяжись со мной!

Linkedin: https://www.linkedin.com/in/donaldlee50

Инстаграм: https://www.instagram.com/donlee50/

Твиттер: https://twitter.com/donaldlee50

Подпишитесь на нашу рассылку здесь!

Присоединяйтесь к нашей группе DevExchange, если вам нужно место для общения и обмена историями!