Итак, я загрузил 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, если вам нужно место для общения и обмена историями!