Android 利用反射+try catch實(shí)現(xiàn)sdk按需引入依賴庫的方法
Android開發(fā)sdk過程中,很有可能在sdk內(nèi)部引入其他的三方sdk庫。比如開發(fā)sdk過程中可能同時(shí)包含Google和Facebook等SDK。但是接入方如果只想要接入包含Google登錄的SDK要怎么辦呢,gradle想只依賴Google的庫不依賴Facebook可以實(shí)現(xiàn)嗎?本文簡單利用反射+try catch即可實(shí)現(xiàn)按需接入,無需再新建module和考慮代碼分離的問題。
在自己SDK代碼中使用三方sdk的地方做如下處理:
原代碼:
Intent googleSignInIntent = GoogleSignIn.getClient(mLoginActivity, mSignInOption).getSignInIntent();
if (googleSignInIntent != null)
{
mLoginActivity.startActivityForResult(googleSignInIntent, requestCode);
}
處理后的代碼:
try
{
Class classGoogleSignIn = Class.forName("com.google.android.gms.auth.api.signin.GoogleSignIn");
Intent googleSignInIntent = GoogleSignIn.getClient(mLoginActivity, mSignInOption).getSignInIntent();
if (googleSignInIntent != null)
{
mLoginActivity.startActivityForResult(googleSignInIntent, requestCode);
}
}
catch (Exception e)
{
e.printStackTrace();
}
即在使用三方sdk代碼之前加上類反射的代碼,再用try+catch包起來,參數(shù)為三方sdk完整類名(包名+類名)
Class classGoogleSignIn = Class.forName("xxx");
這樣接入方直接引用自己想要接入的庫就好了,未引用的類報(bào)錯(cuò)會(huì)被catch接收,不至于閃退,簡單方便~
到此這篇關(guān)于Android 利用反射+try catch實(shí)現(xiàn)sdk按需引入依賴庫的方法的文章就介紹到這了,更多相關(guān)Android實(shí)現(xiàn)sdk按需引入依賴庫內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Android高級(jí)動(dòng)畫篇之SVG矢量動(dòng)畫范例
矢量動(dòng)畫即是在計(jì)算機(jī)中使用數(shù)學(xué)方程來描述屏幕上復(fù)雜的曲線,利用圖形的抽象運(yùn)動(dòng)特征來記錄變化的畫面信息的動(dòng)畫,本篇帶你了解在Android中的矢量動(dòng)畫2021-11-11
Android基于ViewPager實(shí)現(xiàn)類似微信頁面切換效果
這篇文章主要介紹了Android基于ViewPager實(shí)現(xiàn)類似微信頁面切換效果,通過Fragment適配器實(shí)現(xiàn)頁面切換效果,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-05-05
Android 根據(jù)EditText搜索框ListView動(dòng)態(tài)顯示數(shù)據(jù)
這篇文章主要介紹了Android 根據(jù)EditText搜索框ListView動(dòng)態(tài)顯示數(shù)據(jù)的相關(guān)資料,需要的朋友可以參考下2016-09-09
Android中Market的Loading效果實(shí)現(xiàn)方法
這篇文章主要介紹了Android中Market的Loading效果實(shí)現(xiàn)方法,較為詳細(xì)的分析了Android中l(wèi)oading效果的相關(guān)布局及功能實(shí)現(xiàn)技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-10-10
Android自定義ViewGroup之FlowLayout(三)
這篇文章主要為大家詳細(xì)介紹了Android自定義ViewGroup之FlowLayout,常用于關(guān)鍵字標(biāo)簽,搜索熱詞列表等功能,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-09-09
Android SeekBar實(shí)現(xiàn)滑動(dòng)條效果
這篇文章主要為大家詳細(xì)介紹了Android SeekBar實(shí)現(xiàn)滑動(dòng)條效果,可以改變并顯示當(dāng)前進(jìn)度的拖動(dòng),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-07-07
clipse項(xiàng)目遷移到android studio的方法(圖文最新版)
這篇文章主要介紹了clipse項(xiàng)目遷移到android studio(圖文最新版),需要的朋友可以參考下2015-10-10
Android實(shí)現(xiàn)簡易的柱狀圖和曲線圖表實(shí)例代碼
柱狀圖是統(tǒng)計(jì)圖表中經(jīng)常用到的一種圖表,比如降雨量之類的統(tǒng)計(jì)展示。這篇文章主要給大家介紹了關(guān)于利用Android如何實(shí)現(xiàn)簡易的柱狀圖和曲線圖表的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考下。2017-12-12

