2012-05-28 52 views
5

我的应用程序有这个主要活动:主活动名称必须是.MainActivity?

<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的Gesture Search中启动它时,出现手势错误消息,指出该应用没有.MainActivity

https://play.google.com/store/apps/details?id=com.google.android.apps.gesturesearch

要求做Android应用程序拥有的主要活动叫.MainActivity?如果不是,这是一个软性推荐,还是一个惯例,或者是对姿势的一个不好的假设?

回答

6

Android应用程序不需要任何称为.MainActivity的活动。此外,我不知道这样的约定。这听起来像你可能不知不觉地告诉手势,你想要一些叫做.MainActivity的东西。

也许是因为你在类的实际名称之前放了一个包名。尝试使用完全限定的类名称。也尝试重命名该活动,并查看是否得到任何不同的结果。

3

Android应用程序不需要名为MainActivity的活动,您不应该假设(也不应该依赖)任何实现它的应用程序。

此外,我从来没有听说过任何推荐这么做的惯例。大多数开发人员将命名每个活动以适应其在应用程序中的行为和/或目的。

0

不,这不是必需的,我不会将这个名字用于我的项目。您可以提供适合您应用程序行为的名称。

0

可能是您的活动名称在清单文件中提到的问题。

机器人:parentActivityName =“ activity.MainActivity”

如果您使用的是碎片和动作条后退按钮,那么你必须正确地提及父活动的名字,对我来说,这是MainActivity。如果你没有正确给它,它会显示错误。

相关问题