简述Android SDK制作流程

  1. SDK“坑不坑”?
  2. SDK“难不难”?
  3. 如何封装用户接口?
  4. Android Studio 打包混淆aar


1 . SDK“坑不坑”? 
没有接触过SDK研发的人可能不觉得,SDK研发费时费力,并且没有什么成就感。你写的做的,最终结果你并不能看到。最重要的是,一个SDK完成后,你会感觉到居然什么都没有得到?(有点小夸大哦)当对于普通的APK研发,SDK还是比较坑的。



2 . SDK“难不难”? 
在eclipse时代,怎么加载类?怎么加载资源?怎么让开发者更快更简单的接入?还是比较困难的。



3 .如何封装用户接口? 
以上两点都是在扯。言归正传,如何让自己的SDK更安全?让自己的逻辑对用户完全透明? 
* 利用好混淆 
* 建造者模式 
先看下我SDKdemo的目录结构

总体的架构采用MVP。最近超喜欢用这种模式,比MVC更好理解,解耦性更好,就是接口写的多了点。重点看admin包。这个包的主要功能是暴露给用户的。也就是说SDK中一切提供给用户的API接口都写在这个包中。当混淆时候只忽略这一个包即可。建造者模式构建用户接口,优缺点不必多说。唯一重点想提的一个小细节。

 @Override
    public void GoToActvity(Context context) {
        if (Constant.sdkInstance.getUserAppName() == null)
            throw new IllegalArgumentException("UserAppName can not be null");
        if (Constant.sdkInstance.getUserChannel() == null)
            throw new IllegalArgumentException("UserChannel can not be null");
        if (Constant.sdkInstance.getUserKey()==null)
            throw new IllegalArgumentException("UserKey can not be null");
        Intent intent = new Intent(context, SdkActivity.class);
        context.startActivity(intent);
    }

像这种异常一定要跑出来让接入者看到,会让你省去很大麻烦。demo我会在最后贴出下载地址。



4.Android Studio 打包混淆aar 
首先配置混淆,在你的SDK项目build.gradle中配置,如图

其次配置你的proguard-rules.pro文件,这里提供一个模版哦,http://www.jianshu.com/p/f3455ecaa56e 非常不错。然后就可以生成aar包了,第一你可以运行下项目(这种太low)。或者你可以在控制台下输入gradlew如图。

最终你的aar会生成在这里。。。上图

对了,如何使用aar那?

具体代码详情请看github 转载:David_DYK

下载地址:https://github.com/duanyikang/Develop-SDK

时间: 2024-10-13 14:16:59

简述Android SDK制作流程的相关文章

