dji-sdk / Mobile-SDK-Android

DJI Mobile SDK for Android: http://developer.dji.com/mobile-sdk/
Other
994 stars 580 forks source link

No FlySafeNotification.Callback and FlyZoneState.Callback when aircraft inside authorized zone #1074

Closed pavel-vhive closed 2 years ago

pavel-vhive commented 2 years ago

FlySafeNotification.Callback and FlyZoneState.Callback of FlyZoneManager do not fire when aircraft inside authorized zone. SDK version 4.15.1. If aircraft inside enhanced warning zone those callbacks work, once aircraft inside authorized zone, callbacks stop. In iOS MSDK v.4.15.2 all works as expected.

   @Override
    public void onProductConnect(BaseProduct product) {

        DJISDKManager.getInstance().getFlyZoneManager()
                .setFlyZoneStateCallback(flyZoneStateCallback);
        DJISDKManager.getInstance().getFlyZoneManager()
                .setFlySafeNotificationCallback(flySafeNotificationCallback);
    }
dji-dev commented 2 years ago

Agent comment from DJI SDK in Zendesk ticket #57912:

尊敬的开发者,感谢您联系DJI 大疆创新 由于github不是我们主要的咨询渠道,您的问题可能跟进不及时。我们建议您通过填写表单( https://djisdksupport.zendesk.com/hc/zh-cn/requests/new )向我们反馈问题。或者您也可以在论坛发帖,与其它开发者交流。论坛链接:https://djisdksupport.zendesk.com/hc/zh-cn/community/topics

Dear developer, thank you for contacting DJI. Since github is not our main consultation channel, your questions may not be followed up in time. We recommend that you fill in the form (https://djisdksupport.zendesk.com/hc/en-us/requests/new) to report problems to us. Or you can post in the forum to communicate with other developers. Forum link: https://djisdksupport.zendesk.com/hc/zh-cn/community/topics

°°°

DJI-William commented 2 years ago

What is your testing zone co-ordinates, we will mock and try.

pavel-vhive commented 2 years ago

Hi, thanks for support! My location is Lat:32.828681 Lng:35.070195 I try without simulator, this location inside authorization fly zone, but I don't receive FlySafeNotification.Callback and FlyZoneState.Callback and when I try to upload mission to my drone it fails with 'The aircraft is in the no fly zone' error

pavel-vhive commented 2 years ago

When I use simulator to mock this location I start to receive callbacks but with wrong zone: FlyZoneNotification with TAKE_OFF_IN_ENHANCED_WARNING_ZONE and FlyZoneState with IN_ENHANCE_WARNING_ZONE, but this location belongs to authorization zone. But the problem is in real scenario when no callbacks received at all when drone inside authorization zone.

DJI-William commented 2 years ago

The uoload mission returns you in a no fly zone is correct, it is just the wrong explaination of the message. When I mock the GPS co-ordinates, it gives me IN_ENHANCE_WARNING_ZONE as well and I have checked in DJI GO 4 app the aircraft is in a authorization zone. I will raise an issue soon.

pavel-vhive commented 2 years ago

Hi William Wong, Thanks for the support! I glad you reproduced the issue with mock location on simulator, but what is more important that no callbacks received at all when the drone without simulator inside authorization zone and remote controller shows IN NFZ, please make sure your dev team check it. Thank you!

DJI-William commented 2 years ago

I will add this in the comment, but I am afraid it is hard to test since this location is in Israel. We will look at the callback internal logic.

DJI-William commented 2 years ago

Since our next version 4.16 is about to release this week, this issue is not blocking the very crucial of flight functionality, we may look at this issue after the 4.16 is released and hope we can fix it in 4.16.1 version. So the solve cycle may be a little bit long.

pavel-vhive commented 2 years ago

Hi William Wong, Thanks for the support! I think the issue is not related to the particular location because we tested it in multiple authorization zones in Israel. More over in iOS MSDK v4.15.2 it works as expected. Thank you!

DJI-William commented 2 years ago

Issue fixed, 4.16.2 version is about to released in the end of June.