gpt4 book ai didi

Android - 更好的网站启动器原生应用

转载 作者:行者123 更新时间:2023-11-30 04:21:15 25 4
gpt4 key购买 nike

我开发了一个非常简单的 Android 原生应用来启动我的 HTML5 网络应用。这是主类:

package com.plancake.android.app;

import android.app.Activity;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;

public class PlancakeActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// setContentView(R.layout.main);

Intent viewIntent = new Intent("android.intent.action.VIEW", Uri.parse("https://www.mywebsite.com"));
startActivity(viewIntent);
}
}

当我第一次从主屏幕上点击它的图标时,一切正常:Android 打开浏览器并加载我的网络应用程序。可爱!

当我离开网络浏览器并再次点击主屏幕或任务管理器中的启动器图标时,问题就出现了。在这种情况下,我只会看到黑屏。

我认为问题是 Android 调用了 onResume 方法(或其他方法),无论如何在后一种情况下不是 onCreate。

我可以看到两种解决方案:
1) 要么我在所有其他方法中复制 startActivity 调用,例如 onStart、onRestore - 但在那种情况下,我担心我的应用程序每次都会创建一个新的浏览器窗口,因此不必要地消耗大量内存
2)或者每次点击后,强制我的启动器应用程序离开内存,以便每次我点击时调用 onCreate 方法 - 但在这种情况下,即使我“杀死”我的应用程序,浏览器仍将打开,所以下次我点击我的启动器图标,无论如何都会创建一个新的浏览器窗口

我希望我已经足够清楚地描述了我的问题和我想到的解决方案 - 它们中的任何一个都是理想的。

拜托,我想知道您建议如何解决我的问题。

谢谢,

最佳答案

onResume() 方法总是在 onCreate() 之后调用。

如果您离开您的 Activity 并且它没有被系统杀死,那么它可能不会再次“创建”。它处于暂停状态。

您应该做的是将代码移动到 onResume() 以确保每次进入应用程序时都会调用创建 webview 的 Intent

关于Android - 更好的网站启动器原生应用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9227952/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com