ฉันสังเกตเห็นว่ามีความแตกต่างบางประการในวิธีที่ชื่อแอปสามารถปรากฏในอุปกรณ์ Lollipop ได้ ก่อนอมยิ้มคุณสามารถมีชื่อแอพที่แตกต่างกันด้วย:
<application
android:label="@string/app_name"> // appears in manage app info
<activity
android:name=".MainActivity"
android:label="@string/action_bar_title"> // appears in actionbar title
<intent-filter android:label="@string/name_in_icon_launcher"> // appears in icon launcher
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
...
ในอมยิ้มมันจะเป็นเช่นนี้:
<application
android:label="@string/name_in_manage_app_info">
<activity
android:name=".MainActivity"
android:label="@string/name_in_actionbar_and_icon_launcher">
<intent-filter android:label="@string/this_is_useless">
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
ใน Lollipop นั้นandroid:label
ตัวกรองแบบเจตนานั้นไร้ประโยชน์โดยทั่วไปในขณะที่ชื่อแถบเครื่องมือและตัวเรียกใช้ไอคอนนั้นเหมือนกัน ดังนั้นหากคุณต้องการชื่อเรื่องที่แตกต่างในแถบเครื่องมือคุณไม่มีทางเลือกนอกจากตั้งค่าแบบไดนามิก
getSupportActionBar().setTitle(R.string.app_name);