使用 space 设置 wifi ssid

Setting wifi ssid with a space in it

我正在尝试在 the documentation 之后的 android 事物 raspberry pi 上设置 wifi。

我的 Ssid 名称中包含一个 space 让我们说 "my ssid"。

我试着像这样在它周围加上引号:

$ adb shell am startservice \
    -n com.google.wifisetup/.WifiSetupService \
    -a WifiSetupService.Connect \
    -e ssid "my ssid" \
    -e passphrase secretpassword

在查看 wifi 连接的 logcat 时,我看到:

WifiNetworkHistory: saving network history: "my"NONE gw: null Network Selection-status: NETWORK_SELECTION_ENABLED ephemeral=false choice:null link:0 status:2 nid:0 hasEverConnected: false
WifiConfigurator: Wifi failed to connect in 30000 ms

如何正确设置我的wifi?

要输入像“(双引号)、*(星号)、(space)这样的字符,我们需要使用转义序列(即在字符)告诉编译器将字符作为字符串的一部分而不是命令来读取(例如双引号通常被解释为字符串的start/end,将其解释为我们使用的字符串中的字符\”)。

解决方法

$ adb shell am startservice \
-n com.google.wifisetup/.WifiSetupService \
-a WifiSetupService.Connect \
-e ssid "my\ ssid" \
-e passphrase secretpassword