Java Android DJI Mobile SDK占用了大量CPU
我正在使用DJI OSMO+万向节开发Android摄像头应用程序,我注意到使用Android PlayStore的官方DJI Go应用程序(CPU使用率约为10%至15%)与DJI FPV演示应用程序(CPU使用率约为40%至50%)时,CPU使用率存在巨大差异。以下是有关我的开发环境的一些详细信息: 您正在使用哪个DJI产品? -迪吉奥斯莫+ 您正在使用哪个DJI SDK? -DJI Android移动SDK V4.4.1 您使用的是哪种Android设备和Android系统版本? -设备:像素XL;安卓系统:7.1.2(安卓N) 您正在使用哪个Android Studio版本? -安卓工作室:3.0.1;JRE:1.8 对问题的简短描述包括调试日志或屏幕截图。 -我注意到,当使用官方的DJI Go应用程序(CPU使用率约为10%至15%)与Android PlayStore和DJI FPV演示应用程序(CPU使用率约为40%至50%)时,CPU使用率存在巨大差异。我使用“adbshelltop”命令来分析CPU的使用情况Java Android DJI Mobile SDK占用了大量CPU,java,android,dji-sdk,Java,Android,Dji Sdk,我正在使用DJI OSMO+万向节开发Android摄像头应用程序,我注意到使用Android PlayStore的官方DJI Go应用程序(CPU使用率约为10%至15%)与DJI FPV演示应用程序(CPU使用率约为40%至50%)时,CPU使用率存在巨大差异。以下是有关我的开发环境的一些详细信息: 您正在使用哪个DJI产品? -迪吉奥斯莫+ 您正在使用哪个DJI SDK? -DJI Android移动SDK V4.4.1 您使用的是哪种Android设备和Android系统版本? -设备:
DJI FPV Demo:
6044 u0_a125 16 -4 51% S 151 1597524K 154936K ta com.dji.FPVDemo
6044 u0_a125 16 -4 40% S 154 1601524K 156208K ta com.dji.FPVDemo
6044 u0_a125 16 -4 43% S 157 1604996K 155932K ta com.dji.FPVDemo
6044 u0_a125 16 -4 43% S 159 1607068K 155640K ta com.dji.FPVDemo
6044 u0_a125 16 -4 49% R 163 1611676K 156136K ta com.dji.FPVDemo
6044 u0_a125 16 -4 44% S 166 1614516K 155000K ta com.dji.FPVDemo
6044 u0_a125 16 -4 43% S 167 1616440K 156840K ta com.dji.FPVDemo
6044 u0_a125 16 -4 40% S 170 1619948K 156568K ta com.dji.FPVDemo
6044 u0_a125 16 -4 43% S 173 1623292K 156680K ta com.dji.FPVDemo
DJI Go:
4009 u0_a158 16 -4 13% S 139 2261940K 223852K ta dji.pilot
4009 u0_a158 16 -4 13% S 136 2258952K 226304K ta dji.pilot
4009 u0_a158 16 -4 14% S 131 2253212K 227052K ta dji.pilot
4009 u0_a158 16 -4 14% S 130 2252356K 226992K ta dji.pilot
4009 u0_a158 16 -4 13% S 131 2253640K 223644K ta dji.pilot
4009 u0_a158 16 -4 14% S 128 2250664K 225868K ta dji.pilot
4009 u0_a158 16 -4 13% S 129 2251020K 226740K ta dji.pilot
请注意,即使在连接活动中(即在主活动中甚至开始视频解码之前),CPU使用率仍保持约30%。看起来我的设备上有很多垃圾毫无理由地占用了CPU
问题:
-有人知道CPU使用率如此巨大差异背后的原因吗?
-请告知我如何在使用DJI FPV演示应用程序时减少CPU使用;请共享代码片段或使用示例代码更新Github
谢谢 DJI用于官方DJI应用程序(包括DJI GO)的代码库不同于为外部开发人员发布的移动sdk。至于为什么使用移动sdk的定制应用程序使用更多cpu的更多细节,这将由DJI提供响应 开发者网站上公开提供的SDK为1级。可能是仅在特定条件下发布的2级SDK具有解决方案
作为记录,DJI iOS SDK也有同样的性能。这是一个巨大的问题,并且使得这个SDK实际上不适用于希望自己完成任何额外CPU工作的实际应用程序。