2012-04-17 7 views
0

アンドロイドのアクティビティがマニフェストファイルに登録されているかどうかを確認する方法はありますか?アンドロイドのアクティビティがマニフェストファイルに登録されているかどうかを確認する方法はありますか?

は、例えば言う:

String test = "com.Hy5.activity.Navigate"; 
      Intent intent = new Intent().setClassName(this.context, 
       test);     intent.putExtra("params", params); 


      try { 
       ((Activity) context).startActivity(intent); 
      } catch (Exception e) { 
          //e.printStackTrace(); 
     } // This Activity will implement 

ここで私は、テストの活動がマニフェストかに登録されているかどうかを確認します。

または、アプリケーションパッケージでこのmanifest.xmlを読み込み/解析できる方法はありますか?getResources()。getString(R.string.Sprint1)??

+2

現在のコードの問題点は何ですか? –

+0

問題はありません。私には要件があります。ここで私はJSONオブジェクトとしてのアクティビティ名を取得し、Intentを呼び出してそのアクティビティを開始する必要があります。したがって、マニフェストに登録されていない場合は、このstartActivity(intent)を実行すべきではありません。 – Smitha

答えて

1

利用PackageManager.getActivityInfo() それはそこにあなたがこのかかわらを行うことによって何かを得ると確信して

ないでなければ、それはPackageManager.NameNotFoundExceptionをスローします。

+0

+1 IMHO、それは解決策のようです。 – Gangnus

1

ActivityNotFound例外が発生した場合、これは通常、マニフェストに登録されていないことを意味します。あなたはそれで何かをすることができます。

関連する問題