Android --- Kotlin学习之路:自己写一个SDK给别的APP用(暴漏一个接口,提供学生的身高数据)

今天又来肝kotlin了,主题是:用kt写一个SDK给其他人用,这个小技能在项目中会经常用到,应该有很多小伙伴还不会用,不会的请往下看---⬇

在项目里面新建一个module

选择Android library,然后点击finish就行了

接下来你就会在项目工程下面看到刚刚所创建的module,我这里是hights

开始写接口,对外暴露了

kotlin 复制代码
package com.example.hights

object HeightInterface {
    fun getStudentHeight() : List<Double> {
        val studentHeights = mutableListOf<Double>()
        studentHeights.add(181.0)
        studentHeights.add(182.0)
        studentHeights.add(172.0)
        return studentHeights.toList()
    }
}

在文件build.gradle.kts下添加以下代码,为了后面打包用,写完下面代码,记得sync一下

kotlin 复制代码
tasks.register<Copy>("makeJar") {
    // 如果之前存在,则先删除
    delete("build/libs/mysdklib.jar")

    // 设置拷贝的文件来源
    //from("build/intermediates/aar_main_jar/debug/")

    // 生成jar包后的文件目录位置
    into("build/libs/")

    // 设置过滤条件
    include("classes.jar")

    // 重命名为 mysdklib.jar
    rename("classes.jar", "mysdklib.jar")
}

tasks.getByName("makeJar").dependsOn("build")

通过gradle打包,控制台输入:

kotlin 复制代码
./gradlew makeJar

最终打包好的aar就会输出到build/libs/下面


到另外一个app,把刚才打包好的hights-release.aar放到libs下面

并在build.gradle.kts中引入aar

kotlin 复制代码
   implementation(files("libs/hights-release.aar"))

最后随便写个main,调用SDK中的方法就可以了

kotlin 复制代码
package com.example.kotlindemo

import com.example.hights.HeightInterface

fun main() {
    val  list: List<Double> = HeightInterface.getStudentHeight()
    list.forEach() {
        println("学生的身高为:${it}")
    }
}

输出如下

kotlin 复制代码
学生的身高为:181.0
学生的身高为:182.0
学生的身高为:172.0

Process finished with exit code 0
相关推荐
Kapaseker4 小时前
一杯美式搞懂 Any、Unit、Nothing
android·kotlin
黄林晴4 小时前
你的 Android App 还没接 AI?Gemini API 接入全攻略
android
恋猫de小郭14 小时前
2026 Flutter VS React Native ,同时在 AI 时代 VS Native 开发,你没见过的版本
android·前端·flutter
冬奇Lab15 小时前
PowerManagerService(上):电源状态与WakeLock管理
android·源码阅读
BoomHe20 小时前
Now in Android 架构模式全面分析
android·android jetpack
二流小码农1 天前
鸿蒙开发:上传一张参考图片便可实现页面功能
android·ios·harmonyos
鹏程十八少1 天前
4.Android 30分钟手写一个简单版shadow, 从零理解shadow插件化零反射插件化原理
android·前端·面试
Kapaseker1 天前
一杯美式搞定 Kotlin 空安全
android·kotlin
三少爷的鞋1 天前
Android 协程时代,Handler 应该退休了吗?
android
火柴就是我2 天前
让我们实现一个更好看的内部阴影按钮
android·flutter