![](/img/trans.png)
[英]Android: ActivityNotFoundException Unable to find explicit activity class
[英]Android: Unable to find explicit activity class… startActivity from a PreferenceActivity
我正在嘗試從 PreferenceActivity 開始一個新的 Activity。 但是,它失敗並顯示“無法找到顯式活動類。您是否在 AndroidManifest.xml 中聲明了此活動?”
嗯,是的,我聲明了:
<application [......] android:debuggable="true">
<activity android:name=".AlarmSettings"
android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:name=".FlashLightActivity"></activity>
<receiver
android:name="AlarmReceiver"
android:process=":remote" >
</receiver>
</application>
AlarmSettings 是我的 PreferenceActivity。 AlarmSettings 以這種方式調用 FlashLightActivity:
Intent i = new Intent(AlarmSettings.this, FlashLightActivity.class);
startActivity(i);
這是 FlashLightActivity:
public class FlashLightActivity extends Activity {
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.flashlight);
}
}
... 我不知道該怎么辦。 有任何想法嗎?
我也有這個問題。 如果您仔細閱讀 logcat 上的錯誤,您就會知道該怎么做。
您必須在 AndroidManifest.xml 中聲明活動
<activity
android:name=".TheNameOfMyActivity"
android:label="@string/app_name" >
<intent-filter>
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
對我來說,發生此錯誤是因為我已將活動類文件移動到不同的包,並且由於某種原因 Eclipse 沒有正確重構它。 始終為您的活動使用完全限定的名稱,並仔細檢查它是否准確。
當從另一個內部啟動 Activity 時,您需要為您的 AndroidManifest 文件提供父子關系,以確保啟動的 Activity 將其結果返回給您需要父 Activity。 例子,
<activity
android:name="ACTIVITY TO BE STARTED"
android:label="@string/TITLE"
android:screenOrientation="landscape" >
<meta-data
android:name="android.support.PARENT_ACTIVITY"
android:value="ACTIVITY STARTED FROM?RETURNING TO" />
</activity>
我遇到了同樣的問題,我所做的是在服務或布局的onCreate
函數中編寫了 Intent 聲明。 實際上這就是所說的“無法訪問顯式”
就我而言,我只需要重命名該類,因為這是 android studio 保留的一個詞,或者有另一個參考,所以:
crl
+ space
找到這個並檢查你的建議的路線所以不要使用FlashLightActivity
為例。
也許它對其他人有用
將海報的解決方案復制到答案部分,以將其從“未答復”過濾器中刪除:
這不是我的代碼的問題,而是 Eclipse 和 Android SDK 的問題。 經過一番研究,我在 Eclipse 中執行了“幫助 -> 檢查更新”,現在一切正常。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.