Не удалось выполнить сетевой запрос React Native Android App на физическом устройствеAndroid

Форум для тех, кто программирует под Android
Ответить Пред. темаСлед. тема
Anonymous
 Не удалось выполнить сетевой запрос React Native Android App на физическом устройстве

Сообщение Anonymous »

Я новичок в реагировании на нативный код, и в настоящее время я использую простой рабочий процесс нативного реагирования без демонстрации.
Сценарий таков:
-Настройте службу области Docker Keycloak для проверки некоторой аутентификации, чтобы выдать токен при аутентификации
-при запуске виртуального устройства (виртуального телефона) с помощью Android Studio я могу пройти аутентификацию и получить токен обратно от службы docker keycloak. Также протестировано с помощью Postman, и я также получаю токен.
-Когда я создаю APK через ./gradlew assembleRelease в папке Android и устанавливаю его на свое устройство, я всегда получаю ошибку «Ошибка запроса сети».
 – Если я подключу свой телефон и использую его для отладки приложения при подключении к ПК, я все равно получаю сообщение «Ошибка запроса сети».
— Итак, я отправляю запрос с использованием HTTP вместо HTTPS, и я обязательно зашел в AndroidManifest.xml и установил

-Раньше, когда я использовал локальный 192.168.etc...:8080, сетевой запрос мгновенно завершался неудачно. Теперь, если я использую 10.0.2.2, он ждет около 7-10 секунд, прежде чем я получу сообщение об ошибке запроса сети.
Спасибо всем за помощь. Здесь я уперся в кирпичную стену и не знаком с сетью или подключением.
Вот сегмент кода для моего обработчика входа в систему
//- -------------------------------------------------- ----------

Код: Выделить всё

const loginHandler = async () => {
const url = `http://10.0.2.2:8080/realms/testrealm/protocol/openid-connect/token`;
const body = `client_id=login-client&client_secret=SOME+RANDOM+CHARS&username=${encodeURIComponent(username)}&password=${encodeURIComponent(password)}&grant_type=password`;

const timeoutPromise = new Promise((_, reject) =>
setTimeout(() => reject(new Error('Request timed out')), 15000)
);

try {
setMessage('');
console.log('Perform login with:', username, password);
console.log('URL FOR LOGGING:', url);
console.log('BODY OF URL:', body);

const fetchPromise = fetch(url, {
method: 'POST',
mode: 'cors',
headers: {
'Content-Type': 'application/x-www-form-urlencoded',
},
body: body,
});

const response = await Promise.race([fetchPromise, timeoutPromise]);

console.log('Response Status:', response.status);

if (!response.ok) {
const responseBody = await response.text();
console.log("LOGIN FAILED", response.status, responseBody);
setMessage(`Login failed with status ${response.status}: ${responseBody}`);
setMessageColor('red');
throw new Error(`Login failed | "LOGIN FAILED", ${response.status}, ${responseBody}, URL: ${url}`);
}

const data = await response.json();
console.log('Login successful!:', data);
setMessage('Login successful!');
setMessageColor('green');
} catch (error) {
console.error('Login error:', error);
setMessage(`Login error: ${error.message}`);
setMessageColor('red');
}
};
//------------------------ -------------------------------------------------- --
  • Попробовал настроить в AndroidManifest.xml, чтобы установить android:usesCleartextTraffic="true"
  • Изменение локального IP-адреса адрес 10.0.2.2 вместо 192.168.etc...
    -Использование моего физического телефонного устройства для отладки и


Подробнее здесь: https://stackoverflow.com/questions/786 ... cal-device
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • React Native + Expo + Android + HTTP Server = Не удалось выполнить сетевой запрос
    Гость » » в форуме Android
    0 Ответы
    93 Просмотры
    Последнее сообщение Гость
  • React-Native (только для Android) – TypeError: не удалось выполнить сетевой запрос
    Anonymous » » в форуме Android
    0 Ответы
    46 Просмотры
    Последнее сообщение Anonymous
  • React-Native (только для Android) – TypeError: не удалось выполнить сетевой запрос
    Anonymous » » в форуме Android
    0 Ответы
    22 Просмотры
    Последнее сообщение Anonymous
  • React-Native (только для Android) – TypeError: не удалось выполнить сетевой запрос
    Anonymous » » в форуме Android
    0 Ответы
    13 Просмотры
    Последнее сообщение Anonymous
  • React-Native (только для Android) – TypeError: не удалось выполнить сетевой запрос
    Anonymous » » в форуме Android
    0 Ответы
    12 Просмотры
    Последнее сообщение Anonymous

Вернуться в «Android»