如果我們的library項目使用了res資源目錄下的文件,那麼我們直接打包後的jar在引用時會找不到r.xxx.xxx?利用反射根據資源名字獲取資源ID(其實系統也自帶了根據資源名字獲取資源ID的方法getResources().getIdentifier("main_activity", "layout", getPackageName());第一個參數是資源的名字,第二個參數是資源的類型,例如layout, string等,第三個是包名字)
/**
* 用android的方法找到id
* @param context
* @param defType 資源的類型
* @param name 資源的名字
* @return
*
* /
getResources().getIdentifier("test", "layout", getPackageName());
或者在打包的時候將R文件一起打包,打包jar的時候勾選src和gen包下的文件