gpt4 book ai didi

android - 检查intent是调用还是默认启动Activity

转载 作者:太空宇宙 更新时间:2023-11-03 11:57:14 27 4
gpt4 key购买 nike

如何检查 Activity 是否默认启动或 Activity 的方法是从其他 Activity 中的 Intent 调用的?我认为目前我的代码非常糟糕,因为我通过 Try/Catch 来处理它它工作正常,但我想要更好的代码

public class MyScan extends Activity {
public final static String EXTRA_MESSAGE = ".MESSAGE";

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
checkIntent();
}

public void checkIntent() {
try {
Intent i = getIntent();
String method_name = i.getStringExtra("method_name");// is firing an error if there is no intent call
if (method_name.equals("scanBarcode")) {
scanBarcode2();// That starts my method
}
} catch (Exception e) {
setContentView(R.layout.activity_my_scan); // that shows just my Content
}

}
....

谢谢 Alex Terreaux 的提示

我是这样修改代码的

public void checkIntent() {
Intent i = getIntent();
if (i != null) {
String method_name = i.getStringExtra("method_name");
if (method_name != null && method_name.equals("scanBarcode")) {
scanBarcode2();
} else {
setContentView(R.layout.activity_my_scan);
}
}
}

那行得通。

最佳答案

尝试检查 getIntent() 的结果是否为空。

关于android - 检查intent是调用还是默认启动Activity,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25727947/

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