在AndroidStudio中,使用Gradle打包aar到JCenter仓库!完整版教程!填补各种坑

环境

AndroidStudio 1.2.1.1正式版

本教程以我的一个测试仓库作为DEMO,名为JCenterDemo。本教程只涉及如何打包aar至JCenter仓库,如何使用git不在本教程涉及之内,所以本文只是单单在Github建立了一个同名仓库而已,不过可以推荐一个入门git教程GitBook

    本教程解决javadoc乱码问题,包含第三方依赖的javadoc打包失败问题以及install任务生成pom文件失败问题。


一.在GitHub中新建一个仓库,并记录下URL,如https://github.com/ls1110924/JCenterDemo



二.注册bintray账号

    在https://bintray.com/上注册一个账号。并记录下你的UserId和API Key,UserId即为你的登陆ID,API Key相当与一种授权,方便你可以不用填入密码就可以上传文件至仓库。



三.创建你的工程,如我创建的工程为下图


    一般来说上传至公共仓库的均为Library,所以本例也以一个Lib作为示例。并新建一个Module名为JCenterLib的Lib。


    此时工程目录结构为



四.完成你个人的库

    如本文新建了两个Handler的工具类,分别适用于Activity和Fragment。

    如这是该示例库中的适用于Fragment的Handler工具类

package com.cqu.jcenterlib;

import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.support.v4.app.Fragment;

import java.lang.ref.SoftReference;

/**
 * Created by A Shuai on 2015/5/2.
 * 适用于Fragment的Handler的抽象模板类
 */
public abstract class AbsFragmentHandler<T extends Fragment> extends Handler {

    private final SoftReference<T> mFragmentRef;

    public AbsFragmentHandler(T mFragment) {
        mFragmentRef = new SoftReference<T>(mFragment);
    
  • 1
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 13
    评论
在 Android Studio 使用 Gradle 构建工具进行编译和打包,生成 .so 动态链接库,可以按照以下步骤进行: 1. 在 Android Studio 创建一个 C/C++ 模块,选择 File -> New -> New Module -> C/C++ Library,然后按照向导设置模块名称、语言类型和支持的 ABI。 2. 在模块的 build.gradle 文件,添加以下配置: ```groovy android { // 指定支持的 ABI,包括 armeabi-v7a、arm64-v8a、x86、x86_64 等 ndk { abiFilters 'armeabi-v7a', 'arm64-v8a', 'x86', 'x86_64' } // 配置 CMakeLists.txt 文件路径 externalNativeBuild { cmake { path "CMakeLists.txt" } } } // 配置 CMake 本 cmake { version "3.10.2" } ``` 3. 在模块的 src/main 目录下创建 jni 文件夹,并将 C/C++ 代码放入该文件夹。 4. 在 jni 文件夹下创建 CMakeLists.txt 文件,并编写编译选项和链接选项,指定生成 .so 文件的名称和路径,以及引入其他依赖库等。例如: ```cmake # 设置编译选项 set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11") # 设置源文件路径 file(GLOB_RECURSE SOURCE_FILES "*.cpp") # 设置头文件路径 include_directories(${CMAKE_CURRENT_SOURCE_DIR}/include) # 配置动态库输出路径和名称 set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${PROJECT_SOURCE_DIR}/src/main/jniLibs/${ANDROID_ABI}) set(CMAKE_LIBRARY_OUTPUT_DIRECTORY_DEBUG ${PROJECT_SOURCE_DIR}/src/main/jniLibs/${ANDROID_ABI}) set(CMAKE_LIBRARY_OUTPUT_DIRECTORY_RELEASE ${PROJECT_SOURCE_DIR}/src/main/jniLibs/${ANDROID_ABI}) set(CMAKE_LIBRARY_OUTPUT_NAME "native-lib") # 引入其他依赖库 find_library(log-lib log) # 生成动态库 add_library(native-lib SHARED ${SOURCE_FILES}) target_link_libraries(native-lib ${log-lib}) ``` 5. 点击 Android Studio 工具栏的 Build -> Make Project,进行编译和打包,生成 .so 动态链接库。 6. 在模块的 build.gradle 文件查看生成的 .so 文件路径,例如: ```groovy android { externalNativeBuild { cmake { path "CMakeLists.txt" } } sourceSets { main { jniLibs.srcDirs = ['src/main/jniLibs'] } } } ``` 以上就是在 Android Studio 使用 Gradle 构建工具进行编译和打包,生成 .so 动态链接库的步骤。
评论 13
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值