当我想在没有处理程序的应用程序中设置strictMode时 - 在活动中没有效果.
这段代码有效:
public class MyApp extends Appliction {
@Override
public void onCreate() {
super.onCreate();
new android.os.Handler().post(new Runnable() {
@Override
public void run() {
setup_strict_mode();
}
});
}
}
Run Code Online (Sandbox Code Playgroud)
此代码不起作用(活动中未启用严格模式)
public class MyApp extends Appliction {
@Override
public void onCreate() {
super.onCreate();
setup_strict_mode();
}
}
Run Code Online (Sandbox Code Playgroud)
这是setup_strict_mode:
StrictMode.setThreadPolicy(new StrictMode.ThreadPolicy.Builder()
.detectAll()
.penaltyDeath().build());
StrictMode.setVmPolicy(new StrictMode.VmPolicy.Builder()
.detectAll()
.penaltyLog().build());
Run Code Online (Sandbox Code Playgroud)
虽然onCreate在UI thead中运行,但为什么会这样呢?
我可以很容易地检测到什么时候Fragments
连接到Activity
viaActivity.onAttachFragment()
但我如何才能发现Activity
有些Fragment
与活动分离?没有Activity.onDetachFragment()
是否使用subcclasing Fragment
并编写一些代码来通知Activity
该状态是唯一的解决方案?
android ×2