2011-10-27 11 views
1

参考ユーティリティとなるAndroidアプリケーションを作成し始めました。パッケージ内のアクティビティ一覧

現在、私はアクティビティをパッケージにまとめていますので、パッケージ内のアクティビティを階層を確立するビューにリストするクラスを作成したいと思います。

私はその情報のパッケージをどのように尋ねるのか分かりません。

どのようにこれを達成するためのアイデアですか?より良いアプリケーション設計のためのヒント?

ありがとうございました。

答えて

6

PackageManager Docsを見るとかなり簡単です。 PackageManagerのインスタンスを取得する

使用Context.getPackageManager()

はここでラフなステップです。

その後、希望パッケージにPackageManager.getPackageInfo()を呼び出します。これにより、公開されたメンバーApplicationInfo.ActivityInfoを持つApplicationInfoオブジェクトが返されます。

ActivityInfoは、AndroidManifest.xmlファイルのすべての<activity>タグの配列です。

これはPackageManagerドキュメントを読み、あなたがPackageInfo

+0

ありがとうございます。私はどこかに反射的な(?)クラスがあると思ったが、何を探すべきか分からなかった。 –

-2

に別の方法を取得するまで、リンクをたどり明確でない場合は、あなたのメタデータを含むXMLファイルを作成することです。簡単にアクセスできるので便利だと思います。

<packages> 
<package> 
    <activities> 
    <activity> 
    </activity> 
    </activities> 
</package> 
</packages> 
+0

はい、またはデータベースですが、可能な限り冗長性を排除する必要があります。 –