你有没有在AndroidManifest.xml中声明这个活动?

时间:2014-01-01 14:05:57

标签: android xml

我想在我的项目中使用第三方Android项目,因此我将此第三方项目的源导出到jar文件,然后将jar文件导入到我项目的Android Dependencies中。我在课堂上添加了这段代码:

ComponentName componentName = new ComponentName(
            "com.mobilevisualsearch",
            "com.mobilevisualsearch.ActivityImageDetail");

    String strImageSourcePath = "/storage/emulated/0/Camera/P40101-165253.jpg";
    Bundle bd = new Bundle();
    bd.putString("strPhotoFileFullName", strImageSourcePath);

    Intent it = new Intent();
    it.putExtras(bd);
    it.setComponent(componentName);
    startActivity(it);

com.mobilevisualsearch.ActivityImageDetail是第三方项目的一类。我的AndroidManifest.xml已添加为

    <activity
        android:name="com.mobilevisualsearch.ActivityImageDetail"
        android:configChanges="orientation"
        android:screenOrientation="portrait" >
    </activity>

<activity>位于<application>之下。当我运行我的应用程序时,我收到一个错误。 这是Logcat日志:

android.content.ActivityNotFoundException: Unable to find explicit activity class {com.mobilevisualsearch/com.mobilevisualsearch.ActivityImageDetail}; have you declared this activity in your AndroidManifest.xml?

如何解决此问题?

2 个答案:

答案 0 :(得分:2)

  

如何解决此问题?

第1步:摆脱ComponentNamesetComponent()来电

第2步:将Intent初始化替换为Intent it = new Intent(this, ActivityImageDetail.class);,如果需要,为import添加ActivityImageDetail

答案 1 :(得分:0)

com.mobilevisualsearch.ActivityImageDetail

因为它控制台通知您该类未找到异常,请检查第三方项目是否已添加到您的项目中

尝试导入类中的ActivityImageDetail并检查它是否存在

或者如果您尝试打开设备中安装的第三方应用程序,则无需在清单中安装,请检查您的设备中是否存在应用程序