Android 如何启动应用程序上下文的意图

Android 如何启动应用程序上下文的意图,android,android-intent,android-context,Android,Android Intent,Android Context,我发现了几乎相同的问题: 但我在使用时没有做到这一点 错误日志: Caused by: android.content.ActivityNotFoundException: Unable to find explicit activity class {com.fenchtose.asyncamera/com.eason.mycamera.myCamApplication}; have you declared this activity in your AndroidManifest.xml?

我发现了几乎相同的问题:

但我在使用时没有做到这一点

错误日志:

Caused by: android.content.ActivityNotFoundException: Unable to find explicit activity class {com.fenchtose.asyncamera/com.eason.mycamera.myCamApplication}; have you declared this activity in your AndroidManifest.xml?
我已经在AndroidManifest.xml中将这个myCamApplication类注册为我的应用程序类

    <application
    android:name=".myCamApplication"
    android:allowBackup="true"
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name"
    android:theme="@style/AppTheme"
    >
    <receiver
        android:name=".BootComplete"
        android:enabled="true"
        android:exported="true">
        <intent-filter>
            <action android:name="android.intent.action.BOOT_COMPLETED" />
        </intent-filter>
    </receiver>
    <activity
        android:name=".myCam"
        android:label="@string/app_name" >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
</application>


因此,任何人都可以提供帮助?

尝试创建其他活动并将其添加到您的
Manifest.xml
中,查看是否有任何错误不要忘记添加此代码
并启动新的
Intent
您无法启动应用程序类。您只能开始一项活动

更改您的代码,例如:

Intent applicationIntent = new Intent(context, myCamApplication.class);


这里的问题是你不理解基本原理。在android中,你只有4个组件:活动、服务、内容提供者、广播接收者。因此,在清单中,您声明您拥有应用程序(名称、属性…),而在应用程序中,您拥有活动、服务、接收者和内容提供者

您的应用程序不是您的应用程序类。因此,要启动应用程序,应启动默认活动:

Intent intent = new Intent(context, MainActivity.class);
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);//because we use Application context
startActivity(intent);
另外,你的应用课程将自动开始。应用程序的生命周期如下: 启动应用程序类->启动组件(服务、活动…)->停止组件(服务…)->停止应用程序类

附言。 无需在onReceive中检查操作-它将出现的唯一原因是:

<intent-filter>
    <action android:name="android.intent.action.BOOT_COMPLETED" />
</intent-filter>


您能提供您的代码吗?这样可以更容易地帮助您在AndroidManifest.xml中声明此活动?@Christopher是的,我已经包含了AndroidManifest。xml@Marat请看一看,感谢新的意图(上下文,myCamApplication.class);是错误的,您需要在此提供活动类。我可以通过context.startActivity成功启动活动上下文。但无法为应用程序类执行此操作您是否使用了
Intent Intent=new Intent(main activity.this,yourSecondActivity.class);MainActivity.this.startActivity(意图)???我已经包括了代码,请看一看,谢谢。我不确定这是否可能,这里有一个类似的问题:我不确定,你想实现什么?无法通过startActivity启动应用程序类!我只想在启动完成时在应用程序的构造函数中执行一次操作。如果您的BroadcastReceiver收到消息,我认为应用程序类已经实例化了?否则你就没有上下文实例了,还是没有?
Intent intent = new Intent(context, MainActivity.class);
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);//because we use Application context
startActivity(intent);
<intent-filter>
    <action android:name="android.intent.action.BOOT_COMPLETED" />
</intent-filter>