Skip to content

Instantly share code, notes, and snippets.

@thinkgarden
Last active October 24, 2020 04:13
Show Gist options
  • Save thinkgarden/d9f277a1f5334cab4df5bda3212d4813 to your computer and use it in GitHub Desktop.
Save thinkgarden/d9f277a1f5334cab4df5bda3212d4813 to your computer and use it in GitHub Desktop.
[android] android build config

adb 常用命令

adb connect [ip]:[port] 连接机顶盒(默认端口为5555)

adb devices 查看所有连接设备 名称、ip、端口已经状态( device 或 offline )

adb install [apk 安装包所在路径(如:d:\a.apk)] 将对应路径的 apk 安装包安装到机顶盒

adb install -r [apk 安装包所在路径(如:d:\a.apk)] 将对应路径的apk 安装包强制(覆盖)安装到机顶盒

adb -s [设备名称或设备IP:端口] install [apk 安装包所在路径(如:d:/a.apk)] 当 adb 连接多个设备时,将 apk 安装到指定设备中

通过 -s [设备名称或设备 IP:端口] (例如:adb -s 192.168.192.196:5555 d:\apk 指定 IP 为 192.168.192.196 端口为 5555 的设备)。其中 -s 192.168.192.196:5555 要紧跟在 adb 后面,**其他的 adb 命令,也可以通过这种形式对指定的设备进行操作。 ** 当 adb 指令使用时,出现 more than one device and emulator 错误提示时,需要用该方式指定需操作的设备。

adb uninstall [应用包名,例如:com.example.tmall] 卸载应用(通过包名指定)

adb shell 进入系统目录(通过 exit 退出)

adb shell am start -n [包名]/[包名+类名] 启动指定类名的 Activity

awesome-adb

JNI

Android项目里会看到不少jni,JNI (Java Native Interface),中文为Java本地接口,提供了若干的API实现了Java和其他语言的通信(主要是C&C++),允许Java代码与其它代码进行交互。

NDK

JNI的开发工具包即是NDK (Native Development Kit),所以如果需要使用C++等语言开发Android,则需要NDK工具包,AndroidStudio插件管理可以安装。AndroidStudio默认不安装NDK,因为如果使用JAVA开发Android是不需要NDK工具包的。 Android SDK

Android SDK是一个统称,包含着以下这些东西:

  • Android SDK 开发工具包
  • AVD 安卓模拟器
  • ADB(Android Debug Bridge) 安卓调试连接桥
  • Build-Tools 编译构建工具集
  • Platform-Tools

构建工具

构建工具除了以上提到的编译、运行、签名、打包等,还具备依赖管理的功能,什么是依赖管理呢? Gradle Wrapper

在Android目录下面,使用 ./gradlew -v 命令查看gradle配置。 gradle

Android 项目包含的 Gradle 配置文件 gradle

React-native 环境搭建 app/build.gradle

这个文件是 app 文件夹下这个 Module 的 gradle 配置文件,也可以算是整个项目最主要的 gradle 配置文件,具体里面的配置以后再介绍。

gradle 目录

这个目录下有个 wrapper 文件夹,里面可以看到有两个文件,我们主要看下 gradle-wrapper.properties 这个文件的内容:

distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://wtff.oss-cn-shanghai.aliyuncs.com/gradle-3.1-bin.zip

build.gradle

这个文件是整个项目的 gradle 基础配置文件,默认的内容就是声明了 android gradle plugin 的版本。

buildscript {
    repositories {
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:2.2.3'

        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}

settings.gradle

这个文件是全局的项目配置文件,里面主要声明一些需要加入 gradle 的 module

include ':app', ':jpush-react-native', ':jcore-react-native'

project(':jpush-react-native').projectDir = new File(rootProject.projectDir, '../node_modules/jpush-react-native/android')
project(':jcore-react-native').projectDir = new File(rootProject.projectDir, '../node_modules/jcore-react-native/android')

升级build-tools

在命令行下打开sdk-manager

cd ~/Library/Android/sdk/tools
执行 ./android 
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment