我在浏览器重定向中获取此字符串
意图://视图id = 123#意图;包= com.myapp;方案= MyApp的; launchFlags = 268435456; END;
我该如何使用它?
发现于:http://fokkezb.nl/2013/09/20/url-schemes-for-ios-and-android-2/
答案 0 :(得分:1)
您在同一篇文章的第1部分中得到了答案:
http://fokkezb.nl/2013/08/26/url-schemes-for-ios-and-android-1/
您的活动必须具有与给定意图匹配的意图过滤器 你有:
package=com.myapp;scheme=myapp
您的应用包必须是 com.myapp 且网址方案是 myapp:// 所以你必须声明你的活动:
<activity android:name=".MyActivity" >
<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:scheme="myapp" />
</intent-filter>
</activity>
然后您的活动将由android自动打开。
Optionnaly你可以使用从你的代码收到的uri,例如onResume方法(为什么onResume? - &gt;因为它总是在onNewIntent之后调用):
@Override
protected void onResume() {
super.onResume();
Intent intent = getIntent();
if (intent != null && intent.getData() != null) {
Uri uri = intent.getData();
// do whatever you want with the uri given
}
}
如果您的活动使用onNewIntent,我建议使用setIntent,以便上面的代码始终在最后一个意图上执行:
@Override
protected void onNewIntent(Intent intent) {
setIntent(intent);
}
这是否回答了你的问题?