1. 程式人生 > >Android SDK製作流程

Android SDK製作流程

如何讓自己的SDK更安全?讓自己的邏輯對使用者完全透明? 

1.利用好混淆 

2.建造者模式 

3.儘量丟擲異常,讓接入者看到

在Android Eclipse時代,如果你有一個Android Library專案,可以很容易的匯出jar檔案,然後在其他專案中很方便的引用,

aar和jar類似,區別就是一個Android Library專案匯出的jar檔案不能包含資原始檔,比如一些drawable文件、xml資源等,

所以這就有很大的限制,在gradle之前我們要引用帶資原始檔的Android Library必須要把整個library匯入進來進行引用,

但是有了gradle之後,Android Library專案可以直接匯出成aar,然後其他專案像引用jar的方式直

接方便的引用。

aar檔案其實是一個Android Library專案的二進位制包。 

aar檔案(.zip)的格式如下。

  • /AndroidManifest.xml (必須)
  • /classes.jar (必須)
  • /res/ (必須)
  • /R.txt (必須)
  • /assets/ (可選)
  • /libs/*.jar (可選)
  • /jni//*.so (可選)
  • /proguard.txt (可選)
  • /lint.jar (可選)

1、先使用Android Studio(寫博文用的是AS3.0)建立專案工程;

2、在專案裡面新建一個module;新建一個Class檔案,然後新增一個方法(這個方法是要提供給別人使用的),例如:

3、在module的gradle裡面新增下面的內容(注:檔案最外層新增),如下圖:

task makeJar(type: Copy){
    delete 'build/libs/test.jar'
    from('build/intermediates/bundles/default/')
    into('build/libs/')
    include('classes.jar')
    rename('classes.jar','test.jar')
}

makeJar.dependsOn(build)

4、點選Sync Now,等Android Studio執行完成後,點選右上角的Gradle按鈕,如下圖:



5、雙擊makeJar按鈕,等到執行結束,就可以看到build/outputs/aar這個資料夾下面生成了.aar檔案


6、先把 .aar複製到要使用的專案的libs下,build.gradle裡面新增如下依賴


7、如何使用


8、注意事件:

1、編譯時會報jar衝突,因為你的arr檔案引用了和目前專案相同的jar包,刪除當前專案的jar包,讓它引用arr檔案裡的jar包。

2、arr檔案中的類名和佈局命名不要和當前專案相同,否則arr檔案的類名和佈局會找不到或者arr檔案裡會引用當前專案的資源

3、arr檔案中的在application裡需要初始化的東西都需要在當前專案的application裡面初始化,因為那第一個宣告的才會被PackageManager解析,才是有效的。

9、感謝如下小夥伴:

1.http://blog.csdn.net/myislijingjing/article/details/54289581

2.https://www.2cto.com/kf/201711/700840.html

3.http://blog.csdn.net/david_dyk/article/details/51648334

4.https://www.jianshu.com/p/c203f6afc06a