[Swift] RealmファイルをAirDropなどでMacへ送信する

公開日: : iOSアプリ開発

こんにちは、@akio0911です。
軽量・高速なモバイルデータベース「Realm」。僕もアプリを開発する際は大変お世話になっています。

さて、Realmを使ってアプリ開発を行う際、デバッグや調査などの目的でRealmファイルの中身をまるごと参照したくなることがあります。その際、iPhoneなどから簡単操作でMacなどへ送信できる機能を追加する方法を紹介したいと思います。

UIActivityViewControllerを使ってRealmファイルをシェアする

コードはとても簡単。Realmファイルの在処を調べ、UIActivityViewControllerに渡してあげるだけです。以下にサンプルコードを示します。

do {
    guard let fileURL = try Realm().configuration.fileURL else { return }

    let activity = UIActivityViewController(activityItems: [fileURL], applicationActivities: nil)
    present(activity, animated: true, completion: nil)
} catch let error {
    print(error.localizedDescription)
}

上記のコードを実行した時の結果を以下に示します。

あとはAirDropでMacへ送ったり、Slackでメンバーにシェアしたり、メールで送信したり、Realmファイルを簡単にシェアできるようになります。

Realmファイルに限らず、ローカルに保存しているファイルや内部的に生成している画像などをシェアできるようにしても良いでしょう。

MacでRealmファイルの中身を見る

Realm Browserを使うと、MacでRealmファイルの中身を見ることができます。CSVへのエクスポートも可能です。

@akio0911はこう思った。


デバッグや調査が捗ると思うので、ぜひお試しください!

ただし、リリース版ではこの機能がオフになるような組み込み方をしたほうが良いでしょう。

by @akio0911

関連記事

この記事が気に入ったら「いいね!」しよう

follow us in feedly

Feedlyで最新記事を購読

Twitterで更新情報をゲット!

LINEでご感想・ご要望お送りください!
(スマホでLINEを起動 > 友だち追加 > QRコード)

【RxSwift】ストリームのcompletedをつぶす(消し去る)方法

RxSwiftで元々のストリームからcompletedをつぶす

【RxSwift】completedかerrorが流れてきたらsubscribeはdisposeされる

RxSwiftにおいて、completedかerrorが流れて

init(frame:), init(coder:), awakeFromNib, prepareForInterfaceBuilder が呼ばれる条件をまとめてみた

カスタムViewを作った際に呼ばれる初期化系メソッドの条件や順

【WWDC2018】iOSエンジニア的に気になる新機能・新APIまとめ

こんにちは、@akio0911です。 先日開催されたWW

【Swift】Codableで後からキーを追加した場合の挙動

こんにちは、@akio0911です。 SwiftのCod

→もっと見る

PAGE TOP ↑