关于AndroidStudio环境程序搭建的小心得
0
发表于2015-10-11
手机看帖
14
11779
本人是深大在校研三学生,已经进入找工作的紧张阶段了,很荣幸,已成功进入了Tencent和Baidu知名互联网企业
的校招二面并阵亡。。
研究生一直在做嵌入式和Android的开发,现在毕设又做工业DPM的提取识别,看到同学都签了这个那个公司的,心里挺郁闷的,也想让各位飞友指条明路,不胜感激。
==============================================================
言归正传,买PHANTOM完全是出于兴趣,在外实习有些项目奖励,就买了这个玩具回来了,本身有一个F45所以对飞行器什么的还是比较有爱的。
用AndroidStudio照着GitHub的例程搭建第一个FPV程序,还真遇到了一点点小麻烦,在这里给各位提个醒,如有遗漏请指出,不胜感激。
AS的版本是1.3.2,导入DJI-SDK-LIB,指定依赖库,一切正常。
1. 需要注意的是,建立FPV活动的时候类一定要命名为FPVActivity,layout要命名为activity_fpv.xml,这个在官方演示中没有突显出来,后面仔细看才发现。。建议吧这行文字标红突显出来~~
然后连接手机调试,运行期间又出现问题了,如下
无法加载lib,想想应该是DJI的.so文件调用失败了,那就导入进来吧。
2. 在src/main/建立jniLibs文件夹,然后把armeabi和armeabi-v7a两个目录拷贝进来,AS应该会自动刷新了,如下图
然后再执行,就没有问题了。
3. 注意避免在没有USB连接或飞机没有连接的时候出现问题,注意以下方法
/**
* 初始化飞行器类型
* @param type
*/
private boolean onInitSDK(int type) {
boolean result = false;
switch (type) {
case 0: {
result = DJIDrone.initWithType(this.getApplicationContext(), DJIDroneTypeDef.DJIDroneType.DJIDrone_Vision);
// The SDK initiation for Phantom 2 Vision or Vision Plus
break;
}
case 1: {
result = DJIDrone.initWithType(this.getApplicationContext(), DJIDroneTypeDef.DJIDroneType.DJIDrone_Inspire1);
// The SDK initiation for Inspire 1 or Phantom 3 Professional.
break;
}
case 2: {
result = DJIDrone.initWithType(this.getApplicationContext(), DJIDroneTypeDef.DJIDroneType.DJIDrone_Phantom3_Advanced);
// The SDK initiation for Phantom 3 Advanced
break;
}
case 3: {
result = DJIDrone.initWithType(this.getApplicationContext(), DJIDroneTypeDef.DJIDroneType.DJIDrone_M100);
// The SDK initiation for Matrice 100.
break;
}
default: {
break;
}
}
if(!DJIDrone.connectToDrone())
return false;
if(DJIDrone.getDjiCamera()!=null){
boolean bConnectState = DJIDrone.getDjiCamera().getCameraConnectIsOk();
if(bConnectState){
result=true;
}
else{
result=false;
}
}
else{
result=false;
}
return result;
}
返回true的时候再刷新GLSurface,并且在销魂的时候注意有没有获取该实例。
能够想到的就是这么多了,如果可以的话最好在开发指南上突出上诉几点,方便开发者开发。多谢各位指导~~
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
|
|
|