Java 在不同的Web视图上多次登录?(安卓)

Java 在不同的Web视图上多次登录?(安卓),java,android,cookies,webview,tabs,Java,Android,Cookies,Webview,Tabs,我对Android开发相当陌生,我有一个关于WebView如何处理数据(Java)的问题 我假设这属于“饼干”类别。但我在应用程序的不同选项卡上有两个不同的Web视图。我希望一个webView(称之为webView1)登录到一个网站的一个帐户,而另一个(webView2)登录到同一网站的另一个帐户。例如,我想同时登录两个Web视图中的两个单独的Gmail帐户 我遇到的问题是,一旦我在webView1上登录到一个帐户,webView2也会这样做,并将我登录到该帐户。当我登录到webView2时,同

我对Android开发相当陌生,我有一个关于WebView如何处理数据(Java)的问题

我假设这属于“饼干”类别。但我在应用程序的不同选项卡上有两个不同的Web视图。我希望一个webView(称之为
webView1
)登录到一个网站的一个帐户,而另一个(
webView2
)登录到同一网站的另一个帐户。例如,我想同时登录两个Web视图中的两个单独的Gmail帐户

我遇到的问题是,一旦我在
webView1
上登录到一个帐户,
webView2
也会这样做,并将我登录到该帐户。当我登录到
webView2
时,同样的问题也会发生,因为
webView1
也会自然而然地登录到该帐户

有没有办法绕过这个问题?我希望我的两个网络视图能够完全独立地工作,这就是问题的症结所在


谢谢

我完全可以回答你的问题。我主要是一名iOS开发人员,我正在创建一个Android应用程序,其效果与webView cookies不共享完全相反。我在选项卡中创建了我的网络视图,以模拟我在iOS中使用的行为,但我的网络视图完全独立于其他视图。我希望他们共享相同的登录信息,但目前我必须单独登录每个选项卡,因为他们玩得不好

无论哪种方式,我的问题肯定可以帮助你,我希望你与我分享你的信息,以创建我正在搜索的cookie共享效果

以下是我的main.xml布局:

<?xml version="1.0" encoding="utf-8"?>
<TabHost xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@android:id/tabhost"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<LinearLayout
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent">
    <TabWidget
        android:id="@android:id/tabs"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content" />
    <FrameLayout
        android:id="@android:id/tabcontent"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent">

        <WebView
            android:id="@+id/web_engine"
            android:layout_width="fill_parent"
            android:layout_height="match_parent"
            android:layout_gravity="bottom"
            android:layout_marginTop="-45dp" />
        <WebView
            android:id="@+id/messages"
            android:layout_width="fill_parent"
            android:layout_height="match_parent"
            android:layout_gravity="bottom"
            android:layout_marginTop="-45dp" />
        <WebView
            android:id="@+id/myprofile"
            android:layout_width="fill_parent"
            android:layout_height="match_parent"
            android:layout_gravity="bottom"
            android:layout_marginTop="-45dp" />
        <WebView
            android:id="@+id/rncorner"
            android:layout_width="fill_parent"
            android:layout_height="match_parent"
            android:layout_gravity="bottom"
            android:layout_marginTop="-45dp" />
    </FrameLayout>
</LinearLayout>
</TabHost>

在这里找到解决方案了吗?@user2121927你有没有找到办法?
package com.example.tabs;


import android.app.TabActivity;
import android.os.Bundle;
import android.webkit.WebView;
import android.webkit.WebViewClient;
import android.widget.TabHost;

public class TabsActivity extends TabActivity {
WebView webView;

final String DEFAULT_URL = "http://example.com";


/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);

setContentView(R.layout.main);

    TabHost mTabHost = getTabHost();

    mTabHost.addTab(mTabHost.newTabSpec("Home").setIndicator("Home",getResources().getDrawable(R.drawable.home)).setContent(R.id.web_engine));
    mTabHost.addTab(mTabHost.newTabSpec("Messages").setIndicator("Messages",getResources().getDrawable(R.drawable.messages)).setContent(R.id.messages));
    mTabHost.addTab(mTabHost.newTabSpec("My Profile").setIndicator("My Profile", getResources().getDrawable(R.drawable.myprofile)).setContent(R.id.myprofile));
    mTabHost.addTab(mTabHost.newTabSpec("Map").setIndicator("Map", getResources().getDrawable(R.drawable.rncorner)).setContent(R.id.rncorner));

    mTabHost.setCurrentTab(0);

    //home
    webView = (WebView)findViewById(R.id.web_engine);

    webView.setWebViewClient(new MyWebViewClient());

    webView.loadUrl(DEFAULT_URL);

    //messages
    webView = (WebView)findViewById(R.id.messages);

    webView.setWebViewClient(new MyWebViewClient());

    webView.loadUrl("http://example.com/index.php2");

    //my profile
    webView = (WebView)findViewById(R.id.myprofile);

    webView.setWebViewClient(new MyWebViewClient());

    webView.loadUrl("http://example.com/index.php3");


    //rncorner
    webView = (WebView)findViewById(R.id.rncorner);

    webView.setWebViewClient(new MyWebViewClient());

    webView.loadUrl("http://example.com/index.php4");

}



public class MyWebViewClient extends WebViewClient {



    @Override
    public boolean shouldOverrideUrlLoading(WebView view, String url) {

        // TODO Auto-generated method stub

        view.loadUrl(url);

        return true;

    } 


}
}