Android 开发系列(1) - 入门
来源:互联网 发布:cpa软件 编辑:程序博客网 时间:2024/05/02 02:35
作为一个老程序员,写了多年的 C/C++,经历了unix的cc、DOS时代的TC、BC、后来的VC、VS(看得懂的人自己体会 ),终于开始写Android的程序了。
权把本博作为我学习的日志吧。
作为java的菜鸟,第一步当然是先找网上的教程,找了几本入门书快速翻看了一下,大致有了个了解,可以开始动手了。
第二步,搭建开发环境
关于开发环境搭建的文章很多,比较全面下载网址如 http://www.androiddevtools.cn/
本人选择了传统的 eclipe, 没有选择新兴的AS,权当老程序员的保守吧。
需要说明的是我的开发机器为 windows 64bit版本。NDK 下载了 windows x86-32bit版本,后来的实践证明可以正常使用。
1、安装 jdk,并配置环境变量 JAVA_HOME = JDK安装路径, PATH中增加 : %JAVA_HOME%\bin
2、使用eclipe-bundle, 配置的环境变量
ANDROID_HOME 到你的安卓SDK的安装目录,PATH中增加: %ANDROID_HOME%\platform-tools;%ANDROID_HOME%\tools
3、NDK设置,在eclipes中 菜单 windows->preferences->NDK中,NDK_Location 中填写NDK的路径
第三步,第一个App
ADK中带有一些示例程序,从中学习是最快捷的。
第一个APP: hello-jni
第一个Native App: ndktest
几点体会及技巧:
1、发现Android的模拟环境运行非常慢,还是直接使用自己的手机当作调试环境更好
我使用 三星 S4,激活开发者选项的方法:设置->更多->关于设备,中的 内部版本号,连续点击7下就可以了
2、不太喜欢Eclipse的workingset管理方式,VS的solution管理方式更方便
3、一些设备上的 ADB interface不能顺利接上,最终发现实际是需要在电脑上安装相应Android设备的驱动。最简单的做法是 使用豌豆夹 来下载和安装驱动。
4、javah的使用:生成头文件
一般为用法为: javah -jni -classpath . com.samples.ndkjnitest
如果 ndktestjni.java 中包含了 android的对象,如Bitmap,则会报告"错误: 无法确定Bitmap的签名"
做法是在 classpath参数中,加上指向 android.jar的路径名,多个路径使用分号分隔:
javah -jni -classpath .;\E:\prog_Android\adt-bundle-windows-x86-20140702\sdk\platforms\android-23\android.jar com.samples.ndkjnitest
- Android 开发系列(1) - 入门
- android平台chrome开发系列:入门apk
- Teamcenter 入门开发系列问答(1)
- Android开发从入门到精通 系列文章
- Android开发从入门到精通系列资料
- Android开发从入门到精通系列资料
- Android开发视频教程-深入浅出系列Lesson19-AFF110727_蓝牙编程入门
- 入门Android开发--第一行代码--笔记系列(Activity)
- 入门Android开发--第一行代码--笔记系列(Intent)
- 入门Android开发--第一行代码--笔记系列(问)
- 入门Android开发--第一行代码--笔记系列(五)
- 入门Android开发--第一行代码--笔记系列(广播)
- 入门Android开发--第一行代码--笔记系列(Fragment)
- 入门Android开发--第一行代码--笔记系列(SQLite)
- 入门Android开发--第一行代码--笔记系列(六)
- 入门Android开发--第一行代码--笔记系列(Service)
- 入门Android开发--第一行代码--笔记系列(八)
- 入门Android开发--第一行代码--笔记系列(九)
- 防止sql注入
- Java Nio 九、Java NIO SocketChannel
- 【HTTP】Fiddler(二) - 使用Fiddler做抓包分析
- 工作流之-流程中设计到的表
- 农历15年末自我检讨!
- Android 开发系列(1) - 入门
- 哥伦比亚大学Coursera课程自然语言处理Natural Language Processing:1. Hidden Markov Models: Instructions
- Android开发参考
- 利用boost计算运行时间间隔及获取系统时间并格式化
- Android ListView异步加载图片乱序问题,原因分析及解决方案
- iOS 名称的国际化
- 【已解决】Android Studio无法识别虚拟机,虚拟机无法运行
- 在Ubuntu上下载、编译和安装Android最新内核源代码(Linux Kernel)
- 【HTTP】Fiddler(三)- Fiddler命令行和HTTP断点调试