# DJI Mobile SDK V5 5.0.0_beta2 to 5.0.0_beta3 Differences

## API changes

5.0.0_beta2 Parent and Name | 5.0.0_beta2 Code | 5.0.0_beta3 Parent and Name | 5.0.0_beta3 Code | Parent | Name | Type | Param | Return
dji.v5.common.video.stream.PhysicalDeviceType | enum PhysicalDeviceType | dji.v5.common.video.stream.PhysicalDeviceType | class PhysicalDeviceType |  |  | X |  |
dji.v5.manager.interfaces.ISDKManager.init | void init(Context context, SDKManagerCallback callback) | dji.v5.manager.interfaces.ISDKManager.init | void init(Context context, @NonNull SDKManagerCallback callback) |  |  |  | X |

## APIs removed from 5.0.0_beta2

Parent and Name | Code
dji.v5.manager.interfaces.INetworkRTKManager.setNetworkRTKCoordinateSystem | void setNetworkRTKCoordinateSystem(CoordinateSystem coordinateSystem, @NonNull final CommonCallbacks.CompletionCallback callback)
dji.v5.manager.interfaces.IRTKStationManager.resetRTKStationReferencingPosition | void resetRTKStationReferencingPosition(@NonNull CommonCallbacks.CompletionCallback callback)
dji.v5.common.video.stream.PhysicalDeviceType.M30T_CAMERA | M30T_CAMERA(0,53)
dji.v5.common.video.stream.PhysicalDeviceType.M30_CAMERA | M30_CAMERA(0,52)
dji.v5.common.video.stream.PhysicalDeviceType.FPV | FPV(0, 39)
dji.v5.common.video.stream.PhysicalDeviceType.ZENMUSE_H20 | ZENMUSE_H20(0, 42)
dji.v5.common.video.stream.PhysicalDeviceType.ZENMUSE_H20T | ZENMUSE_H20T(0, 43)
dji.sdk.keyvalue.key.CameraKey.KeyCameraStorageInfos | static final DJIKeyInfo<CameraStorageInfos> KeyCameraStorageInfos = new KeyCameraStorageInfo() .canGet(true).canSet(false).canListen(true).canPerformAction(false).setIsEvent(false)

## APIs added to 5.0.0_beta3

