我的应用有以下主要活动:
<activity
android:name=".main.MainActivity"
...
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
它启动时没有问题来自家庭发射器。但是,当我尝试从Google的手势搜索启动它时,我收到一条手势错误消息,指出该应用没有.MainActivity
。
https://play.google.com/store/apps/details?id=com.google.android.apps.gesturesearch
Android应用是否需要拥有名为.MainActivity
的主要活动?如果不是,它是一个软推荐或约定,还是仅仅是对Gesture的错误假设?
答案 0 :(得分:8)
Android应用不需要任何名为.MainActivity的活动。此外,我不知道这样的任何惯例。听起来你可能在不知不觉中告诉Gesture你想要一些名为.MainActivity的东西。
也许是因为你把一个包名放在了这个类的实际名字之前。请尝试改为使用完全限定的类名。还可以尝试重命名Activity,看看是否有任何不同的结果。
答案 1 :(得分:3)
Android应用程序不需要名为MainActivity
的活动,您不应该假设(并且当然不应该依赖)任何实现它的应用程序。
此外,我从未听说过任何建议这样做的公约。大多数开发人员会将每个活动命名为适合其在应用程序中的行为和/或目的。
答案 2 :(得分:0)
不,这根本不需要,我不会在我的项目中使用这个名字。您可以根据应用程序的行为给出名称。
答案 3 :(得分:0)
可能是问题与清单文件中提到的您的活动名称有关。
机器人:parentActivityName =&#34; .activity.MainActivity&#34;
如果您使用片段和操作栏后退按钮,则必须正确提及父活动名称,在我的情况下,它是MainActivity。如果没有正确给出,则会显示错误。