カテゴリー
SugiBlog Webエンジニアのためのお役立ちTips

iTunesによるバックアップの保存場所

最近、iPhoneをバックアップしていなかったので、久しぶりにバックアップしておこうと思ったときに、バックアップの保存先が変わっていたのでメモ。

以前はこのような保存場所でした。

C:\Users\{username}\AppData\Roaming\Apple Computer\MobileSync\Backup

推測ですが、2020年8月頃から以下のような場所に変わったようです。

C:\Users\{username}\Apple\MobileSync\Backup
389 views

iPhoneのZoomアプリでマイクが使えない

Zoomミーティングをしていて、iPhoneの方の音声が繋がらないということがあったので、その原因と対処方法です。
Zoomのバージョンは5.9.3です。

まず原因はZoomアプリでiPhoneのオーディオに接続していないということでした。
これはiPhoneでZoomアプリをインストールしたばかりのデフォルトの設定がそうなっているようです。

マイクが使えるようにするには設定を変更します。
Zoomアプリの設定ボタンを押します。

「ミーティング」を選択します。

「自動接続オーディオ」が「オフ」になっていると思うので、これを「Wi-Fiまたは携帯のデータ」に変更します。

これでマイクを使う設定が有効になりました。
Zoomミーティングに接続するとマイクボタンが表示されますので、それでマイクのオン/オフを切り替えることが出来ます。

752 views

iOS13で発生するクラッシュ NSInternalInconsistencyException

GoogleMapを使用したiOSアプリを使っていて、地図を表示しているときに急にクラッシュするようになったので原因を調べました。
発生するエラーの内容は以下の通り

Fatal Exception: NSInternalInconsistencyException
Modifications to the layout engine must not be performed from a background thread after it has been accessed from the main thread.

iOS13で内部仕様が変わったことによるもののようです。

どうもバックグラウンドスレッドからUIを触るなということらしいですが、
そんなことはしていないつもりでした。
おそらくこれまでよりも厳密になったのでしょうか…。
とにかく対応するしかありません。

元のソースコード

let session = URLSession(configuration: URLSessionConfiguration.default)

let task = session.dataTask(with: URLRequest(url: Foundation.URL(string: url)!), completionHandler: { (data, response, error) in
    if let urlContent = data {
        print(urlContent)
    }
})
task.resume()

修正したコード

let session = URLSession(configuration: URLSessionConfiguration.default)

let task = session.dataTask(with: URLRequest(url: Foundation.URL(string: url)!), completionHandler: { (data, response, error) in
    if let urlContent = data {
        DispatchQueue.main.sync {
            print(urlContent)
        }
    }
})
task.resume()
8,928 views

iOS メールを一括で削除する

こちらの方法はiOS7の頃からあった方法のようですが、
現在のiOS11でも出来ます。
少しやり方が特殊で私自身も忘れるのでメモしておきます。

  1. 事前に[編集]-[すべてマーク]-[開封済みにする]で全てのメールを開封済みにします。
  2. 再度[編集]をタップします。
  3. 一番上のメールにチェックを入れます。
  4. 下の[移動]を押しながら、先ほどチェックしたメールのチェックを外します。
  5. [移動]から指を離します。
  6. 全てのメールが選択されたことになり、移動先を聞いてくるのでゴミ箱を選択します。

すると全てのメールを一括でゴミ箱に移すことができました。

914 views

Xcode 9 アップデートの対応

Xcode 9 Swift 4がリリースされたので、アップデートしてみました。
その際のマイグレーションについて参考になるかは分かりませんが、
私が開発しているアプリでの作業をメモしておきます。

今回のアプリはGoogleMapsとRealm、SVProgressHUDを使用したアプリですので
そのAPIパッケージもアップグレードする必要があります。

ターミナルでプロジェクトのディレクトリに移動します。

cd <path-to-project>

pod updateを実行します。

pod update

インストールしていたAPIがアップグレードされます。
iOSのターゲットを9.0としていたため、エラーが解消されなかったのでターゲットを10.0に変更しました。

Xcodeでプロジェクトを開くと色々と警告が表示されていました。

ビルドしてももちろん通らないので、修正をしていきます。
続きを読む…»

3,424 views