为什么我在图标而不是应用程序名称下显示活动名称?

时间:2017-01-21 09:55:09

标签: android android-activity android-manifest

我有以下清单:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.inthemoon.normaltraveltracker">

    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />

    <application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:supportsRtl="true"
        android:theme="@style/AppTheme">

        <activity
            android:name=".MapsActivity"
            android:label="@string/title_activity_maps">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>

字符串资源是

<resources>
    <string name="app_name">Normal Travel Tracker</string>
    <string name="title_activity_maps">Map</string>

此应用程序图标的标题为&#34; Map&#34;在我的Android设备上,即不是通过应用名称,而是通过活动名称。

为什么?

2 个答案:

答案 0 :(得分:0)

让我们拿你的清单

您需要关注两个标签

1.对于...下的应用名称​​启动器图标 --------&gt;使用android:label - &gt;主要启动器活动代码中的

2.对于应用名称下的...设置 - &gt;应用程序管理器 - &gt;下载的应用名称---&gt;在应用程序标记

中使用android:label - &gt;

    

    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />

    <application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"  <----(2)
        android:supportsRtl="true"
        android:theme="@style/AppTheme">

        <activity
            android:name=".MapsActivity"
            android:label="@string/title_activity_maps"> < ---(1)
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>

更改启动器活动android:label标记并运行:)

注意:启动器图标下的名称不是应用程序的名称,而是默认启动器的名称!

答案 1 :(得分:0)

这是由标签的优先级引起的。 根据android开发人员API文档,'activity'中的'label'优先于'application'。

所以,你应该删除'activity'中的'android:label'。