Initiating a fragment containing the map layout view after the app launches, and rotating the device causes the app to crash for ArcGIS Runtime SDKs for Android.
上次发布: December 2, 2021ArcGIS Runtime SDK
漏洞 ID 编号
BUG-000141674
已提交
July 23, 2021
上次修改时间
June 5, 2024
适用范围
ArcGIS Runtime SDK
找到的版本
100.11
操作系统
Android
操作系统版本
11.x
状态
Will Not Be Addressed
开发团队已考虑过该问题或请求,并决定不会解决该问题。 问题的“其他信息”部分可能包含进一步说明。
附加信息
The Fragment is not handling the orientation changes appropriately. In the Fragment and Activity lifecycles, the dispose method on the MapView is called when the Activity's onDestroy call is made with an orientation change. This is followed by the onCreate method of Fragment which attempts to add a new Fragment with MapView causing the previous Fragment and MapView to be disposed, but the previous Fragment with MapView has not been instantiated yet. Every time the device is rotated, a new Fragment with a MapView is being created and added to the FragmentManager. The previously created fragments are still in the FragmentManager and attempt to instantiate.
Below is an example (one way) of handling orientation changes that ensures the MapView is resumed and the Fragment instance created from the savedInstanceState.
if (savedInstanceState == null) {
val fragment1 = Fragment1()
val button1 = findViewById