Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/207.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Android-webview打开额外活动_Java_Android_Android Activity_Webview - Fatal编程技术网

Java Android-webview打开额外活动

Java Android-webview打开额外活动,java,android,android-activity,webview,Java,Android,Android Activity,Webview,我有一个android应用程序,其中主活动从外部库调用函数,然后在必要时打开webview 打开webview没有问题。我的问题从用户关闭webview开始。看起来webview(我想,我不确定)在调用外部库的原始应用程序上打开了一个额外的活动或其他内容 现在用户必须关闭两个窗口,才能继续使用原始应用程序 有没有人有这方面的经验,或者知道这里发生了什么 主要活动 外部库 我发现了问题所在。我希望webview加载url,但是浏览器被打开,留下了空的webview,从而“创建”了额外的acitvi

我有一个android应用程序,其中主活动从外部库调用函数,然后在必要时打开webview

打开webview没有问题。我的问题从用户关闭webview开始。看起来webview(我想,我不确定)在调用外部库的原始应用程序上打开了一个额外的活动或其他内容

现在用户必须关闭两个窗口,才能继续使用原始应用程序

有没有人有这方面的经验,或者知道这里发生了什么

主要活动

外部库


我发现了问题所在。我希望webview加载url,但是浏览器被打开,留下了空的webview,从而“创建”了额外的acitvity。现在webview加载url

可能是web视图被重定向到其他URL,而first back被web视图本身占用。我在集成一些支付库时遇到了这个问题……我不确定我是否理解您在“第一次返回”部分的意思。你是怎么解决的?
public class MainActivity extends Activity
{
    private final String appKey = "Android.Lib.Test";

    @Override
    public void onCreate(Bundle savedInstanceState)
    {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        externalLib.Initialize(this, getIntent(), appKey);
    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu)
    {
        getMenuInflater().inflate(R.menu.activity_main, menu);
        return true;
    }
}
public class externalLib
{
    private static final String TAG = "externalLib";
    private static int messageId;

    public static void Initialize(Context context, Intent intent, String newAppKey)
    {
        Log.d(TAG, "initializing");

        APPKEY = newAppKey;

        if(intent.hasExtra("url"))
        {
            if(intent.getExtras().getString("url") != null)
            {
                Intent webViewIntent = new Intent(context, externalLibWebView.class);
                webViewIntent.putExtra("url", intent.getExtras().getString("url"));
                context.startActivity(webViewIntent);
            }
        }

        if(intent.hasExtra("messageId"))
        {
            messageId = intent.getExtras().getInt("messageId");
            Log.e(TAG, "messageId: " + messageId);
        }
        else
        {
            messageId = 0;
        }
    }    
}