我的应用程序(例如,名为"真棒应用程序")拦截了一个http链接(例如,它是指向谷歌地图位置的链接)。链接在一个名为"查看活动"的活动中处理,它不是主启动器。当用户点击电子邮件中的链接时,我的应用程序和Googlemap一起出现在应用程序选择器对话框中。但是,它显示为"查看活动",而不是"真棒应用程序"。
我不想将活动的android:label
属性更改为"真棒应用程序",因为它不应该以这种方式命名。那么,在这种情况下,我该如何显示应用程序名称?谢谢
编辑:我尝试按照zmarties的建议添加<activity-alias>
,如下所示,但是,我的应用程序不再列在应用程序选择器对话框中,知道吗?Tks。
<activity-alias android:name=".Blahblah"
android:enabled="true"
android:exported="false"
android:icon="@drawable/ic_launcher"
android:label="@string/config_app_name"
android:targetActivity="com.mypackage.activity.ViewingActivity" >
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data
android:host="thehost.com"
android:scheme="http" />
<data
android:host="thehost.com"
android:scheme="https" />
</intent-filter>
</activity-alias>
您可以通过更改标签来更改显示的文本。你不想改变标签的事实并不能改变这样做的正确方式
如果您的问题是,除了拦截链接外,同一活动还有其他用途,您需要显示不同的标签,那么您需要将所有这些用途拆分为各自的活动,以便每个活动都有自己的特定标签。这些单独的活动实际上都可以是同一个活动-请参阅活动别名