尽管常常和android打交道。但事实上我对android不是非常了解。

这里记录一下ant编译androidproject的过程,然后顺便记录一下android的一些基本概念。不求渡人,但求渡己。这里仅仅是记录一下自己实践的过程,參考博文连接点击这里

流程例如以下:

1>生成R.java文件。

(注:此文件为android资源的索引文件)

2>将java代码编译成class文件。

3>将jar包和class文件生成 class.dex 文件。

(注:class是java的二进制文件。 jar包是打包的class文件。能够直接用jar命令直接运行。dex是android上得可运行文件格式,注意apk仅仅是压缩包。安装后自己主动解压,最后运行的是dex 文件)

4>将assets文件和res文件打包压缩。(注:做cocos2d-x的应该对这个都比較熟悉,游戏用到的资源最后都通过build脚本打到assets文件中。这里的资源不会在R文件中检索到,res能够通过R文件检索到。

详细原因不清楚,毕竟都能够用java代码读取)。

5>将dex文件和资源文件打包成apk。

6>对apk进行签名。(mac下个人签名文件存放路径为:~/.android/debug.keystore)

编译须要用到一个叫build.xml,假设你的工程文件夹以下没有此文件,能够通过android update project --path .来生成。(注:${}取出{}内的路径)(注:aapt为Android Asset Packaging Tool,能够查看,创建,更新ZIP格式的文档附件。也能够将资源文件编译成二进制)(注:apkbuilder在android3.0后被废弃)(注:若mac终端执行ant出现乱码现象请到终端,设置。高级。字符编码处设置)。

直接执行ant debug可能会出现这种一个错误提示:sdk.dir is missing.Make sure generate local.properties using ... 。原因不清楚,明明已经生成local.properties,却提示找不到,可是能够手动传入,传入方式为 -Dsdk.dir={sdk路径}。这样做可能还会有问题。错误提示为:build.xml:601:The following
error occurred while executing this line。

你须要做的是关掉eclipse,执行ant clean, 然后又一次执行 ant debug

关于Android打版本号的小白文的更多相关文章

  1. Android 各个版本号WebView

    转载请注明出处   http://blog.csdn.net/typename/ powered by miechal zhao : miechalzhao@gmail.com 前言: 依据Googl ...

  2. 用android去写一个小程序

    前言: 软工的一个小作业:实现"黄金分割小游戏", 需要结对编程,队友:陈乐云    共用时两天. 早期思路设计: 采用键值对的形式,以Map作为存储结构.优点:能够将数据与用户对 ...

  3. 八款Android 开发者必备的小工具

    Photo from https://www.airpair.com 在做Android 开发过程中,会遇到一些小的问题,虽然自己动手也能解决,但是有了一些小工具,解决这些问题就得心应手了,今天就为大 ...

  4. android对应版本号

    android对应版本号 Platform Version API Level VERSION_CODE Notes Android 4.2 JELLY_BEAN_MR1 Platform Highl ...

  5. ANDROID PAD版本号 PHONE版本号 源代码有什么 差别?

    ANDROID PAD版本号 PHONE版本号 源代码有什么 差别? 直接把frameworks/base/core/res/res/values/config.xml里面的<bool name ...

  6. Android开发效率的小技巧

    提高eclipse使用效率(二) 提高Android开发效率的小技巧   XML文件的代码提示 adt中也有xml文件的代码提示,为了让提示来的更加猛烈,我们还要设置一下 打开eclipse - Wi ...

  7. Android SDK版本号 与 API Level 对应关系

    转自:https://blog.csdn.net/qiaoquan3/article/details/70185550 Android SDK版本号 与 API Level 对应关系   新接触And ...

  8. Android SDK版本号与API Level 的对应关系-转

    Android SDK版本号 与 API Level 对应关系 http://developer.android.com/guide/appendix/api-levels.html Android ...

  9. Android -BLE蓝牙小DEMO

    代码地址如下:http://www.demodashi.com/demo/13890.html 原文地址: https://blog.csdn.net/vnanyesheshou/article/de ...

随机推荐

  1. nginx负载均衡和反相代理的配置

    偷懒,参考这里 https://www.cnblogs.com/taiyonghai/p/6728707.html

  2. exec和sp_executesql

    sqlserver中的exec和sp_executesql都能执行动态的sql语句和存储过程,但exec用法较为简单,不能带参数,也没有返回参数. sp_executesql则显得功能更加完善,可以用 ...

  3. oozie 安装过程详解

    1.从apache的官网下载oozie3.3.2 2.编译oozie,以下命令用root来执行吧,它不做任何的测试的,因为一测试就会出错的 官网估计也知道,所以顺便也提供了一个跳过参数的命令... b ...

  4. python多线程生产消费

    #!/usr/bin/env python# -*- coding: utf-8 -*- from threading import Threadfrom Queue import Queueimpo ...

  5. 【C】——sigprocmask 阻塞进程信号

    1.有时候不希望在接到信号时就立即停止当前执行,去处理信号,同时也不希望忽略该信号,而是延时一段时间去调用信号处理函数.这种情况是通过阻塞信号实现的. 2.信号阻塞和忽略信号的区别. 阻塞的概念和忽略 ...

  6. CREATESTRUCT cs 结构体

    PreCreateWindow(CREATESTRUCT& cs) typedef struct tagCREATESTRUCT { LPVOID lpCreateParams; // 创建窗 ...

  7. Change Data template dynamically

    1. Attached Property bound to task state. Any change will dynamically set data template.2. Visual St ...

  8. USB学习笔记连载(八):FX2替换到FX2LP需要注意事项

    对于使用FX2的用户,可以升级到FX2LP,上述的应用笔记<AN4078-C>中就讲解了在升级中的注意事项.   必要的修改:   1.晶振的匹配电容需要更改,FX2LP是12pF,不过笔 ...

  9. 关于Unity中的光照(二)

    光源 1: 光照的本质:就是光的颜色和物体纹理的颜色的混合;2: 光源类型: 点光源,定向光源,聚光灯, 区域光源; 区域光的范围会在场景中用黄色的光显示出来; z轴是光的方向; 光的强度会随距离衰减 ...

  10. linux sh 读取文件内容,if判读语句,变量var打印

    #!/bin/bash #1 读取文件 并显示 cat state.txt | while read line do echo $line done #2 读取文件 并显示 cat state.txt ...