zoukankan      html  css  js  c++  java
  • NOSDK--一键打包的实现(四)

    1.4 打包及签名的脚本介绍

      我们使用ant来实现打包,这节我们先介绍脚本内容,关于脚本环境配置问题,我们将在下节做一个详细的介绍。

      首先我们来看下build_android/tools/platform_package.sh脚本,首先它先调用了platform_copy.sh脚本,build_android/tools/platform_copy.sh脚本我们先不介绍,将在统一接入的文章里进行说明。第一部分的ProjectName变量是build_某某(可以是xiaomi,xx,uc等)中的SDKDIR,用以定义apk的输出文件名,ProjectSourceName在proj.android/build.xml的第二行定义的,这个可以不作改动。第二部分会先创建输出路径,然后使用ant打包,如果成功了的话,在proj.android/bin目录中会生成MyGame-release-unsigned.apk文件,然后开始签名,生成签名包,并将签好名的包拷贝到输出路径。这里~/keystore/keystore是数字证书,相关信息如下表所示:

    • keystore文件位置: ~/keystore/keystore
    • keystore密码: mygame
    • keystore alias:mygame
    • keystore alias密码:mygame
    #!/bin/bash
    
    #拷贝工程相关的文件
    source "./platform_copy.sh"
    
    #工程名
    ProjectName=`basename "$1"`
    #执行ant以后得到的包得名称,可以在build.xml处更改
    ProjectSourceName="MyGame"
    
    #清理打包数据
    ant clean
    #打包
    ant release >> $ANT_LOG
    version="051"
    BUILDDATE=`date +%Y%m%d%H%M%S`
    
    mkdir "$out_path"
    
    if [ -e bin/${ProjectSourceName}-release-unsigned.apk ]; then
        echo mygame | jarsigner -verbose -keystore ~/keystore/keystore -signedjar bin/${ProjectName}_${version}_signed.apk bin/${ProjectSourceName}-release-unsigned.apk mygame
    fi
    
    mv bin/${ProjectName}_${version}_signed.apk "$out_path"/${ProjectName}_${version}_${BUILDDATE}.apk

      这一节到此就结束了,这一节我们介绍了自动打包及签名的脚本内容,下一节我们将详细介绍mac上环境的配置及脚本的使用。

  • 相关阅读:
    Windows脚本 Bat批处理命令使用教程
    [Jobdu] 题目1420:Jobdu MM分水果
    排序算法的时间复杂度和空间复杂度
    (转) CS的顶级会议和期刊
    句柄是什么?1
    批处理for命令详解(转)
    cmd批处理常用符号详解
    【转帖】请问两个大于号>>代表什么意思?
    今天玩angry birds
    C/C++数组名与指针区别深入探索
  • 原文地址:https://www.cnblogs.com/nottvlike/p/4653610.html
Copyright © 2011-2022 走看看