Для Android это можно сделать с помощью метода isDebuggerConnected. класса android.os.Debug.
Для iOS можно реализовать использование PT_DENY_ATTACH, что гарантирует невозможность подключения отладчика к процессу, называемому «ptrace».
Цель состоит в том, чтобы завершить работу приложения в случае его обнаружения, если к приложению подключен отладчик.
Что я могу сделать? Я попробовал, и я не совсем уверен, что это правильный способ сделать это:
По крайней мере, для Android, в файле MainActivity:
Код: Выделить всё
import io.flutter.embedding.android.FlutterActivity
import android.os.Debug
import android.util.Log
class MainActivity: FlutterActivity() {
override fun onResume() {
super.onResume()
Log.i("Kotlin lifeCycle", "onResume")
val isBeingDebugged: Boolean = android.os.Debug.isDebuggerConnected()
Log.i("Kotlin lifeCycle onResume", "isBeingDebugged: " + isBeingDebugged)
}
}
Я пробовал onCreate, onResume, методы жизненного цикла, но они не всегда выполняются.
p>
Есть ли способ использовать этот класс «android.os.Debug» и его методы внутри классов Dart, чтобы выполнить эту проверку более контролируемым образом?
Подробнее здесь: https://stackoverflow.com/questions/726 ... s-attached
Мобильная версия