iOS で別のアプリのファイル データにアクセスすることはできますか? Android では、以下の URL によると可能のようです。 2 つのアプリ間でファイル/インストール ディレクトリを共有する
3 に答える
いいえ、それはできません。
すべての iOS アプリはサンドボックス化され (少なくともジェイルブレイクされていないデバイスでは)、キーチェーン データは (バンドル シード ID を共有するアプリ間で) 共有できますが、ファイルベースのデータに対して同じことを行うことは現在不可能です。
できることは、サーバーを介してデータを交換するか、別のアプリが登録した URL スキームを呼び出して、他のアプリにデータを渡すことです。アップルは次のように述べています。
URL ベースの構文を使用すると、Web からデータにアクセスできるだけでなく、メール、iTunes、YouTube などの他のインストール済みアプリケーションに情報を渡すことができます。独自のアプリケーションで一意の URL スキームを宣言できるため、任意のアプリケーションがアプリケーションと連携してデータを共有できます。
どのようなデータかによります。実際、iOS アプリはキーチェーン データのみを共有できます。Appleのドキュメントから:
アプリ ID には、チーム ID とそれに続くバンドル ID 検索文字列の 2 つの部分があります。チーム ID は、Apple によって生成された 10 文字の文字列です。各開発チームには、すべてのアプリを識別するために使用される一意のチーム ID が割り当てられます。チーム ID を使用すると、アプリ間でキーチェーン データを共有できます。同じチーム ID を持つアプリは、ユーザー名やパスワードなどのデータを共有できます。バンドル ID 検索文字列は、従来、逆ドメイン名スタイルの文字列です。Xcode でバンドル ID として使用する文字列です。
私はこれをやったことがありませんが、これを行う方法については多くのチュートリアルがあるはずです。
Apple デバイスにインストールされている他のアプリのデータにアクセスすることはできません。それはリンゴによって制限されています。
とにかく、JailBreaked デバイスで試すことができます。これらの操作は、Apple プライベート API によって処理されます。通常のデバイスではアクセスできません。
それらにアクセスしたり、アプリケーションで使用したりすると、Apple はアプリケーションを拒否します。