本文原文鏈接:未必平凡博客 https://vv2014.com/372.html 轉載請註明出處[vv2014.com]
最近在做Android SDK的測試,因爲之前從來沒有接觸過,所以在這裏需要記錄下整個學習的進度,日後進行補充
一.關於SDK
SDK,全稱:SoftWare DeveLopment Kit,一般是一些軟件工程師偉特點的軟件包建立的開發工具集合。它可以簡單的爲某個程序設計語言提供應用程序接口API,在我們當前整個項目,SDK就是把該軟件所有的功能打包成SDK,可以在任何第三方應用中集成,方便使用。
注:我這裏所說的SDK不是指Google提供給Android開發者的那個SDK,而是指一些在不同業務場景下誕生的,可能只適用於一部分人的SDK
二.需要開發提供的內容
1.提供如下內容:
1). SDK包
2). 相關文檔,如:使用文檔,接口說明
3). 示例程序(Demo)
2.一般來說,上述標籤1所說的SDK包分兩種類型:
1). *.jar:不帶UI界面的SDK,只包含了Class文件與清單文件,不包含資源文件。如 圖片等所有res中的文件
2). *.aar:帶UI界面的SDK,包含所有資源,Class以及res資源文件全部包含。比如一些用於APP開發者方便開發分享界面的組件,會提供一些默認的UI界面(一般也會提供讓用戶自定義UI的功能)
三.環境配置
1. 測試工具:Android Studio
2. 創建工程:這裏就不詳細贅述了
3. 導入jar包:將* .jar拷貝在APP的libs的文件夾下
4. 配置Build.gradle:
在應用的build.gradle文件的dependencies中增加如下配置:(注:高於一下版本的也可以,配置需要根據SDK內容,而非無腦配置)
compile 'com.google.code.gson:gson:2.7'
compile 'com.squareup.retrofit2:retrofit:2.1.0'
compile 'com.squareup.retrofit2:adapter-rxjava:2.1.0'
compile 'com.squareup.retrofit2:converter-gson:2.1.0'
compile 'io.reactivex:rxandroid:1.1.0'
5. 配置AndroidManifest文件,並且在當前文件中配置權限,此處權限需要跟研發確認
<!--Xpush權限-->
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<!—手機權限-->
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
6. 註冊服務以及廣播,仍然在AndroidManifest.xml中配置
<!—註冊服務 -->
<service android:name="com.test.csersdk.CserSdkService" />
<service android:name="com.test.imncs.NcsImSdkService" />
<!-- 註冊廣播 -->
<receiver android:name="com.test.csersdk.receiver.XPushReceiver">
<intent-filter>
<action android:name="com.test.apushsdk" />
<action android:name="com.test.npcs.PUSHSTATE"/>
</intent-filter>
</receiver>
<receiver android:name="com.test.imncs.receiver.NcsNetworkStatusReceiver">
<intent-filter>
<action android:name="com.test.apushsdk" />
</intent-filter>
</receiver>
<receiver
android:name="com.test.imncs.receiver.NcsXPushReceiver"
>
<intent-filter>
<action android:name="com.test.apushsdk" />
</intent-filter>
</receiver>
<!-- 用於保障推送服務的正常運行 -->
<receiver android:name="com.test.pushsdk.npc.npcs.util.NPCUtilReceiver">
<intent-filter>
<!-- 用於推送服務內部消息 -->
<action android:name="com.xdja.npcs.INVITESUB" />
<!-- 用於接收系統消息,確保推送遠程服務的存在 -->
<action android:name="android.intent.action.MEDIA_MOUNTED" />
<action android:name="android.intent.action.USER_PRESENT" />
<action android:name="android.intent.action.ACTION_POWER_CONNECTED" />
<action
四. 開始測試
根據研發給出的Demo添加接口說明書的接口設計用例測試,這裏附上我一丟丟的用例設計
1. 用例設計
2. 開發提供的接口說明書,大致就需要提供如下圖這些東東
3. 自己寫在MainActivity中寫用例,怎麼酷怎麼來
public void wechat (View view){
......
}