• NOSDK--一键打包的实现(五)


    1.5 mac下的脚本环境配置及脚本的使用

      脚本环境主要依赖sdk,ndk和ant,前两个可以在android官方网站下载(被墙了的话只能翻墙了)。

      第一步,clone工程到本地

      打开终端,cd到你希望创建工程目录的位置。nottvlike是我的用户名,记得改成自己的。

    cd /Users/nottvlike/Documents/github

      clone nosdk项目

    git clone https://github.com/nottvlike/nosdk.git nosdk

      /Users/nottvlike/Documents/github/nosdk/projects/main是工程所在位置。

      第二步,添加目录到PATH,更改~/.bash_profile(没有的话创建一个新的)。

      执行以下脚本,打开~/.bash_profile

    vi  ~/.bash_profile

      将以下内容添加到~/.bash_profile文件末尾,前三个路径记得改下。

    export NDK_ROOT=/Users/nottvlike/Documents/program/android-ndk-r9d
    export ANDROID_SDK_ROOT=/Users/nottvlike/Documents/program/android-sdk-macosx
    export ANDROID_ANT_BIN=/Users/nottvlike/Documents/program/apache-ant-1.9.4/bin

    export ANDROID_HOME
    =$ANDROID_SDK_ROOT
    export PATH=$NDK_ROOT:$PATH
    export PATH
    =$ANDROID_SDK_ROOT:$PATH
    export PATH
    =$ANDROID_ANT_BIN:$PATH
    export PATH
    =$ANDROID_SDK_ROOT/tools:$ANDROID_SDK_ROOT/platform-tools:$PATH

      保存文件并退出,同时按住shift和;按键,左下角出现冒号以后输入x然后再输入enter,返回到终端界面。

      执行以下命令,刷新PATH变量

    source ~/.bash_profile

      第三步,更改build_native.sh

      打开/Users/nottvlike/Documents/github/nosdk/projects/main/build_android/tools/build_native.sh(可以用xcode,sublime等)

    SDK_ROOT="$HOME/Documents/program/android-sdk-macosx"
    NDK_ROOT="$HOME/Documents/program/android-ndk-r9d"

      更改这两个路径,和之前.bash_profile里的路径一致。

      第四步,添加keystore

      将/Users/nottvlike/Documents/github/nosdk/projects/main/keystore目录拷贝到家目录中(~/或者/Users/nottvlike/),记得是目录(等我先上传下,2015.07.17记)。

      这样环境就配置完成了。下面我们可以测试下,首先进入平台目录,

    cd /Users/nottvlike/Documents/github/nosdk/projects/main/build_android/platform

      执行以下指令,编译,拷贝资源,并打包uc平台的包,不出意外的话,~/Desktop/apk里应该有apk了

    ./build_uc.sh -b mk -c -p

      执行以下指令,切换到小米平台,并打包小米平台的包

    ./build_xiaomi.sh -p

      执行以下指令,切换到无平台(app版本),并打包

    ./build_noplatform.sh -p

      大家应该发现,其实编译只执行了一次,后面几个平台的包都没有编译过,直接就打包了,这即是统一接入的好处,这些东西我们将在下一章介绍统一接入的时候再详细介绍。

  • 相关阅读:
    UISegmentControl
    UISegmentControl,UISwich,UIPageControl
    UIPageControl,UISlider
    UISlider
    触摸事件,响应者链和手势
    NIO Socket
    处理多线程问题的工具类
    Java多线程疑难点
    软中断和硬中断的联系与区别
    进程—内存描述符(mm_struct)
  • 原文地址:https://www.cnblogs.com/nottvlike/p/4653911.html
Copyright © 2020-2023  润新知