Android封装SDK的使用

介绍 Android 封装 SDK使用前,先了解几个文件格式:

so 库:是 C 或 C++ 语言而打包成的库;

jar 包:里面包含了 class 文件与清单文件,不包括图片、页面等资源文件,是 Java 常用的方式;

aar 包:里面包含了所有资源,包括图片、页面等,是 Android 常用的方法;

了解完这三种文件格式,下面就来介绍一下用 AS 打 aar 包;

新建一个项目,完成后,点击 File ==> New ==> New Module ,如下图所示:

然后选择第二个 Android Library ,如下图所示:

然后完成即可,就可以看到,已经创建好了 Module ,如下图:

然后在 app 的 build.gradle 下添加下面的代码,应用 mylibrary :

implementation project(path: ':mylibrary')

如下图所示:

编译完成,为了测试 mylibrary 库,去添加一个 LibraryActivity ,里面的代码如下:

/**
 * wuqingsen on 2019-11-21
 * Mailbox:[email protected]
 * annotation:
 */
public class LibraryActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_library);
    }
}

新建  activity_library.xml 文件,代码如下:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical">

    <TextView
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:text="这是测试SDK"
        android:gravity="center"/>

</LinearLayout>

代码添加完成,给出完整图片,方便观察:、

最后去 app 的 AndroidManifest.xml 文件中加入下面代码:

<activity android:name="com.example.mylibrary.LibraryActivity" />

完整图片如下,不要加错了:

为了测试该 activity ,在 MainActivity ,加入跳转,代码如下:

public class MainActivity extends AppCompatActivity {

    Button btn_SDK;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        btn_SDK = findViewById(R.id.btn_SDK);
        btn_SDK.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Intent intent = new Intent(MainActivity.this, LibraryActivity.class);
                startActivity(intent);
            }
        });
    }
}

加入完成,运行,如下图所示:

可以看到,成功进入到的 SDK 中;

下面就来把 mylibrary 打包成 aar 格式的包,在 Terminal 中输入下面的命令,进行打包:

 gradlew assembleRelease

打包成功,如下图所示:

然后去 mylibrary ==> build ==> outputs ==> aar 就可以看到我们打好的 aar 包了,如下图:

下面来测试一下这个 aar 文件是否可以正常使用,先将改 aar 文件放到 libs 文件夹下面,如下图:

再将 mylibrary 删除,点击 File ==> Project Structure ,方法如下图:

再去 app 下的 build.gradle 中添加如下代码:

implementation files('libs/mylibrary-release.aar')

如下图所示:

编译后,没有错误后,运行和上面 gif 图中效果一样就对了,OK 我报出了下面的错误:

Installation did not succeed.
The application could not be installed.
Installation failed due to: 'device 'DRGGAM0850203673' not found'
Retry

将手机上面的该 APP 卸载,再运行,OK 成功。

到这里, AS 封装一个 SDK 的简单实用就完成了,可以根据项目来改变 SDK 中的代码,以便别人使用。

如果有兴趣可以往下看;

打开我们的 mylibrary,可以看到里面包括 class 文件和 res 全部内容,如下图所示:

到这里就结束了。

写完之后,想到一个问题,如何只依赖,也就是将项目发布到 jitpack 让更多的人使用;

参考这个链接:Android 发布项目到jitpack

发布了322 篇原创文章 · 获赞 450 · 访问量 32万+

猜你喜欢

转载自blog.csdn.net/wuqingsen1/article/details/103178567