Android - webview打开额外的活动

时间:2012-11-16 10:19:20

标签: java android android-activity webview

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

打开网页浏览没问题。当人/用户关闭webview时,我的问题就出现了。似乎webview(我认为,我不确定)已经在称为外部库的原始应用程序之上开了一个额外的活动。

现在,用户必须先关闭2个窗口,然后才能继续使用原始应用。

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

MainActivity

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;
        }
    }    
}

1 个答案:

答案 0 :(得分:0)

我发现了问题所在。我希望webview加载url,但是打开浏览器会让webview变空,从而“创建”额外的活动。现在webview加载了url。