叨叨两句先
小宇之前一直做前后端开发,只是略懂JS,未接触过Java和Android
近期工作任务也是兴趣使然,开始琢磨DJI二次开发
DJI是我最服气的无人机厂商,无人机稳定性极强,性价比狂高,还给了极度丰富的二次开发接口,包括Mobile SDK手机应用开发工具包,Onboard SDK机载端开发工具包,Guidance SDK视觉导航以及Payload SDK机载开发工具包,可以说相当大方了
如果你是个小白,很好,我们在脑回路起点的走向上很可能差距不大,那么,一向前起走吧~
这里为了实现DJI二次开发一阶段“飞起来”,我选择了简单的Android Mobile SDK
带坑Android Studio
我知道你打开这篇可能不是想从头安起,而是因为遇到坑了,我们来重现一遍坑的姿势
...后续更新
最好的办法是,卸载掉它,删除旧文件,我们重新来过
从零安装Android Studio
言归正传,作Android Moblie SDK的开发,首先需要一个Android Studio开发环境,为了显得厉害点,我们简称AS,这里小宇推荐Android Studio中文社区,你需要的一切,这里都有
http://www.android-studio.org/
进入社区,根据自己的系统条件下载AS,小宇这里下载了windows 64位的推荐版本,也就是列表的第一个,见下图
安装过程很简单,一路确认到底
重点来咯,安装后有两个点,只要设置对,基本不会有抓狂的问题。
- Http Proxy代理设置
进入AS,设置代理如下
- SDK下载
哼一下闭#锁国要翻墙, 夸一下神奇的SDK Manger
报错:“Failed to find target with hash string 'android-23' in ...” Install missing platform(s) and sync project
像这样:
就算点击Install missing platform(s) and sync project也根本Install不动,这时候,你需要求助SDK Manager
来到我们厉害的AS中文社区http://www.android-studio.org/
下载SDK并安装至如下路径:
“C:/Users/xxxx/AppData/Local/Android/android-sdk”
接下来是重点一步骤,进入AS
File->Settings->Appearance & Behavior->System Settings->Android SDK
关联刚刚下载的sdk
然后,解决Bug的时刻到了,进入C:/Users/xxxx/AppData/Local/Android/android-sdk,找到SDK Manager,并打开
一起来回顾一下,最初的报错是什么来着?“Failed to find target with hash string 'android-23' ”,对了问题出在'android-23'上,找到SDK Manager上,对应的Android 6.0( API 23)通通Not install,那么我们只要选中,然后Install,Rebuild Project【问题解决】
遇到类似报错,可以百度一下对应缺少的SDK,进入SDK Manager去勾选,然后Install就好拉
是不是很棒呢兄弟:)
- Gradle路径设置
报错:“Unable to tunnel through proxy. Proxy returns "HTTP/1.1 400 Bad Request"
像这样
究其原因,是加载Gradle的URL无法访问,我们可以设置为本地加载,解决方法是:
进入File->Settings->Build,Excution,Deployment->Gradle修改配置路径像这样
如果你的gradle有问题,可以到http://services.gradle.org/di...
解压至该路径C:/Users/xxx/.gradle/wrapper/dists/gradle-4.4-all/9br9xq1tocpiv8o6njlyu5op1
或者,还有更小机灵鬼的办法,从你同事的PC中拷贝该路径下的文件进行替换
常见Error:Cannot resolve symbol ‘XXX’
今天按照DJI的教程https://developer.dji.com/mob...
出现了这样的问题,代码中被部分标红,鼠标悬停在其上,会提示
Cannot resolve symbol ‘Handler’ 或 Cannot resolve symbol ‘XXX’
方法一:按照如下提示执行
File->Invalidata Caches/Restart->Invalidata and Restart
【Failed】问题依旧没解决
偶然将光标放置在标红语法行前,出现如下提示
方法二:将光标放置在标红语法行前
按下‘Alt+Enter’
【Bingo】可消除标红提示,问题解决~
常见Error:就是运行的“Application Activation and Aircraft Binding” Demo 提示Activation fails
原模原样从Github上下载了“Application Activation and Aircraft Binding”的Demo
编译/运行/生成/安装并运行APP都一切正常
可就是Activation fails
查看run运行的log,提示我们APP key出了问题
这里我们发现,每一个DJI Demo原模原样Down下来之后,要记得在Project中替换上自己的APP Key,具体位置在app/manifests/AndroidManifest.xml中,Ctrl + F查找Key就可以定位到了
APP Key需要注册并创建后,生成具体操作步骤见https://developer.dji.com/mob...
复制这里的Key替换掉Please enter your App Key here.再运行
大功告成~
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。