我遇到了深度链接和Android过滤器的问题。这是清单的意图部分。
<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="deeplink"
android:scheme="myapp"/>
</intent-filter>
当我尝试使用常规链接打开应用时,它适用于Android Chrome,但不适用于webview(始终相同的“err_unknown_url_scheme”)
<a href="myapp://deeplink/?action=showStore=001">Open in app</a>
我在意图上阅读Android documentation,并尝试了类似的内容,但我不确定它是否正确
<a href="intent://deeplink/#Intent;scheme=myapp;package=com.example.myapp;action=showStore=001;end">Open in app</a>
我只能访问HTML代码,而不是Android应用代码。我的目标是点击该链接并打开myapp。有关此主题的所有stackoverflow问题都与Android开发相关,或者其他有关互联网的帖子都有点过时了。
非常感谢!
答案 0 :(得分:-2)
please try below example which will open your application from webview.
public class HTMLActvity extends AppCompatActivity {
private WebView mWebView;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_htmlactvity);
mWebView = (WebView) findViewById(R.id.webView1);
//webView.loadUrl("http://www.google.com");
mWebView.getSettings().setJavaScriptEnabled(true);
String customHtml = "<a href=\"https://www.example.com\">Open in app</a>";
mWebView.loadData(customHtml, "text/html", "UTF-8");
}
}
deep link activity register for www.example.com
<activity android:name=".DeepLinkActivity">
<intent-filter android:autoVerify="true">
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data android:scheme="http" android:host="www.example.com" />
<data android:scheme="https" android:host="www.example.com" />
</intent-filter>
</activity>
请告诉我这些是否适合您。