作为标题: 如何使用意图过滤器从其他应用程序的URL(可能是一条消息)打开myapp(一个Activity而不是MainActivity),单独启动我的应用程序(这意味着myapp不会在包含该URL的其他应用程序内启动)
我使用意图过滤器开发了具有共享功能的myapp。虽然我可以在myapp的某些活动中显示URL,但myapp会在另一个应用程序中启动(就像myapp占用其他应用程序一样)。
下面是我的代码:
AndroidManifest:
<activity
android:name=".activity.URLActivity"
android:label="@string/URL_details"
android:screenOrientation="portrait">
<intent-filter>
<action android:name="android.intent.action.VIEW"></action>
<category android:name="android.intent.category.DEFAULT"></category>
<category android:name="android.intent.category.BROWSABLE"></category>
<data android:host="123.456.789.10" android:scheme="https"></data>
/>
</intent-filter>
</activity>
打开URL的Activity's Fragment的代码:
Intent intentFromURL = getActivity().getIntent();
if (intentFromURL.getDataString()!=null) {
mIntentURL = intentFromURL.getDataString();
String[] splittingURL = mIntentURL.split("/");
mProductCode = splittingURL[5];
}
答案 0 :(得分:0)
我可以在我的myapp活动中打开网址,而不是&#34;允许其他应用打开我的应用&#39;活动&#34;
对于我的情况,我在我想要调用的活动下面向AndroidManifest.xml添加了一个代码。
解决方案如下:
<activity
android:name=".activity.URLActivity"
android:label="@string/URL_details"
android:screenOrientation="portrait"
android:launchMode="singleTask">
<intent-filter>
<action android:name="android.intent.action.VIEW"></action>
<category android:name="android.intent.category.DEFAULT"></category>
<category android:name="android.intent.category.BROWSABLE"></category>
<data android:host="123.456.789.10" android:scheme="https"></data>
/>
</intent-filter>
</activity>
我添加了&#34; android:launchMode =&#34; singleTask&#34;&#34;,任务将在我的应用上启动,但不会启动其他应用。(等Whatsapp)
我希望这可以帮助像我这样的人。=]