Must the main activity name be .MainActivity?

android, android-activity

Solution

Android apps do not require any activity called .MainActivity. Furthermore, I'm not aware of any conventions like this. It sounds like you may be unknowingly telling Gesture that you want something called .MainActivity.

Perhaps it is because you put a package name before the actual name of the class. Try putting the fully qualified class name instead. Also try renaming the Activity, and see if you get any different results.

Problem

My app has this main activity: ``` <activity android:name=".main.MainActivity" ... <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> ``` and it launches with no problem from the home launcher. However, when I try to launch it from Google's Gesture Search, I get a Gesture error message saying that the app does not have `.MainActivity`. https://play.google.com/store/apps/details?id=com.google.android.apps.gesturesearch Do Android apps required to have the main activity called `.MainActivity`? If not, is it a soft recommendation or a convention or just a bad assumption on Gesture's part?

Original source