这个BUG 广泛存在很多APP中
分享个人在解决此类BUG一些想法。
一 ,通过activity的启动时间来处理此问题
1. 在 AndroidManifest.xml 中设置 Target Activity 的属性,设置它的 launchMode
关于 launchMode 的参数一共有 4 个:
Android代码
android:launchMode=["standard"| "singleTop" | "singleTask" | "singleInstance"]
四种模式 大家可以百度
简单介绍就是 standard 标准模式 每次启动新的activity 也是默认模式。
singleTop 只有一个实例在堆栈顶部,意思就是有则复用,这个方法会调用activity的 onnewIntent(Intent intent);
singlTask 在堆栈中只有一个实例,有则出栈 销毁上面的activity。让自己处于顶部。
singInstance 启用一个新的栈结构,将Acitvity放置于这个新的栈结构中,并

本文探讨了在Android应用中常见的一个问题——连续点击按钮导致Activity启动两次的BUG。作者分享了解决该问题的两种策略:1. 通过调整AndroidManifest.xml中Activity的launchMode属性,如设置为singleTop,或在代码中使用Intent.FLAG_ACTIVITY_SINGLE_TOP;2. 通过限制点击事件的间隔时间,如果两次点击间隔小于500ms则忽略第二次点击。建议优先采用第一种方法。

729

被折叠的 条评论
为什么被折叠?