[android开发篇][android studio 和elipse都需要的流程 android sdk的安装

第三步.下载并安装AndroidSDK 前面两步,我们已经配置了JDK变量环境,并安装好了Eclipse,通过这两步之后Java的开发环境就准备好了,如果我们只是开发普通的JAVA应用程序的话,那么到这里就可以了.但如果我们要通过Eclipse来开发Android应用程序的话,那么我们还需要下载Android SDK(Software Development Kit)和在Eclipse上安装ADT插件. 首先,下载Android SDK Tools,翻过墙的朋友可以去Google Android

用Cubism 2制作自己的Live2D(尝试向)——android sdk样本的下载与Android studio编译!

前言- 在浏览Live2d说明书的时候我无意中发现了一个有趣的东西,就是android sdk中居然自带动态壁纸!那就让我们来试试吧,说明书此页的网址连接——中文版||日文版 Android开发所必需的环境- 没啥说的,没有的可以跳过了,真的想试试的可以试试说明书上的#01 Android開發必要的工具,不过不要轻信上面显示的30分钟就是了.在这里我用的是Android studio SDK的下载- 地址(日文网站破校园网打不开233回头不上,一定) baidu盘     提取码:19jm 下载

Android SDK上手指南 3:用户交互

在这篇教程中,我们将对之前所添加的Button元素进行设置以实现对用户点击的检测与响应.为了达成这一目标,我们需要在应用程序的主Activity类中略微涉及Java编程内容.如果大家在Java开发方面的经验不太丰富也没必要担心,只要按步骤进行即可完成学习.我们将在本系列的下一篇文章中深入探讨Java语法,从而保证大家了解初步Android开发任务中所必需的编程语言知识. 大家可以在Android当中以多种不同方式实现用户交互.我们将学习两种最为典型的处理方案,从而实现应用按钮对用户点击的感应--

Android SDK上手指南 2:用户界面设计

http://mobile.51cto.com/ahot-419184.htm 内容简介 我们将为应用程序项目添加布局方案,在这方面XML与Eclipse ADT接口将成为工作中的得力助手--不过在后面两节中还会用到一部分Java开发知识.XML与Java在Android平台的开发工作当中可谓无处不在,如果大家对二者还缺乏基本的了解,请尽快想办法补补课.对于刚刚入门的读者朋友来说,本文所介绍的要点将成为各位日后开发工作的重要基础. 1. XML基础知识 在我们开始讨论布局之前,先来梳理作为标记语

Qt on Android: Android SDK安装

之前我在 <Windows下Qt 5.2 for Android开发入门>一文中介绍了 Windows 下 Qt on Android 开发环境的搭建,略过了 Android SDK 的安装,实际还是有一些朋友会在这里遇到问题.这里再专门介绍一下 Android SDK 的安装. 版权全部,转载请注明出处:http://blog.csdn.net/foruok Android SDK 能够到这里下载:http://developer.android.com/sdk/index.html . 假

Android 框架启动流程

As we all know,Android手机系统本质上是一个基于Linux的应用程序,它以Linux系统为内核.因此系统的启动过程包括Linux内核启动和Android框架启动两个阶段. Linux内核启动 1.装载引导程序bootloader Linux内核启动时首先装载执行bootloader引导程序,装载完成后进入内核程序. 2.加载Linux内核 Linux内核加载主要包括初始化kernel核心(内存初始化,打开中断,初始化进程表等).初始化驱动.启动内核后台(daemons)线程.

我的Android进阶之旅------&gt;Android SDK支持的配置标识符(有用的参考文件)

Android SDK支持的配置标致符 配置标识符 标识符值 描      述 MCC   MNC 例子: mcc310: MCC310-MNC004: MCC208-MNC00 MCC(移动国家代码,Moblie Country Code)和可选的MNC(移动网络代码,Moblie Network Code)是从SIM卡中读取的信息.例如,mcc310表示美国的运营商,mcc310-mnc004表示美国的Verizon运营商,mcc208-mnc00表示法国的Orange运营商. 如果设备使用

Android APK打包流程

简单build流程图 官网给了我们一张非常简单的编译.打包.apk生成内容以及签名的图片.图片大体介绍了从Project到运行到设备或者模拟器的一个大体流程,我们也从中看到一个完整的apk包含如下内容:一个或多个dex文件.resources.arsc.未编译的资源文件以及AndroidManifest.xml文件等等 详细build流程图 官网给了我们一张非常清晰的打包流程图: 编译打包步骤: 1. 打包资源文件,生成R.java文件 打包资源的工具是aapt(The Android Asse

Android中制作自定义dialog对话框的实例

http://www.jb51.net/article/83319.htm 这篇文章主要介绍了Android中制作自定义dialog对话框的实例分享,安卓自带的Dialog显然不够用,因而我们要继承Dialog类来制作自己的对话框,需要的朋友可以参考下 自定义dialog基础版很多时候,我们在使用android sdk提供的alerdialog的时候,会因为你的系统的不同而产生不同的效果,就好比如你刷的是MIUI的系统,弹出框都会在顶部显示!这里简单的介绍自定义弹出框的应用. 首先创建布局文件d