Как я могу установить конфигурацию Wi-Fi в тег NFC, чтобы при касании он автоматически подключался к сети?JAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Как я могу установить конфигурацию Wi-Fi в тег NFC, чтобы при касании он автоматически подключался к сети?

Сообщение Anonymous »

Я пытаюсь разработать Java-приложение в Android Studio. В этом приложении я хочу назначить некоторые учетные данные Wi-Fi для тега, чтобы, когда пользователь нажимает на тег, он автоматически подключался к установленному мной Wi-Fi. Я понимаю, что для этого мне нужно предоставить SSID и пароль сети, которую я пытаюсь настроить.
Я знаю, что функция NFC в целом работает в моем приложении, потому что я возможность записывать URL-адреса, текст, а также устанавливать и отключать защиту паролем. Я пробовал следующее. Я получаю тег и две строки (ssid и пароль) в своей активности Main.java. Я разрабатывал новый класс под названием NFCUtils.java, который делает следующее:

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

public class NFCUtils{

public static void writeWifiConfigToTag(Tag tag, String ssid, String password) {
NdefRecord ssidRecord = createTextRecord(ssid, Locale.getDefault(), true);
NdefRecord passwordRecord = createTextRecord(password, Locale.getDefault(), true);
NdefMessage wifiMessage = new NdefMessage(NdefRecord.createMime("application/vnd.wfa.wsc",
ssid.getBytes(StandardCharsets.US_ASCII)),
ssidRecord,
passwordRecord);

// Write the NdefMessage to the tag
Ndef ndef = Ndef.get(tag);
try {
ndef.connect();
ndef.writeNdefMessage(wifiMessage);
ndef.close();
} catch (Exception e) {
e.printStackTrace();
}
}

private static NdefRecord createTextRecord(String payload, Locale locale, boolean encodeInUtf8) {
byte[] langBytes = locale.getLanguage().getBytes(StandardCharsets.US_ASCII);
Charset utfEncoding = encodeInUtf8 ? StandardCharsets.UTF_8 : StandardCharsets.UTF_16;
byte[] textBytes = payload.getBytes(utfEncoding);

int utfBit = encodeInUtf8 ? 0 : (1 

Подробнее здесь: [url]https://stackoverflow.com/questions/78355973/how-can-i-set-wifi-configuration-into-an-nfc-tag-so-that-when-tapped-it-automat[/url]
Ответить

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

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

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

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

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