Open rothfa opened 2 years ago
Agent comment from yating.liao in Zendesk ticket #67594:
Does unrecognizable mean the app can't be registered successfully? Maybe you have checked whether the package name corresponding to APP_KEY is the same as applicationID? The first registration needs to be connected to the network and the two values are the same to pass.
In addition can not be recognized can also be because the remote control with a screen does not support the connection of cell phones to control the drone, only the software installed on the remote control.
For getting the video stream, you can use VideoStreamDecoding:DJI-Mobile-SDK-Tutorials/Android-VideoStreamDecodingSample: This sample project demonstrates how to use FFmpeg for video frame parsing and to use MediaCodec for hardware decoding on DJI Products. (github.com)
°°°
I tried it with the "VideoStreamDecoding:DJI-Mobile-SDK-Tutorials/Android-VideoStreamDecodingSample:". Furthermore the registration is succsesful with the created APP_KEY. I think thats not the problem. Android SDK 4.16.1 is the acutal version. The M2EA is supported? I read before that the control is not possibile with external device, therfore i tried the example you told me. I addition to that i also tried the FPVDemo, it doesn' work. Are there some settings i can try? Maybe you can tell me, how to connect correctly ? I connected it with wifi-direct, GoShare, and the same Wifi.
I get this information: // The product or the remote controller are not connected. showToast("Disconnected");
Specs:
Which DJI Product you are using? Mavic 2 Enterprise Advanced
Which Android Device and Android System version you are using? Galaxy Tab A(8.0, 2019) Modell: SM-T290
Which Android Studio version you are using? Bumblebee
07/14 18:16:52: Launching 'app' on samsung SM-A202F.
App restart successful without requiring a re-install.
$ adb shell am start -n "com.dji.videostreamdecodingsample/com.dji.videostreamdecodingsample.ConnectionActivity" -a android.intent.action.MAIN -c android.intent.category.LAUNCHER -D
Waiting for application to come online: com.dji.videostreamdecodingsample
Connected to process 23243 on device 'samsung-sm_a202f-RF8M534XDXW'.
Connecting to com.dji.videostreamdecodingsample
Connected to the target VM, address: 'localhost:49612', transport: 'socket'
Capturing and displaying logcat messages from application. This behavior can be disabled in the "Logcat output" section of the "Debugger" settings page.
E/Zygote: isWhitelistProcess - Process is Whitelisted
E/Zygote: accessInfo : 1
I/mdecodingsampl: Late-enabling -Xcheck:jni
I/mdecodingsampl: report jit thread pid = 23248
W/ActivityThread: Application com.dji.videostreamdecodingsample is waiting for the debugger on port 8100...
I/System.out: Sending WAIT chunk
I/System.out: Debugger has connected
I/System.out: waiting for debugger to settle...
I/System.out: waiting for debugger to settle...
I/System.out: waiting for debugger to settle...
I/System.out: waiting for debugger to settle...
I/System.out: waiting for debugger to settle...
I/chatty: uid=10182(com.dji.videostreamdecodingsample) identical 2 lines
I/System.out: waiting for debugger to settle...
I/System.out: waiting for debugger to settle...
I/chatty: uid=10182(com.dji.videostreamdecodingsample) identical 1 line
I/System.out: waiting for debugger to settle...
I/System.out: debugger has settled (1434)
I/mdecodingsampl: The ClassLoaderContext is a special shared library.
W/mdecodingsampl: Accessing hidden field Ldalvik/system/BaseDexClassLoader;->pathList:Ldalvik/system/DexPathList; (light greylist, reflection)
W/mdecodingsampl: Accessing hidden method Ldalvik/system/DexPathList;->makeInMemoryDexElements([Ljava/nio/ByteBuffer;Ljava/util/List;)[Ldalvik/system/DexPathList$Element; (light greylist, JNI)
I/mdecodingsampl: Background concurrent copying GC freed 4106(783KB) AllocSpace objects, 0(0B) LOS objects, 49% free, 8MB/17MB, paused 8.372ms total 45.502ms
W/mdecodingsampl: Accessing hidden field Ldalvik/system/DexPathList;->dexElements:[Ldalvik/system/DexPathList$Element; (light greylist, reflection)
I/DecorView: createDecorCaptionView >> DecorView@cd3c7d7[], isFloating: false, isApplication: true, hasWindowDecorCaption: false, hasWindowControllerCallback: true
W/mdecodingsampl: Accessing hidden method Landroid/app/ActivityThread;->currentActivityThread()Landroid/app/ActivityThread; (light greylist, reflection)
W/mdecodingsampl: Accessing hidden method Landroid/app/ActivityThread;->getApplication()Landroid/app/Application; (light greylist, reflection)
W/mdecodingsampl: Accessing hidden field Lsun/misc/Unsafe;->theUnsafe:Lsun/misc/Unsafe; (light greylist, reflection)
E/com.dji.videostreamdecodingsample.MainActivity: onResume
D/OpenGLRenderer: Skia GL Pipeline
D/EmergencyMode: [EmergencyManager] android createPackageContext successful
D/InputTransport: Input channel constructed: fd=76
D/ViewRootImpl@24631f9[ConnectionActivity]: setView = DecorView@cd3c7d7[ConnectionActivity] TM=true MM=false
I/Choreographer: Skipped 77 frames! The application may be doing too much work on its main thread.
E/DJISDKManager: Failed to load LDM Plus license file /storage/emulated/0/DJI/com.dji.videostreamdecodingsample.dlf (No such file or directory)
D/ViewRootImpl@24631f9[ConnectionActivity]: Relayout returned: old=[0,0][720,1560] new=[0,0][720,1560] result=0x7 surface={true 480367730688} changed=true
I/ConfigStore: android::hardware::configstore::V1_0::ISurfaceFlingerConfigs::hasWideColorDisplay retrieved: 0
I/ConfigStore: android::hardware::configstore::V1_0::ISurfaceFlingerConfigs::hasHDRDisplay retrieved: 0
I/OpenGLRenderer: Initialized EGL, version 1.4
D/OpenGLRenderer: Swap behavior 2
D/mali_winsys: EGLint new_window_surface(egl_winsys_display , void , EGLSurface, EGLConfig, egl_winsys_surface , EGLBoolean) returns 0x3000
D/OpenGLRenderer: eglCreateWindowSurface = 0x6fc6ef1a00, 0x6fd825e010
D/NetworkSecurityConfig: No Network Security Config specified, using platform default
W/mdecodingsampl: Accessing hidden method Ldalvik/system/CloseGuard;->get()Ldalvik/system/CloseGuard; (light greylist, reflection)
W/mdecodingsampl: Accessing hidden method Ldalvik/system/CloseGuard;->open(Ljava/lang/String;)V (light greylist, reflection)
W/mdecodingsampl: Accessing hidden method Ldalvik/system/CloseGuard;->warnIfOpen()V (light greylist, reflection)
D/InputTransport: Input channel constructed: fd=89
D/ViewRootImpl@5d56bb[Toast]: setView = android.widget.LinearLayout{8a72731 V.E...... ......I. 0,0-0,0} TM=true MM=false
V/Toast: Text: Eisc in android.widget.Toast$TN@e02ce16
D/ViewRootImpl@24631f9[ConnectionActivity]: MSG_WINDOW_FOCUS_CHANGED 1 1
D/InputMethodManager: prepareNavigationBarInfo() DecorView@cd3c7d7[ConnectionActivity]
D/InputMethodManager: getNavigationBarColor() -855310
D/InputMethodManager: prepareNavigationBarInfo() DecorView@cd3c7d7[ConnectionActivity]
D/InputMethodManager: getNavigationBarColor() -855310
V/InputMethodManager: Starting input: tba=com.dji.videostreamdecodingsample ic=null mNaviBarColor -855310 mIsGetNaviBarColorSuccess true , NavVisible : true , NavTrans : false
D/InputMethodManager: startInputInner - Id : 0
I/InputMethodManager: startInputInner - mService.startInputOrWindowGainedFocus
D/InputTransport: Input channel constructed: fd=90
D/ViewRootImpl@5d56bb[Toast]: Relayout returned: old=[0,66][720,1464] new=[225,1248][495,1336] result=0x7 surface={true 480061018112} changed=true
D/mali_winsys: EGLint new_window_surface(egl_winsys_display , void , EGLSurface, EGLConfig, egl_winsys_surface , EGLBoolean) returns 0x3000
D/OpenGLRenderer: eglCreateWindowSurface = 0x6fc6ef1500, 0x6fc5ddd010
D/InputMethodManager: prepareNavigationBarInfo() DecorView@cd3c7d7[ConnectionActivity]
D/InputMethodManager: getNavigationBarColor() -855310
V/InputMethodManager: Starting input: tba=com.dji.videostreamdecodingsample ic=null mNaviBarColor -855310 mIsGetNaviBarColorSuccess true , NavVisible : true , NavTrans : false
D/InputMethodManager: startInputInner - Id : 0
D/ViewRootImpl@24631f9[ConnectionActivity]: MSG_RESIZED_REPORT: frame=[0,0][720,1560] ci=[0,66][0,96] vi=[0,66][0,96] or=1
D/ViewRootImpl@5d56bb[Toast]: MSG_RESIZED_REPORT: frame=[225,1248][495,1336] ci=[0,0][0,0] vi=[0,0][0,0] or=1
W/libEGL: EGLNativeWindowType 0x6fc5ddd010 disconnect failed
D/OpenGLRenderer: eglDestroySurface = 0x6fc6ef1500, 0x6fc5ddd000
D/ViewRootImpl@5d56bb[Toast]: dispatchDetachedFromWindow
D/InputTransport: Input channel destroyed: fd=89
I/onLoad: loaded onLoad.cpp :JNI_OnLoad() go to end
W/System.err: java.lang.NoSuchMethodException: dji.midware.data.model.P3.DataGetProductInfoFromPayload.getInstance []
W/System.err: at java.lang.Class.getMethod(Class.java:2069)
W/System.err: at java.lang.Class.getMethod(Class.java:1690)
W/System.err: at dji.midware.data.config.P3.nhf.getDataBaseInstRefl(Unknown Source:14)
W/System.err: at dji.midware.data.config.P3.CmdIdPayloadSDK$CmdIdType.
Agent comment from yating.liao in Zendesk ticket #67594:
Maybe you can tell me, how to connect correctly ? I connected it with wifi-direct, GoShare, and the same Wifi.
-->The smart controller can have apps installed in it, so you can use DEMO to control the drone directly from the remote control after it is connected to the drone.
I see that the log file you gave is to install the software on samsung SM-A202F, however, M2EA's smart controller does not support connecting the phone to control the drone, so the interaction with the remote control is not possible through data cable, Bluetooth, WiFi, etc.
°°°
Thanks for your response. Are there any other posibilities to get the livestream of the M2EA, only to integrate in an custom app on another device?
Agent comment from yating.liao in Zendesk ticket #67594:
The only way to get M2EA's video streams directly through the MSDK is to install the software on the phone with the on-screen remote control and without the on-screen remote control.
The indirect way is through live streaming, where the video stream is pushed to the server and then forwarded to your phone.
°°°
Dear Supporters,
i am currently working on a custom app that will accept the stream from the drone. I tried it with the sdk 4.16.1 and it cannot recognize the Mavic 2 Enterprise. Are there any possibilities to get the livestream in a custom app? I have to train a model with the video stream of the M2EA. There are no other functions i need. I tried so many things, for example fpvDemo or VideoStreamDecoding, both also do not recognize the M2EA. The possibility to install the app on the smart controller directly is not desired.
It would be a pleasure hearing from you.
Regards Fabian