2011-12-10 109 views
2

我試圖讓一個用戶提供一個類名,然後啓動Activity,但我不斷收到錯誤提示:啓動系統上的任何活動

android.content.ActivityNotFoundException:無法找到顯式活動類{com.intel.ave.androidclient/com.android.vending};你有沒有在你的AndroidManifest.xml中聲明這個Activity?

我沒有把它放在我的Manifest中,因爲我不知道用戶在運行時需要什麼。

//package_name = input from the user 
//MyContext = the activity context 
Intent newprocess = new Intent(Intent.ACTION_MAIN); 
newprocess.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); 
newprocess.setClassName(MyContext, package_name); 
MyContext.startActivity(newprocess); 

回答

3

以意圖啓動外部活動與在應用程序中啓動有點不同。見calling activity from external Activity。從那裏引用,你會用此代替

PackageManager pm = getPackageManager(); 
Intent intent = pm.getLaunchIntentForPackage("com.the.other.app"); 
startActivity(intent);