首页
教程
无人机教程
手持教程
后期教程
作品
航拍无人机
DJI Mavic
DJI Avata
DJI Mini
DJI FPV
DJI Air
Phantom
Inspire
其他
手持摄影
创意摄影
DJI Mic
Osmo Action
Osmo Mobile
Osmo Pocket
Ronin
商用产品
行业应用
教育应用
农业应用
咨询
官方公告
售后服务
查禁飞区
其他
活动
官方活动
城市摄影大赛
大疆校园
同城约飞
每日签到
其他
发帖
登录
注册
VoltWu
已累计飞行 0 米
发布于
2015-10-19
浏览
12.0k
相关分类
SDK
Mobile-SDK
0
2
10
0
10 条评论
最新
最早
快来评论吧
woxikuanwan
11
已累计飞行 0 米
为什么我的sdk里面没有DJIDrone.getDjiCamera().setDecodeType(DJICameraDecodeTypeDef.DecoderType.Software); setdecodetype方法都没有,sdk是2.4.1的
2016-1-7
VoltWu
10
已累计飞行 0 米
没有遇到过这个问题 请确保完完全全按照tutorial里面的code来写 另外 正确导入sdk两种方法:
http://stackoverflow.com/questions/16952388/how-to-change-libs-directory-in-gradle/21284740#21284740
http://stackoverflow.com/questions/17340240/jni-folder-in-android-studio
2015-10-21
FreemanXu
9
已累计飞行 0 米
不过我还遇到个问题error不知楼主有没有遇到过 开始运行之后logcat不断报错。。。虽然目前不影响功能 10-21 21:47:15.282 17060-17086/com.freeman.djifpv W/System.err: at java.lang.Class.forName(Class.java:309) 10-21 21:47:15.283 17060-17086/com.freeman.djifpv W/System.err: at java.lang.Class.forName(Class.java:273) 10-21 21:47:15.283 17060-17086/com.freeman.djifpv W/System.err: at dji.midware.data.manager.P3.g.a(Unknown Source) 10-21 21:47:15.283 17060-17086/com.freeman.djifpv W/System.err: at dji.midware.data.manager.P3.g.d(Unknown Source) 10-21 21:47:15.283 17060-17086/com.freeman.djifpv W/System.err: at dji.midware.usb.P3.UsbAccessoryService$ParseOsdRunnable.run(Unknown Source) 10-21 21:47:15.283 17060-17086/com.freeman.djifpv W/System.err: at java.lang.Thread.run(Thread.java:818)
10-21 21:47:15.283 17060-17086/com.freeman.djifpv W/System.err: Caused by: java.lang.ClassNotFoundException: Didn't find class "dji.midware.data.model.P3.DataTransform_gGetPushCheckStatus" on path: DexPathList[[zip file "/data/app/com.freeman.djifpv-1/base.apk"],nativeLibraryDirectories=[/data/app/com.freeman.djifpv-1/lib/arm, /vendor/lib, /system/lib]]
10-21 21:47:15.284 17060-17086/com.freeman.djifpv W/System.err: at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56) 10-21 21:47:15.284 17060-17086/com.freeman.djifpv W/System.err: at java.lang.ClassLoader.loadClass(ClassLoader.java:511) 10-21 21:47:15.284 17060-17086/com.freeman.djifpv W/System.err: at java.lang.ClassLoader.loadClass(ClassLoader.java:469) 10-21 21:47:15.284 17060-17086/com.freeman.djifpv W/System.err: ... 7 more
10-21 21:47:15.284 17060-17086/com.freeman.djifpv W/System.err: Suppressed: java.lang.ClassNotFoundException: dji.midware.data.model.P3.DataTransform_gGetPushCheckStatus
10-21 21:47:15.284 17060-17086/com.freeman.djifpv W/System.err: at java.lang.Class.classForName(Native Method) 10-21 21:47:15.284 17060-17086/com.freeman.djifpv W/System.err: at java.lang.BootClassLoader.findClass(ClassLoader.java:781) 10-21 21:47:15.284 17060-17086/com.freeman.djifpv W/System.err: at java.lang.BootClassLoader.loadClass(ClassLoader.java:841) 10-21 21:47:15.284 17060-17086/com.freeman.djifpv W/System.err: at java.lang.ClassLoader.loadClass(ClassLoader.java:504) 10-21 21:47:15.284 17060-17086/com.freeman.djifpv W/System.err: ... 8 more
10-21 21:47:15.284 17060-17086/com.freeman.djifpv W/System.err: Caused by: java.lang.NoClassDefFoundError: Class not found using the boot class loader; no stack available 10-21 21:47:16.281 17060-17086/com.freeman.djifpv W/System.err: java.lang.ClassNotFoundException: dji.midware.data.model.P3.DataTransform_gGetPushCheckStatus
10-21 21:47:16.281 17060-17086/com.freeman.djifpv W/System.err: at java.lang.Class.classForName(Native Method) 10-21 21:47:16.281 17060-17086/com.freeman.djifpv W/System.err: at java.lang.Class.forName(Class.java:309) 10-21 21:47:16.281 17060-17086/com.freeman.djifpv W/System.err: at java.lang.Class.forName(Class.java:273) 10-21 21:47:16.281 17060-17086/com.freeman.djifpv W/System.err: at dji.midware.data.manager.P3.g.a(Unknown Source) 10-21 21:47:16.281 17060-17086/com.freeman.djifpv W/System.err: at dji.midware.data.manager.P3.g.d(Unknown Source) 10-21 21:47:16.281 17060-17086/com.freeman.djifpv W/System.err: at dji.midware.usb.P3.UsbAccessoryService$ParseOsdRunnable.run(Unknown Source) 10-21 21:47:16.281 17060-17086/com.freeman.djifpv W/System.err: at java.lang.Thread.run(Thread.java:818)
10-21 21:47:16.281 17060-17086/com.freeman.djifpv W/System.err: Caused by: java.lang.ClassNotFoundException: Didn't find class "dji.midware.data.model.P3.DataTransform_gGetPushCheckStatus" on path: DexPathList[[zip file "/data/app/com.freeman.djifpv-1/base.apk"],nativeLibraryDirectories=[/data/app/com.freeman.djifpv-1/lib/arm, /vendor/lib, /system/lib]]
10-21 21:47:16.281 17060-17086/com.freeman.djifpv W/System.err: at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:56) 10-21 21:47:16.281 17060-17086/com.freeman.djifpv W/System.err: at java.lang.ClassLoader.loadClass(ClassLoader.java:511) 10-21 21:47:16.281 17060-17086/com.freeman.djifpv W/System.err: at java.lang.ClassLoader.loadClass(ClassLoader.java:469) 10-21 21:47:16.281 17060-17086/com.freeman.djifpv W/System.err: ... 7 more 10-21 21:47:16.281 17060-17086/com.freeman.djifpv W/System.err: Suppressed: java.lang.ClassNotFoundException: dji.midware.data.model.P3.DataTransform_gGetPushCheckStatus 10-21 21:47:16.281 17060-17086/com.freeman.djifpv W/System.err: at java.lang.Class.classForName(Native Method) 10-21 21:47:16.281 17060-17086/com.freeman.djifpv W/System.err: at java.lang.BootClassLoader.findClass(ClassLoader.java:781) 10-21 21:47:16.282 17060-17086/com.freeman.djifpv W/System.err: at java.lang.BootClassLoader.loadClass(ClassLoader.java:841) 10-21 21:47:16.282 17060-17086/com.freeman.djifpv W/System.err: at java.lang.ClassLoader.loadClass(ClassLoader.java:504) 10-21 21:47:16.282 17060-17086/com.freeman.djifpv W/System.err: ... 8 more
10-21 21:47:16.282 17060-17086/com.freeman.djifpv W/System.err: Caused by: java.lang.NoClassDefFoundError: Class not found using the boot class loader; no stack available
2015-10-21
FreemanXu
8
已累计飞行 0 米
楼主真是。。。我遇到的问题就直接来找你的帖子就行了:lol
2015-10-21
水无痕
7
已累计飞行 14382 米
呼叫万能的 DJI-Shirley 快去更新demo project啦!
2015-10-21
VoltWu
6
已累计飞行 0 米
我终。。。。终于解决了。。。。之前怎么搜都搜不到解决方案 搜了DJI SDK v2.4 以后马上就搜到了这帖子:
http://forum.dev.dji.com/thread-31789-1-1.html
原来v2.4更新后
djiGLSurfaceView.start();之前要加个
DJIDrone.getDjiCamera().setDecodeType(DJICameraDecodeTypeDef.DecoderType.Software);
噢漏。。。。tutorial里似乎没有提及 demo project用的是eclipse老版本 当时我还差点想换掉整个SDK...
2015-10-20
水无痕
5
已累计飞行 14382 米
肉眼上看起来没什么问题……(如果你用的DjiSurfaceView_02在做显示) 如果是android的话,多重启几次看看……有时候android解码器自己会抽风
2015-10-19
VoltWu
4
已累计飞行 0 米
然后现在这个问题解决了 但是依旧黑屏 可是那几个按键都能用 拍照片录像什么的 我去sd卡里查看了一下都有相应的照片和视频真是好奇怪 我之前不知道用什么方法把demo project导入到AS(但不是gradle build) 运行后完全可行没有明显bug 可是自己在AS上按照教程做了一遍 应该是没有改核心的东西 怎么会有这个奇怪的问题呢 原谅我是个JAVA+AS新手。。。 这是我的FPVActivity里面的Oncreate method:
protected void
onCreate(Bundle savedInstanceState) {
super
.onCreate(savedInstanceState); setContentView(R.layout.
activity_fpv
);
DroneCode
=
2
;
new
Thread(){
public void
run(){
try
{ DJIDrone.
checkPermission
(getApplicationContext(),
new
DJIGeneralListener() {
@Override
public void
onGetPermissionResult(
int
result) {
if
(result ==
0
) {
// show success
Log.
e
(
TAG
,
"onGetPermissionResult ="
+ result); Log.
e
(
TAG
,
"onGetPermissionResultDeion="
+ DJIError.
getCheckPermissionErrorDeion
(result));
handler
.sendMessage(
handler
.obtainMessage(
SHOWDIALOG
, DJIError.
getCheckPermissionErrorDeion
(result))); }
else
{
// show errors
Log.
e
(
TAG
,
"onGetPermissionResult ="
+ result); Log.
e
(
TAG
,
"onGetPermissionResultDeion="
+ DJIError.
getCheckPermissionErrorDeion
(result));
handler
.sendMessage(
handler
.obtainMessage(
SHOWDIALOG
, getString(R.string.
demo_activation_error
) + DJIError.
getCheckPermissionErrorDeion
(result) +
"
\n
"
+ getString(R.string.
demo_activation_error_code
) + result)); } } }); }
catch
(Exception e) {
//
TODO Auto-generated catch block
e.printStackTrace(); } } }.start(); onInitSDK(
DroneCode
); DJIDrone.
connectToDrone
();
// Try to initialize the camera to capture mode
DJIDrone.
getDjiCamera
().setCameraMode(CameraMode.
Camera_Capture_Mode
,
new
DJIExecuteResultCallback() {
@Override
public void
onResult(DJIError mErr) { String result =
"errorCode ="
+ mErr.
errorCode
+
"
\n
"
+
"errorDeion ="
+ DJIError.
getErrorDeionByErrcode
(mErr.
errorCode
);
if
(mErr.
errorCode
!= DJIError.
RESULT_OK
) {
handler
.sendMessage(
handler
.obtainMessage(
SHOWDIALOG
, result));
// Show the error when setting fails
} } });
mDjiGLSurfaceView
= (DjiGLSurfaceView)findViewById(R.id.
DjiSurfaceView_02
);
mDjiGLSurfaceView
.start();
mReceivedVideoDataCallBack
=
new
DJIReceivedVideoDataCallBack(){
@Override
public void
onResult(
byte
[] videoBuffer,
int
size){
mDjiGLSurfaceView
.setDataToDecoder(videoBuffer, size); } }; DJIDrone.
getDjiCamera
().setReceivedVideoDataCallBack(
mReceivedVideoDataCallBack
);
viewTimer
= (TextView) findViewById(R.id.
timer
);
captureAction
= (Button) findViewById(R.id.
button1
);
recordAction
= (Button) findViewById(R.id.
button2
);
captureMode
= (Button) findViewById(R.id.
button3
);
captureAction
.setOnClickListener(
this
);
recordAction
.setOnClickListener(
this
);
captureMode
.setOnClickListener(
this
); }
2015-10-19
VoltWu
3
已累计飞行 0 米
多谢前辈 马上跑去试!!
2015-10-19
水无痕
2
已累计飞行 14382 米
目测是当前相机不在capture mode,跑去usb mode了。
https://dn-dev-dji-front.qbox.me ... Def.CameraMode.html
临时解决方案1:打开DJI GO,DJI GO会在一开始初始化一次相机状态。(在图传画面上记得切去相机功能而非录像功能,不然你拍照的时候仍然会提示228,因为record mode不支持capture相关指令。) 永久解决方案2:在运行你的APP时第一步先初始化照相机模式为capture mode。(其实我觉得教程里面应该提及这一点)
2015-10-19
暂无更多评论
关于作者
已累计飞行 0 米
VoltWu
飞行观察员
认证设备
暂无关联认证的设备
最新帖子
更多
回传的h264视频码流问题
关于如何提取Phantom 3的回传视频的问题
关于大疆SDK和其他library共存的问题