Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/go/7.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 应用程序没有响应,为什么';弹出式显示?_Android_Performance Testing_Android Anr Dialog - Fatal编程技术网

Android 应用程序没有响应,为什么';弹出式显示?

Android 应用程序没有响应,为什么';弹出式显示?,android,performance-testing,android-anr-dialog,Android,Performance Testing,Android Anr Dialog,我想测试没有响应的应用程序。下面代码中的按钮运行无限循环,但不会显示ANR弹出窗口 override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) Toast.makeText(this@MainActivity,"ahmet vefa saruhan",Toast.LENGTH_SH

我想测试没有响应的应用程序。下面代码中的按钮运行无限循环,但不会显示ANR弹出窗口

override fun onCreate(savedInstanceState: Bundle?) {
    super.onCreate(savedInstanceState)
    setContentView(R.layout.activity_main)
    Toast.makeText(this@MainActivity,"ahmet vefa saruhan",Toast.LENGTH_SHORT).show()
}

fun buttonClickec2( v : View) { //after button click
    while(true) {
        //Nothing to do, why doesn't ANR show?
    }
}

请仔细阅读问题。问题是有关ANR弹出窗口的。

使用show方法显示toast

Toast.makeText(this@MainActivity,"ahmet vefa saruhan",Toast.LENGTH_SHORT).show()

您试图通过引起无限循环来故意显示ANR弹出对话框

fun buttonClickec2( v : View) { //after button click
    while(true) {
        //Nothing to do, why doesn't ANR show?
    }
}
根据Android文档:

Android为需要太长时间处理的应用程序显示ANR对话框 仅当设备的“显示所有ANR”已启用时,才广播消息 开发者选项。因此,背景ANR对话框不可用 始终向用户显示,但应用程序可能仍在运行 性能问题


您应该阅读文档,搜索StackOverflow问题,然后打开一个新的:)。你已经找到了答案。医生:嗯,你的文字不是英文的,所以我不知道什么是ahmet vefa sarauhan。如果你想阻止UI线程,那么你应该阅读文档,搜索所以,仍然适用于我告诉你的。不要在没有自己搜索的情况下提问。你正在尝试更改ANR消息吗?不,我只想看到ANR弹出窗口。主线程被阻塞但未显示popup@ahmetvefa53为什么要弹出窗口,只需修复根本原因,这样主线程就不会阻塞。还值得注意的是,只有在设备的开发者选项中启用了Show all ANR时,Android才会为需要很长时间来处理广播消息的应用程序显示ANR对话框。因此,后台ANR对话框并不总是向用户显示,但应用程序可能仍然存在性能问题。谢谢您,先生。回答令人满意,但我不知道此信息。@ahmetvefa53不客气,很高兴它为您澄清了一点。