2011-07-26 6 views
1

私のサービスのAndroidManifest.xmlにメタデータがあります。このメタデータを取得すると、あなたがしなければならないすべては、このようなものであるとして、活性が非常に簡単です:サービスについては私のサービスの "メタデータ"を取得するには

final Bundle data = 
getPackageManager().getActivityInfo(this.getComponentName(), PackageManager.GET_META_DATA).metaData; 

、私は明らかに「getServiceInfo()」の代わりに、活動情報の方法を使用しているだろうが、サービスにはgetComponentName()メソッドはありません。これが利用できない理由はありますか?ここに独自のComponentNameオブジェクトを構築する必要がありますか?

おかげ

答えて

1

私はここに私自身のコンポーネント名のオブジェクトを作成する必要がありますか?

AFAIK、はい。 Serviceから、new ComponentName(this, this.getClass())はサービスそのもののためにComponentNameを与えます。

7
ComponentName myService = new ComponentName(this, this.getClass()); 
Bundle data = getPackageManager().getServiceInfo(myService, PackageManager.GET_META_DATA).metaData; 
関連する問題