我这样搞完没有代码报错了(https://blog.csdn.net/m0_37292262/article/details/104775465),但是运行的时候只能运行该项目的第一个layout,其他的显示Error running 'ContactActivity' The activity must be exported or contain an intent-filter.怎么办
2条回答 默认 最新
关注引自免费微信小程序:皆我百晓生
看起来你正在尝试在Android Studio中运行一个项目,并且遇到了一些错误。根据你的描述,似乎你已经按照CSDN文章中的步骤处理了之前的编译错误。现在的问题是,在尝试运行
ContactActivity时收到警告信息:"The activity must be exported or contain an intent-filter." 这意味着系统找不到如何启动这个特定的Activity。为了解决这个问题,你需要在你的
AndroidManifest.xml文件中为ContactActivity添加一个intent-filter。这将告诉系统这个Activity可以通过什么方式被启动,比如通过点击一个按钮、链接或者其他应用的意图。以下是修改
AndroidManifest.xml文件的步骤:-
打开
AndroidManifest.xml文件,通常位于项目的根目录下的app/src/main目录内。 -
在
<application>标签内找到对应的ContactActivity标签,它可能类似下面的样子:<activity android:name=".ContactActivity" /> -
在此标签内部添加一个
<intent-filter>标签,确保它在</activity>之前。这样做的目的是定义一个可以启动ContactActivity的Intent类型。例如,我们可以创建一个通过点击一个链接来启动它的过滤器:<activity android:name=".ContactActivity"> <intent-filter> <action android:name="android.intent.action.VIEW" /> <category android:name="android.intent.category.DEFAULT" /> <data android:scheme="http" /> <data android:host="yourdomain.com" /> <!-- 如果你想要所有子域名也支持,可以使用"*" --> <!-- <data android:pathPattern=".*" /> --> </intent-filter> </activity>在上面的示例中,我们定义了一个可以处理HTTP链接指向
yourdomain.com的Intent。如果你的应用不需要通过这种方式启动,你可以根据实际需求调整这些值。 -
保存并关闭
AndroidManifest.xml文件。 -
最后,尝试重新运行你的应用程序。此时应该能正常启动
ContactActivity了。
如果你的应用有其他特定的启动需求,可以查阅Android官方文档关于Intent Filter的更多信息,以便正确配置你的过滤器。如果你的
ContactActivity需要从其他地方启动,可能需要额外的过滤器来处理不同的Intent类型。解决 无用评论 打赏 举报 编辑记录-