在清单文件中定义活动的正确语法是什么

And*_*oid 14 syntax android manifest android-activity

添加活动的正确方法是AndroidManifest.xml什么?

实际上我在很多地方都看到了一个定义为的活动

<activity 
    android:name="MyFirstActivity" 
    android:label="@string/title_first_activity">
</activity>
Run Code Online (Sandbox Code Playgroud)

在某些地方

<activity 
    android:name=".MySecondActivity" 
    android:label="@string/title_second_activity">
</activity>
Run Code Online (Sandbox Code Playgroud)

我只是想知道将点(.)放入清单文件中是否是正确的方法.

我经历了很多帖子,但我找不到确切的解决方案.表明不需要点(.),而表明使用点(.).那么正确的方法是什么?

Ily*_*dov 11

dot表示您的包名称.这是更简短的声明类型.

如果定义子类,就像组件类(Activity,Service,BroadcastReceiver和ContentProvider)几乎总是那样,子类是通过name属性声明的.名称必须包括完整的包装名称.例如,Service子类可能声明如下:

<manifest . . . >
     <application . . . >
         <service android:name="com.example.project.SecretService" . . . >
             . . .
         </service>
         . . .
     </application> 
</manifest>
Run Code Online (Sandbox Code Playgroud)

但是,作为简写,如果字符串的第一个字符是句点,则该字符串将附加到应用程序的包名称(由元素的包属性指定).以下分配与上述分配相同:

<manifest package="com.example.project" . . . >
     <application . . . >
         <service android:name=".SecretService" . . . >
             . . .
         </service>
         . . .
     </application> 
</manifest> 
Run Code Online (Sandbox Code Playgroud)

启动组件时,Android会创建命名子类的实例.如果未指定子类,则会创建基类的实例.

http://developer.android.com/guide/topics/manifest/manifest-intro.html 声明类名


Ish*_*iaq 5

是的把点放在正确的方向..如果你看到eclipse自己生成的活动它看起来像.

 <activity 
        android:name=".MyFirstActivity" 
        android:label="@string/app_name">
    </activity>
Run Code Online (Sandbox Code Playgroud)

所以它的正确方法,我们的理念可以理解