#react-native #expo
#react-native #expo
Вопрос:
Я разрабатываю мобильное приложение с использованием Expo framework (react native).
Мне нужно найти локальный IP-адрес устройства, чтобы подключиться к определенному устройству в интрасети.
Пожалуйста, проведите меня через эту задачу.
Спасибо
Ответ №1:
https://docs.expo.io/versions/latest/sdk/network/#networkgetipaddressasync
await Network.getIpAddressAsync();
// "92.168.32.44
Комментарии:
1. Я пробовал этот метод, но он выдает общедоступный IP-адрес устройства. Но мне нужен локальный IP-адрес, назначенный устройству в локальной сети
2. Симулятор iOS использует сеть хост-компьютера, поэтому вы должны иметь возможность просто использовать localhost или IP-адрес вашего компьютера, в зависимости от того, какой IP-адрес прослушивает ваша веб-служба.
Ответ №2:
Вы можете использовать Expo Network.getIpAddressAsync(), который возвращает обещание, поэтому сначала вам нужно его разрешить.
Вот пример:
import * as Network from 'expo-network';
const ipAlert = async () => {
const ip = await Network.getIpAddressAsync()
alert(ip);
};
ipAlert();