java - 如何在弹出窗口/窗口中打开另一个应用程序?

标签 java android

我正在使用以下代码从我的应用程序打开另一个应用程序:

Uri uri = Uri.parse("http://url_to_app's_website");
Intent in = new Intent(Intent.ACTION_VIEW, uri);
in.setPackage("com.package.address");

try {
    startActivity(in);

} catch (ActivityNotFoundException e) {

    startActivity(new Intent(Intent.ACTION_VIEW,
    Uri.parse("http://url_to_app's_website")));
}

这是有效的,但它会全屏打开应用程序。我想在窗口/弹出窗口中打开它。我该怎么做?

最佳答案

您似乎只是打开一个网络应用程序。如果是这种情况,您应该执行以下操作:

  • 使用 WebView 创建对话框
  • 显示对话框
  • 在对话框的 webView 中加载 URL

引用this SO Question它提供了一种方法来做到这一点。

下面的代码可以满足您的需求: (借用上述问题的答案)

对话框布局:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
>
    <WebView
        android:id="@+id/webview"
        android:scrollbars="vertical"
        android:scrollbarAlwaysDrawVerticalTrack="true"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerInParent="true" />
</LinearLayout>

在对话框的 webView 中加载您的网址:

final TextView seeMonthlyBill = (TextView) parentLayout
            .findViewById(R.id.my_ac_my_service_timewarnercable_link);
    seeMonthlyBill.setOnClickListener(new OnClickListener() {
        @Override
        public void onClick(View v) {
            Dialog dialog = new Dialog(getActivity());
            dialog.setContentView(R.layout.web_dialog)
            WebView wb = (WebView) dialog.findViewById(R.id.webview);
            wb.getSettings().setJavaScriptEnabled(true);
            wb.loadUrl("http://www.google.com");
            wb.setWebViewClient(new HelloWebViewClient());
            dialog.setCancelable(true);
            dialog.setTitle("WebView");
            dialog.show();
        }
    });

关于java - 如何在弹出窗口/窗口中打开另一个应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38285079/

相关文章:

java - 棋局设计与单例模式

java - 将最近的应用程序加载到 GridView 中

android - 如何在 native react 中在 ToolbarAndroid 上设置自定义字体

java - 使用应用程序 :srcCompat 自定义 ImageView 背景绘制

android - 仅解析 Json 数组中的多个 Json 对象

android - 如何在 Android 中单击按钮时停止 Runnable?

java - 可以逆转 I18N 翻译吗?

java - 状态更新不起作用

java - 不断增加的 CPU 负载从何而来?

android - 通过窗口管理器注入(inject)运动事件?