2010-12-02 23 views
0

私はアンドロイドについて読んで始めて以来、しばらくしてきました。 私は既にいくつかの基本的なアプリケーションを作っていますが、私はまだ何かを忘れています。実際にどのようにアプリケーションコンポーネントを共有しているのですか? これは、Androidデベロッパーガイドが言うことである:アンドロイドのアンドロイドでアプリケーションコンポーネントを共有するにはどうすればいいですか?

中心的な特徴は、一つのアプリケーションは、(これらのアプリケーションは、それを許可して)他のアプリケーションの要素を利用することができるということです。たとえば、アプリケーションがスクロールするイメージのリストを表示する必要があり、別のアプリケーションが適切なスクロールを開発して他のアプリケーションが利用できるようにした場合、自分のスクロールを開発するのではなく、そのスクロールを呼び出すことができます。あなたのアプリケーションには、他のアプリケーションのコードやそのリンクが組み込まれていません。むしろ、必要なときに他のアプリケーションの一部を起動するだけです。

私はこれのようないくつかの質問に出会ったと思うが、私はまだ混乱していると思う。 このような「プライベートアプリケーション」情報をそのアプリケーションの開発者に連絡する唯一の方法はありますか?

アプリケーションがプライベートでも動作するデータに関する情報ですか? AndroidManifest.xmlファイルに記述されていれば、それは他のアプリケーションで利用できますか、またはAndroidのみで利用可能ですか?

私はアンドロイドで私の興味を満たす開始 - 私は巨大な相互運用性の印象だっつかんものの一つ...

:)

私が間違っていたか、私はまだ見つかっていません道?

ありがとうございます!

答えて

1

実際にアプリケーションコンポーネントの共有はどのように行われていますか?

これは、「アプリケーションコンポーネント」とみなされるものと、「共有する」とみなされるものに完全に依存します。

これは、Androidデベロッパーガイドでは、ドキュメントのかなり悪い作品です

を言うことです。

Androidの中心的な機能は、あるアプリケーションが他のアプリケーションのコンポーネント(アクティビティ、サービスなど)を利用できることです(アプリケーションが許可している場合)。たとえば、アプリケーションで連絡先のリストを表示する必要があり、別のアプリケーションがそれを実行して他のアプリケーションが利用できるようになったアクティビティを開発した場合、自分で開発するのではなく、そのアクティビティを呼び出すことができます。あなたのアプリケーションには、他のアプリケーションのコードは組み込まれていません。むしろ、必要なときに他のアプリケーションの一部を起動するだけです。

このような「プライベートアプリケーション」情報をそのアプリケーションの開発者に連絡する唯一の方法はありますか?

いずれかの開発者があなたと統合するつもりであるか、そうでないかのどちらかです。もしそうなら、彼らはそれを行う方法を文書化しなければなりません。、IntentのフォーマットでstartActivity()と一緒に使用してコードをトリガする)。そのような統合ポイントを文書化していない場合は、開発者にいくつか追加するように確かめることができます。しかし、応答を得るためにIntentsをランダムに撮影すると、たとえ一時的に機能していても、スクリプトの児童の戦術よりも少し上手くなります。つまり、開発者はアプリケーションをアップグレードするときにコード作業を確実にする義務はありません。

アプリケーションがプライベートでも動作するデータに関する情報ですか?

"アプリケーションが動作するデータに関する情報"という意味はわかりません。アプリケーションによって管理されるデータは、デフォルトではプライベートです。この場合も、アプリケーション開発者はデータ(例えば、コンテンツプロバイダ、リモートサービスAPI)の統合ポイントを提供することができます。私をつかんで、物事の

1は、Androidが他のモバイルプラットフォームよりも大きい相互運用性可能性を提供しています

巨大な相互運用性の印象でした。しかし、その可能性を利用するには相互運用性の間に同意が必要です。あなたが気に入ったからといって、他のアプリのデータベースをハッキングしたり、プライベートな活動を呼び出すことを一方的に決めることはできません。

多くのAndroid開発者がより多くの統合ポイントを提供する必要がありますか?要約では、確かに。ただし、これによりサポートコスト(例:統合の質問への回答)が増え、コーディングの柔軟性が制限されることに注意してください(たとえば、統合を行う人に安定したAPIを維持する必要がある)。開発者は、すべてのことをしたくないと非難することはできません。

+0

徹底的な回答ありがとう!ちょっとしたクリアランス - 「そのアプリケーションのデータに関する情報...」によって、私はアプリケーションが使用するデータ型を言うことを意味しました - 誰かのアプリケーションをハックしたくありません!これらのデータ型はマニフェストファイルに記述されています。 。 。 > つまり、自分のアプリからapp_otherで動画を再生できるようになったのですか? – karla

+0

以上 - アプリケーションによって公開されたすべてのアクティビティ、たとえばgetPackageArchiveInfo(path、GET_ACTIVITIES)を一覧表示できる場合。アプリケーションで受け入れられるデータ型に似たようなことができないのはなぜですか? – karla

+0

OK - 多分私は降伏する! http://stackoverflow.com/questions/4094109/android-how-to-i-get-a-list-of-all-available-intent-filters – karla

関連する問題