Parent and Name | Code
dji.v5.manager.interfaces.IMediaDataCenter.getMediaManager | IMediaManager getMediaManager()
dji.v5.manager.interfaces.IMediaManager | interface IMediaManager
dji.v5.manager.datacenter.media.MediaFile.getThumbNail | Bitmap getThumbNail()
dji.v5.manager.datacenter.media.MediaFile.pullOriginalMediaFileFromCamera | void pullOriginalMediaFileFromCamera(long offset, @NonNull MediaFileDownloadListener callback)
dji.v5.manager.datacenter.media.MediaFile.pullPreviewFromCamera | void pullPreviewFromCamera(@NonNull CommonCallbacks.CompletionCallbackWithParam<Bitmap> callback)
dji.v5.manager.datacenter.media.MediaFile.pullThumbnailFromCamera | void pullThumbnailFromCamera(CommonCallbacks.CompletionCallbackWithParam<Bitmap> callback)
dji.v5.manager.datacenter.media.MediaFile.stopPullOriginalMediaFileFromCamera | void stopPullOriginalMediaFileFromCamera(CommonCallbacks.CompletionCallback callback)
dji.v5.manager.datacenter.media.MediaFile.stopPullPreviewFromCamera | void stopPullPreviewFromCamera(@NonNull CommonCallbacks.CompletionCallback callback)
dji.v5.manager.datacenter.media.MediaFile | class MediaFile implements Serializable
dji.v5.manager.datacenter.media.MediaFileFilter | enum MediaFileFilter
dji.v5.manager.datacenter.media.MediaFileFilter.ALL | ALL(2)
dji.v5.manager.datacenter.media.MediaFileFilter.PHOTO | PHOTO(1)
dji.v5.manager.datacenter.media.MediaFileFilter.VIDEO | VIDEO(0)
dji.v5.manager.datacenter.media.MediaFileListData | class MediaFileListData
dji.v5.manager.datacenter.media.MediaFileListDataSource | class MediaFileListDataSource
dji.v5.manager.datacenter.media.MediaFileListDataSource.Builder | static class Builder
dji.v5.manager.datacenter.media.MediaFileListDataSource.getComponentIndexType | ComponentIndexType getComponentIndexType()
dji.v5.manager.datacenter.media.MediaFileListDataSource.getStorageLocation | CameraStorageLocation getStorageLocation()
dji.v5.manager.datacenter.media.MediaFileListDataSource.setComponentIndexType | void setComponentIndexType(ComponentIndexType componentIndexType)
dji.v5.manager.datacenter.media.MediaFileListDataSource.setStorageLocation | void setStorageLocation(CameraStorageLocation storageLocation)
dji.v5.manager.datacenter.media.MediaFileListData.deleteMediaFiles | void deleteMediaFiles(List<MediaFile> files)
dji.v5.manager.datacenter.media.MediaFileListData.getData | List<MediaFile> getData()
dji.v5.manager.datacenter.media.MediaFileListState | enum MediaFileListState
dji.v5.manager.datacenter.media.MediaFileListStateListener | interface MediaFileListStateListener
dji.v5.manager.datacenter.media.MediaFileListStateListener.onUpdate | void onUpdate(MediaFileListState mediaFileListState)
dji.v5.manager.datacenter.media.MediaFileListState.IDLE | IDLE
dji.v5.manager.datacenter.media.MediaFileListState.UPDATING | UPDATING
dji.v5.manager.datacenter.media.MediaFileListState.UP_TO_DATE | UP_TO_DATE
dji.v5.manager.datacenter.media.MediaFile.getDate | DateTime getDate()
dji.v5.manager.datacenter.media.MediaFile.getDuration | Long getDuration()
dji.v5.manager.datacenter.media.MediaFile.getFileIndex | int getFileIndex()
dji.v5.manager.datacenter.media.MediaFile.getFileName | String getFileName()
dji.v5.manager.datacenter.media.MediaFile.getFileSize | long getFileSize()
dji.v5.manager.datacenter.media.MediaFile.getFileType | MediaFileType getFileType()
dji.v5.manager.datacenter.media.MediaFile.getFrameRate | VideoFrameRate getFrameRate()
dji.v5.manager.datacenter.media.MediaFile.getPhotoRatio | PhotoRatio getPhotoRatio()
dji.v5.manager.datacenter.media.MediaFile.getResolution | VideoResolution getResolution()
dji.v5.manager.datacenter.media.PullMediaFileListParam | class PullMediaFileListParam
dji.v5.manager.datacenter.media.PullMediaFileListParam.Builder | static final class Builder
dji.v5.manager.datacenter.media.PullMediaFileListParam.getFilter | MediaFileFilter getFilter()
dji.v5.manager.datacenter.media.VideoPlayState | enum VideoPlayState
dji.v5.manager.datacenter.media.VideoPlayStateListener | interface VideoPlayStateListener
dji.v5.manager.datacenter.media.VideoPlayStateListener.onUpdate | void onUpdate(VideoPlayStatus videoPlayStatus)
dji.v5.manager.datacenter.media.VideoPlayState.ENDED | ENDED(3)
dji.v5.manager.datacenter.media.VideoPlayState.IDLE | IDLE(0)
dji.v5.manager.datacenter.media.VideoPlayState.PAUSED | PAUSED(2)
dji.v5.manager.datacenter.media.VideoPlayState.PLAYING | PLAYING(1)
dji.v5.manager.datacenter.media.VideoPlayState.STOPPED | STOPPED(4)
dji.v5.manager.datacenter.media.VideoPlayStatus | class VideoPlayStatus
dji.v5.manager.datacenter.media.VideoPlayStatus.getFileIndex | Integer getFileIndex()
dji.v5.manager.datacenter.media.VideoPlayStatus.getPlayingPosition | double getPlayingPosition()
dji.v5.manager.datacenter.media.VideoPlayStatus.getState | VideoPlayState getState()
dji.v5.manager.datacenter.media.VideoPlayStatus.getTotalDuration | double getTotalDuration()
dji.v5.manager.interfaces.IMediaManager.addMediaFileListStateListener | void addMediaFileListStateListener(MediaFileListStateListener listener)
dji.v5.manager.interfaces.IMediaManager.addVideoPlayStateListener | void addVideoPlayStateListener(VideoPlayStateListener listener)
dji.v5.manager.interfaces.IMediaManager.deleteMediaFiles | void deleteMediaFiles(List<MediaFile> files, CommonCallbacks.CompletionCallback callback)
dji.v5.manager.interfaces.IMediaManager.disable | void disable(CommonCallbacks.CompletionCallback callback)
dji.v5.manager.interfaces.IMediaManager.enable | void enable( CommonCallbacks.CompletionCallback callback)
dji.v5.manager.interfaces.IMediaManager.getMediaFileListData | MediaFileListData getMediaFileListData()
dji.v5.manager.interfaces.IMediaManager.getMediaFileListState | MediaFileListState getMediaFileListState()
dji.v5.manager.interfaces.IMediaManager.pauseVideo | void pauseVideo(CommonCallbacks.CompletionCallback callback)
dji.v5.manager.interfaces.IMediaManager.playVideo | void playVideo(MediaFile mediaFile, CommonCallbacks.CompletionCallbackWithParam<IVideoFrame> callback)
dji.v5.manager.interfaces.IMediaManager.pullMediaFileListFromCamera | void pullMediaFileListFromCamera(@NonNull PullMediaFileListParam param, CommonCallbacks.CompletionCallback callback)
dji.v5.manager.interfaces.IMediaManager.release | void release()
dji.v5.manager.interfaces.IMediaManager.removeAllMediaFileListStateListener | void removeAllMediaFileListStateListener()
dji.v5.manager.interfaces.IMediaManager.removeAllVideoPlayStateListener | void removeAllVideoPlayStateListener()
dji.v5.manager.interfaces.IMediaManager.removeMediaFileListStateListener | void removeMediaFileListStateListener(MediaFileListStateListener listener)
dji.v5.manager.interfaces.IMediaManager.removeVideoPlayStateListener | void removeVideoPlayStateListener(VideoPlayStateListener listener)
dji.v5.manager.interfaces.IMediaManager.resumeVideo | void resumeVideo(CommonCallbacks.CompletionCallback callback)
dji.v5.manager.interfaces.IMediaManager.seekVideo | void seekVideo(int position, CommonCallbacks.CompletionCallback callback)
dji.v5.manager.interfaces.IMediaManager.setMediaFileDataSource | void setMediaFileDataSource(MediaFileListDataSource source)
dji.v5.manager.interfaces.IMediaManager.stopPullMediaFileListFromCamera | void stopPullMediaFileListFromCamera()
dji.v5.manager.interfaces.IMediaManager.stopVideo | void stopVideo(CommonCallbacks.CompletionCallback callback)
dji.v5.manager.interfaces.INetworkRTKManager.startNetworkRTKService | void startNetworkRTKService(CoordinateSystem coordinateSystem, @NonNull final CommonCallbacks.CompletionCallback callback)
dji.v5.manager.interfaces.IRTKCenter.getQXRTKManager | INetworkRTKManager getQXRTKManager()
dji.v5.manager.interfaces.IRTKCenter.getRTKMaintainAccuracyEnabled | void getRTKMaintainAccuracyEnabled(CommonCallbacks.CompletionCallbackWithParam<Boolean> callback)
dji.v5.manager.interfaces.IRTKCenter.setRTKMaintainAccuracyEnabled | void setRTKMaintainAccuracyEnabled(boolean enabled, CommonCallbacks.CompletionCallback callback)
dji.v5.manager.interfaces.IRTKStationManager.resetRTKStationReferencePosition | void resetRTKStationReferencePosition(@NonNull CommonCallbacks.CompletionCallback callback)
dji.v5.manager.interfaces.IUserAccountManager | interface IUserAccountManager
dji.v5.manager.account.LoginInfo | class LoginInfo implements KeepProguard
dji.v5.manager.account.LoginInfoUpdateListener | interface LoginInfoUpdateListener
dji.v5.manager.account.LoginInfoUpdateListener.onLoginInfoUpdate | void onLoginInfoUpdate(LoginInfo loginInfo)
dji.v5.manager.account.LoginInfo.getAccount | String getAccount()
dji.v5.manager.account.LoginInfo.getLoginState | LoginState getLoginState()
dji.v5.manager.account.LoginState | enum LoginState
dji.v5.manager.account.LoginState.LOGGED_IN | LOGGED_IN
dji.v5.manager.account.LoginState.NOT_LOGGED_IN | NOT_LOGGED_IN
dji.v5.manager.account.LoginState.TOKEN_OUT_OF_DATE | TOKEN_OUT_OF_DATE
dji.v5.manager.interfaces.IUserAccountManager.addLoginInfoUpdateListener | void addLoginInfoUpdateListener(@NonNull LoginInfoUpdateListener listener)
dji.v5.manager.interfaces.IUserAccountManager.clearAllLoginInfoChangeListener | void clearAllLoginInfoChangeListener()
dji.v5.manager.interfaces.IUserAccountManager.getLoginInfo | LoginInfo getLoginInfo()
dji.v5.manager.interfaces.IUserAccountManager.logInDJIUserAccount | void logInDJIUserAccount(FragmentActivity fragmentActivity, boolean isFullScreen, @Nullable CommonCallbacks.CompletionCallback callback)
dji.v5.manager.interfaces.IUserAccountManager.logOutDJIUserAccount | void logOutDJIUserAccount(@Nullable CommonCallbacks.CompletionCallback callback)
dji.v5.manager.interfaces.IUserAccountManager.removeLoginInfoChangeListener | void removeLoginInfoChangeListener(@NonNull LoginInfoUpdateListener listener)
dji.v5.common.video.interfaces.IVideoDecoder.queueInFrame | void queueInFrame(@NonNull IVideoFrame videoFrame)
dji.v5.common.video.stream.PhysicalDeviceType.getDeviceType | String getDeviceType()
dji.sdk.keyvalue.key.CameraKey.KeyCameraStorageInfos | static final DJIKeyInfo<CameraStorageInfos> KeyCameraStorageInfos = new KeyCameraStorageInfo() .canGet(true).canSet(false).canListen(true).canPerformAction(false).setIsEvent(false)
dji.sdk.keyvalue.value.CameraStorageInfo | class CameraStorageInfo
dji.sdk.keyvalue.value.CameraStorageInfo.getAvailablePhotoCount | Integer getAvailablePhotoCount()
dji.sdk.keyvalue.value.CameraStorageInfo.getAvailableVideoDuration | Integer getAvailableVideoDuration()
dji.sdk.keyvalue.value.CameraStorageInfo.getStorageCapacity | Integer getStorageCapacity()
dji.sdk.keyvalue.value.CameraStorageInfo.getStorageLeftCapacity | Integer getStorageLeftCapacity()
dji.sdk.keyvalue.value.CameraStorageInfo.getStorageState | SDCardLoadState getStorageState()
dji.sdk.keyvalue.value.CameraStorageInfo.getStorageType | CameraStorageLocation getStorageType()
dji.sdk.keyvalue.value.CameraStorageInfos | class CameraStorageInfos
dji.sdk.keyvalue.value.CameraStorageInfos.getCameraStorageInfoList | List<CameraStorageInfo> getCameraStorageInfoList()
dji.sdk.keyvalue.value.CameraStorageInfos.getCurrentStorageType | CameraStorageLocation getCurrentStorageType()

--android --android