最近在调试的一个项目中,发现每次连接或断开蓝牙,回到APP界面就会重新触发调用onCreate方法,最后查阅资料发现,蓝牙耳机、输入设备、软键盘这些的连接或弹出,都会让程序就重新触发onDestory() -> onCreate()。这种情况还会导致Fragment 出现重叠的现象,解决办法:
在AndroidManifest.xml 的activity节点,声明 configChanges 属性如下:
android:configChanges="orientation|keyboard|keyboardHidden|screenSize"