Open1

watchOS: Loggerのログをダウンロードできない

kabeyakabeya

まだ解決していません。
watchOSで、LoggerによりOSLogを出力するんですが、これをMacからダウンロードできる、はずなんです。

% sudo log collect --device-udid XXXXXXXX-XXXXXXXXXXXXXXXX --output <ダウンロード先フォルダパス>

デバイスのUDIDは、XcodeのDevices and Simulatorsの各デバイスのところにある「Identifier」です。

iPhoneはこれでダウンロードできるんですが、Apple Watchの分がダウンロードできません。
log: failed to create archive: Device not configured (6)
って出てしまいます。

この「Device not configured (6)」というのは、例えばfopen("/dev/tty", "r")とかやるとエラーになり、errno=6になってstrerror(errno)が「Device not configured」になるので、おそらくそれがそのまま出ているんですね。

で、iPhoneからダウンロードできるのはなぜか、ということでちょっと試したところ、以下のようになりました。

  • USBケーブルでMacと繋げているときはダウンロードできる
  • WiFiでMacと繋げているときはDevice not configured (6)になりダウンロードできない

Xcode 14 15以降ではApple WatchにはWiFi接続しかできません。
(Xcode 13 14までではできていたUSB接続iPhone経由Bluetoothで接続、というのができなくなっています)

ただXcode 13 14までならダウンロードできていたかというと、それはよく分からないですね。いま試せないので。


2024/9/8 Xcodeのバージョンが間違っていたので修正しました。