[APP] Android 开发笔记 001-环境搭建与命令行创建项目
1. 安装JDK,SDK
JDK http://www.oracle.com/technetwork/java/javase/downloads/index.html
Android SDK http://developer.android.com/sdk/index.html
https://dl.google.com/android/android-sdk_r24.4.1-windows.zip (No installer)
https://dl.google.com/android/installer_r24.4.1-windows.exe
Ant tool http://ant.apache.org/bindownload.cgi
Android SDK在线更新镜像服务器
|
2. 设置环境变量:
将下面两个加入系统环境变量表 Path键值中:
\Android\sdk\platform-tools
\Android\sdk\tools
设置Ant
ANT_HOME :指的是apache-ant-1.8.4-bin.zip的解压文件(apache-ant-1.8.4)所在的位置;
我把这个文件放在D盘,所以我这里设置的ant_home就是 ant_home=D:\apache-ant-1.8.2;
path路径设置为:PATH = %ANT_HOME%/bin; %ANT_HOME%/lib即可
3. 使用命令行创建Android应用:
1) 进入需要创建Android应用的文件夹:
cd D:\Android Development
2)在当前路径下,创建Android 项目
android create project -n MySecApp -p android_Sec -a MyActivitySec -k Com.test.mysecapp -t 2
命令行说明:
-n 表示 name 跟项目名称
-p 表示 path 跟工作空间
-a 表示 创建的Activity的名称
-k 表示 package 跟包名称
-t 表示 target 跟target id
(*target id * 可以通过 android list targets 查看,系统将列出所有的下载好的可用的 android 版本号)
3)使用命令给APK打包
ant debug 的过程:
D:\Android Development>ant -version
Apache Ant(TM) version 1.9.7 compiled on April 9 2016 D:\Android Development>cd android_Sec D:\Android Development\android_Sec>ant debug
Buildfile: D:\Android Development\android_Sec\build.xml -set-mode-check: -set-debug-files: -check-env:
[checkenv] Android SDK Tools Revision 25.1.2
[checkenv] Installed at C:\Users\SDSC\AppData\Local\Android\sdk -setup:
[echo] Project Name: MySecApp
[gettype] Project Type: Application -set-debug-mode: -debug-obfuscation-check: -pre-build: -build-setup:
[getbuildtools] Using latest Build Tools: 23.0.2
[echo] Resolving Build Target for MySecApp...
[gettarget] Project Target: Google APIs
[gettarget] Vendor: Google Inc.
[gettarget] Platform Version: 6.0
[gettarget] API level: 23
[gettarget] WARNING: No minSdkVersion value set. Application will install on all
Android versions.
[echo] ----------
[echo] Creating output directories if needed...
[mkdir] Created dir: D:\Android Development\android_Sec\bin\res
[mkdir] Created dir: D:\Android Development\android_Sec\bin\rsObj
[mkdir] Created dir: D:\Android Development\android_Sec\bin\rsLibs
[mkdir] Created dir: D:\Android Development\android_Sec\gen
[mkdir] Created dir: D:\Android Development\android_Sec\bin\classes
[mkdir] Created dir: D:\Android Development\android_Sec\bin\dexedLibs
[echo] ----------
[echo] Resolving Dependencies for MySecApp...
[dependency] Library dependencies:
[dependency] No Libraries
[dependency]
[dependency] ------------------
[echo] ----------
[echo] Building Libraries with 'debug'...
[subant] No sub-builds to iterate on -code-gen:
[mergemanifest] Merging AndroidManifest files into one.
[mergemanifest] Manifest merger disabled. Using project manifest only.
[echo] Handling aidl files...
[aidl] No AIDL files to compile.
[echo] ----------
[echo] Handling RenderScript files...
[echo] ----------
[echo] Handling Resources...
[aapt] Generating resource IDs...
[echo] ----------
[echo] Handling BuildConfig class...
[buildconfig] Generating BuildConfig class. -pre-compile: -compile:
[javac] Compiling 3 source files to D:\Android Development\android_Sec\bin\c
lasses
[javac] 警告: [options] 源值1.5已过时, 将在未来所有发行版中删除
[javac] 警告: [options] 目标值1.5已过时, 将在未来所有发行版中删除
[javac] 警告: [options] 要隐藏有关已过时选项的警告, 请使用 -Xlint:-options。 [javac] 3 个警告 -post-compile: -obfuscate: -dex:
[dex] input: D:\Android Development\android_Sec\bin\classes
[dex] Converting compiled files and external libraries into D:\Android Dev
elopment\android_Sec\bin\classes.dex... -crunch:
[crunch] Crunching PNG Files in source dir: D:\Android Development\android_Se
c\res
[crunch] To destination dir: D:\Android Development\android_Sec\bin\res
[crunch] Processing image to cache: D:\Android Development\android_Sec\res\dr
awable-hdpi\ic_launcher.png => D:\Android Development\android_Sec\bin\res\drawab
le-hdpi\ic_launcher.png
[crunch] (processed image to cache entry D:\Android Development\android_Sec
\bin\res\drawable-hdpi\ic_launcher.png: 87% size of source)
[crunch] Processing image to cache: D:\Android Development\android_Sec\res\dr
awable-ldpi\ic_launcher.png => D:\Android Development\android_Sec\bin\res\drawab
le-ldpi\ic_launcher.png
[crunch] (processed image to cache entry D:\Android Development\android_Sec
\bin\res\drawable-ldpi\ic_launcher.png: 0% size of source)
[crunch] Processing image to cache: D:\Android Development\android_Sec\res\dr
awable-mdpi\ic_launcher.png => D:\Android Development\android_Sec\bin\res\drawab
le-mdpi\ic_launcher.png
[crunch] (processed image to cache entry D:\Android Development\android_Sec
\bin\res\drawable-mdpi\ic_launcher.png: 78% size of source)
[crunch] Processing image to cache: D:\Android Development\android_Sec\res\dr
awable-xhdpi\ic_launcher.png => D:\Android Development\android_Sec\bin\res\drawa
ble-xhdpi\ic_launcher.png
[crunch] (processed image to cache entry D:\Android Development\android_Sec
\bin\res\drawable-xhdpi\ic_launcher.png: 85% size of source)
[crunch] Crunched 4 PNG files to update cache -package-resources:
[aapt] Creating full resource package... -package:
[apkbuilder] Current build type is different than previous build: forced apkbuil
der run.
[apkbuilder] Creating MySecApp-debug-unaligned.apk and signing it with a debug k
ey... -post-package: -do-debug:
[zipalign] Running zip align on final apk...
[echo] Debug Package: D:\Android Development\android_Sec\bin\MySecApp-debug
.apk
[propertyfile] Creating new property file: D:\Android Development\android_Sec\bi
n\build.prop
[propertyfile] Updating property file: D:\Android Development\android_Sec\bin\bu
ild.prop
[propertyfile] Updating property file: D:\Android Development\android_Sec\bin\bu
ild.prop
[propertyfile] Updating property file: D:\Android Development\android_Sec\bin\bu
ild.prop -post-build: debug: BUILD SUCCESSFUL
Total time: 12 seconds D:\Android Development\android_Sec>
4)生成的Apk
[APP] Android 开发笔记 001-环境搭建与命令行创建项目的更多相关文章
- [APP] Android 开发笔记 002-命令行创建默认项目结构说明
接上节:[APP] Android 开发笔记 001 4. 默认项目结构说明: 这里我使用Sublime Text 进行加载.
- [APP] Android 开发笔记 003-使用Ant Release 打包与keystore加密说明
接上节 [APP] Android 开发笔记 002 5. 使用ant release 打包 1)制作 密钥文件 release.keystore (*.keystore) keytool -genk ...
- NET Core 环境搭建和命令行CLI入门
NET Core 环境搭建和命令行CLI入门 2016年6月27日.NET Core & ASP.NET Core 1.0在Redhat峰会上正式发布,社区里涌现了很多文章,我也计划写个系列文 ...
- NET Core 环境搭建和命令行CLI入门[转]
NET Core 环境搭建和命令行CLI入门 时间:2016-07-06 01:48:19 阅读:258 评论:0 收藏:0 [点我收藏+] 标签: N ...
- vue环境搭建以及使用vue-cli创建项目
我要跑vue项目,所以我要搞vue. 1.环境搭建 进入node官网下载对应版本的node,一步步安装即可. 安装会自动配置路径和npm包管理环境,通过node -v进行验证 2.安装vue-cli脚 ...
- .NET Core系列 : 1、.NET Core 环境搭建和命令行CLI入门
2016年6月27日.NET Core & ASP.NET Core 1.0在Redhat峰会上正式发布,社区里涌现了很多文章,我也计划写个系列文章,原因是.NET Core的入门门槛相当高, ...
- Egret 学习之简介,环境搭建及命令行语法 (一)
1,简介 1)egret是一个开源免费的游戏框架,它使用TypeScript脚本语言进行开发:当游戏完成最终的打包后,可以将程序转换为h5游戏,实现跨平台性:它基于BSD(Berkly Softwar ...
- [APP] Android 开发笔记 006-使用短信验证SDK进行短信验证
1. 下载SDK (http://www.mob.com/#/download) SMS For Android Studio: http://www.mob.com/download/sms/and ...
- [APP] Android 开发笔记 004-Android常用基本控件使用说明
TextView 文本框 EditText控件 Button 与 ImageButton ImageView RadioButton CheckBox复选框 TextView 文本框 ,用于显示文本的 ...
随机推荐
- 用pip批量更新所有包
p.s在先,事实证明,把电脑里所有的python包一次性更新是吃力不讨好的工作,不过,这是另一回事,如果你一定要这么做,根据http://stackoverflow.com/questions/272 ...
- 图解HTTP学习笔记——简单的HTTP协议
简单的HTTP协议 前言 最近在学习Web开发的相关知识,发现<图解HTTP>这本书通俗易懂.所以花时间学习这本书,并记录下学习笔记. 如上图,我们每天都在浏览网页,一般我们都是在浏览器地 ...
- PDF文件可以转换成txt文档吗
PDF是一种便携式的文件格式,传送和阅读都非常方便,是Adobe公司开发的跨平台文件格式,它无论在哪种打印机上都可以保证精确的颜色和准确的打印效果.可是有点遗憾的是PDF格式一般不能在手机上打开,或者 ...
- MYSQL列中的数据以逗号隔开,如何查询
FROM `task_detatils` WHERE FIND_IN_SET( '1', responsible_user) 将含有1的responsible_user列数据全部搜索出来
- window apache 多站点配置
1. 让Apache在启动时能加载虚拟主机模块. 打开Apache安装目录下conf/httpd.conf文件,找到下面两行文字,把最前面的 # 号去掉,然后保存. #LoadModule vhost ...
- nginx 配置虚拟主机的三种方法
nginx,一个server标签就是一个虚拟主机. 1.基于域名的虚拟主机,通过域名来区分虚拟主机——应用:外部网站 2.基于端口的虚拟主机,通过端口来区分虚拟主机——应用:公司内部网站,外部网站的管 ...
- Java实现文件批量重命名
Windows操作系统可以实现重命名文件操作,却不能实现批量重命名.本实例实现了批量重命名功能,可以将一个文件夹内同一类型的文件按照一定的规则批量重命名.用户可以给出重命名模板,程序可以根据模板对相应 ...
- NetBpm 测试篇(3)
http://www.netbpm.org/movie/holiday/holiday.html
- [SublimeText] 如何创建工程
Sublime Text 可以很方便地管理多个工程.使用Sublime Text的Projects,可以将不同根目录的文件组织起来成为一个工程,而不用将所有的文件都放到一个根目录下面. 1. 创建工程 ...
- c语言指针笔记
一.int a[20]1. 数组名代表数组首元素的地址,不代表数组的地址2. 对数组名取地址代表整个数组的地址.a和&a代表的数据类型不一样 a代表数组首元素的地址 &a数组类型 in ...