【问题标题】:Android: Add my WebView Activity to the Chooser Web BrowserAndroid:将我的 WebView Activity 添加到选择器 Web 浏览器
【发布时间】:2018-02-06 15:34:23
【问题描述】:

我有一个应用程序(1 个 XML 和 1 个活动):

  1. 用于填写 url 的编辑文本。
  2. 用于打开 Web 浏览器的按钮。 My home screen app

我的活动:

public class ActivityBai2 extends AppCompatActivity {

private Button btnMoTrinhDuyet;
private EditText editTextLink;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_bai2);

    btnMoTrinhDuyet = findViewById(R.id.buttonMoTrinhDuyet);
    editTextLink = findViewById(R.id.editLink);

    btnMoTrinhDuyet.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            String url = editTextLink.getText().toString();
            if(!url.equals("")) {
                if(!url.startsWith("http://") && !url.startsWith("https://")) {
                    url = "http://" + url;
                }
                Uri uri = Uri.parse(url);
                Intent intent = new Intent(Intent.ACTION_VIEW);
                intent.setData(uri);
                startActivity(intent);
            }
            else {
                Toast.makeText(ActivityBai2.this, "Vui lòng nhập địa chỉ!", Toast.LENGTH_SHORT).show();
            }
        }
    });

}

}

我创建了 1 个包含 WebView 的 XML(和 1 个用于显示 WebView 的活动)。

public class ActivityBai3 extends AppCompatActivity {

private WebView myWebView;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_bai3);

    Intent i = getIntent();
    Uri data = i.getData();
    URL url = null;

    myWebView = findViewById(R.id.webView);
    try {
        url = new URL(data.getScheme(), data.getHost(), data.getPath());
    } catch (MalformedURLException e) {
        e.printStackTrace();
    }
    myWebView.loadUrl(url.toString());

    myWebView.setWebViewClient(new WebViewClient(){
        @Override
        public boolean shouldOverrideUrlLoading(WebView view, String url) {
            view.loadUrl(url);
            return true;
        }
    });


}

}

如何在单击按钮时将此 web 视图添加到选择器 Web 浏览器窗口中。

这里是第一个 XML:

<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical">

    <TextView
        android:id="@+id/textView"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="Nhập đường link trang web"
        android:textAlignment="center"
        android:textSize="18sp" />

    <EditText
        android:id="@+id/editLink"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:ems="10"
        android:inputType="textPersonName"
        android:layout_marginTop="30dp"
        android:textAlignment="center" />

    <Button
        android:id="@+id/buttonMoTrinhDuyet"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center_horizontal"
        android:layout_marginTop="20dp"
        android:text="mở trình duyệt"
        android:textSize="18sp" />
</LinearLayout>

谢谢!

我将它添加到 AndroidManifest.xml 并且它可以工作。

<activity android:name=".ActivityBai2" android:label="home screen">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
    <activity android:name=".ActivityBai3" android:label="My Web Browser">
        <intent-filter tools:ignore="AppLinkUrlError">
            <action android:name="android.intent.action.VIEW"/>
            <data android:scheme="http"/>
            <category android:name="android.intent.category.DEFAULT"/>
        </intent-filter>
    </activity>
</application>

【问题讨论】:

    标签: android webview


    【解决方案1】:

    要允许其他应用访问您的 Activity,您必须将 Intent 过滤器添加到您的 Activity。

    Allowing Other Apps to Start Your Activity

    【讨论】:

    • 感谢关键字!
    猜你喜欢
    • 2019-04-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-05-29
    • 2019-02-25
    • 1970-01-01
    相关资源
    最近更新 更多