4

アクティビティを宣言または使用する方法を尋ねているわけではありません。それで問題ありません。私が本当に疑問に思っているのは、なぜアクティビティが宣言された要素として存在するのか、その背後にある目的は何なのかということです。使用する要素を 2 つの場所 (マニフェストとコード自体) で宣言するように強制すると、何らかの形でセキュリティが向上するのでしょうか?

4

2 に答える 2

4

コードには、通常の Java クラスしかありません。Activityエクスポート ツールは、 、またはFragmentActivity、またはそれらのサブクラスを拡張するものを検出する必要があります。そして、いくつかは単に抽象的なものかもしれません。とにかく、Android には利用可能なすべての のリストが必要ですActivity

それらをマニフェストで宣言することにより、Android が知る必要がある追加の属性とメタデータを宣言する機会が得られます。

どのIntentフィルタが利用可能ですか? をどのモードで起動しますActivityか? いつどれを起動しActivityますか? Androidはそれを知る必要があります。

編集:Activityアイコンとラベルだけでなく、単一の s を開始するために必要なアクセス許可を忘れないでください-すべてを知っておく必要があります。

于 2013-07-15T20:22:46.807 に答える
2

アクティビティはマニフェストで宣言されるため、Android OS はインテントを処理するときにルックアップを実行できます。

その背後にある最も優れたアイデアは、別のアプリケーションのアクティビティをアクティビティ スタックの一部にすることができるということです。別のアプリケーションのマニフェストで許可されている場合。

于 2013-07-15T20:22:38.707 に答える