当用户点击浏览器中的链接时,我一直在尝试打开我的应用。我试图用scheme来打开我的应用程序。我在Manifest
中所做的更改如下所示。
<activity
android:name="com.test.testapp.TestAppActivity"
android:label="@string/app_name"
android:exported="true" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
<intent-filter>
<data android:scheme="testscheme" />
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.BROWSABLE" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</activity>
我还添加了互联网许可。但是,打开像“testscheme:// testID = 1 ”这样的链接不会打开我的应用。我在这里错过了什么吗?我无法在任何地方找到解决方案。请帮忙。
答案 0 :(得分:0)
我试图重现你的问题但我做不到。这就是我所拥有的:
的 A 即可。布局非常简单的活动(仅TextView
)
package com.test.testapp;
import android.app.Activity;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.widget.TextView;
import com.example.adip.R;
public class TestAppActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.web_layout);
TextView txtLabel = (TextView) findViewById(R.id.txtLabel);
Intent startIntent = getIntent();
Uri data = startIntent.getData();
if (data == null) {
txtLabel.setText("No data provided!");
} else {
txtLabel.setText(data.toString());
}
}
}
B Manifest包含您拥有的内容:
<activity
android:name="com.test.testapp.TestAppActivity"
android:exported="true"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
<intent-filter>
<data android:scheme="testscheme" />
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.BROWSABLE" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</activity>
C。我在本地sample.html
网络服务器上发布的Tomcat
文件。
<html>
<body>
<a href="testscheme://testID=1">Test scheme</a> <br/>
<a href="http://www.stackoverflow.com">Working link to SO</a>
</body>
</html>
从任何浏览器打开此文件时,这两个链接的工作方式为:
TestAppActivity
中显示的TextView
:testscheme://testID=1
- 正是我在html中的内容你必须做错事,这是小的,你看不到它:)。也许你输错了html文件中的链接......
无论如何,要比较我提供的内容和你拥有的内容。