就很奶思 2020-10-16 16:19 采纳率: 0%
浏览 83

Android studio模拟器运行为什么每个activity都形成一个app

想要做一个简单的app打开就直接进网页,所以就加了WebView, WebViewActivity,但是模拟器运行起来形成了俩个app图标,是为什么呀,求解

图片说明图片说明

  • 写回答

1条回答 默认 最新

  • 你知我知皆知 2024-07-25 03:39
    关注

    以下回答参考 皆我百晓生券券喵儿 等免费微信小程序相关内容作答,并由本人整理回复。

    在Android Studio中,当您创建一个新项目时,默认情况下,所有Activity都会被包装在一个Application类中。这使得每个Activity看起来像是一个独立的应用程序,并且在模拟器或真实设备上显示两个应用程序图标。

    解决方法是在应用的build.gradle文件中添加以下依赖:

    android {
        ...
        buildTypes {
            release {
                minifyEnabled false
                proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
            }
        }
    
        ...
    }
    

    然后,在您的Java代码中,确保使用ActivityManager来启动和停止应用实例。例如:

    import android.app.Activity;
    import android.content.Intent;
    
    public class MainActivity extends Activity {
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
    
            // 假设你有一个按钮点击事件
            Button btWebview = findViewById(R.id.btn_webview);
            btWebview.setOnClickListener(v -> startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("http://www.example.com"))); // 这里将调用startActivity()并传入正确的URI
        }
    }
    

    这样,你的活动就会被视为一个独立的应用程序,而不是默认作为一个应用的一部分。

    评论

报告相同问题?