我得到這個字符串,在瀏覽器重定向如何處理這個字符串來打開我的應用程序
意圖://查看ID = 123#意圖;包= com.myapp;方案= MYAPP; launchFlags = 268435456 ;結束;
我該如何使用它?
發現:http://fokkezb.nl/2013/09/20/url-schemes-for-ios-and-android-2/
我得到這個字符串,在瀏覽器重定向如何處理這個字符串來打開我的應用程序
意圖://查看ID = 123#意圖;包= com.myapp;方案= MYAPP; launchFlags = 268435456 ;結束;
我該如何使用它?
發現:http://fokkezb.nl/2013/09/20/url-schemes-for-ios-and-android-2/
你有你的答案在同一篇文章的第1部分:
http://fokkezb.nl/2013/08/26/url-schemes-for-ios-and-android-1/
您的活動必須有一個意圖過濾器匹配給定的意圖 在這裏,您有:
package=com.myapp;scheme=myapp
您的應用程序包必須是co m.myapp和URL方案是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>
那麼你的活動將被自動機器人打開。
Optionnaly你可以從你的代碼收到的URI,例如在的onResume方法的工作(爲什麼的onResume - >因爲它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);
}
這是回答您的問題嗎?
什麼情況是這樣的: 我點擊它發送到我的瀏覽器中的電子郵件中的鏈接時,瀏覽器要我重定向到這個網址:意圖://上述 –
作爲粘貼你的答案是正確的,除了一個小錯誤 - >你在「onResume」中寫的內容必須!在onNewIntent中讀取,否則它是一個不同的意圖,並從URL的所有數據被殲滅。在你解決這個問題之後,我會接受它是正確的 –