我有兩個Android應用程序彼此共享其代碼的90%,並且由於政治原因(我認爲還有技術原因)需要單獨的軟件包名稱(因此它們將出現在Google Play中的不同網址下)我能以某種方式在Android中別名R嗎?
我爲每個應用程序使用兩個分支的git,並且在每次發佈之前手動同步這兩個分支。當運行這兩個分支的diff命令時,我的很多文件在實際中唯一不同的是自動生成的文件R的包名,因此對於第一個應用程序,我有15個文件,其中包含
import pkg.name.one.R;
和其他應用程序
import pkg.name.two.R;
我想在這兩個類以同樣的方式在某種程度上導入R
。
我試過像這樣包裝R:
package thescene;
public class RWrapper {
public class R extends pkg.name.one.R {}
}
(這將使RWrapper
在問候源或R
這兩個分支之間的唯一不同的文件),但可惜R
是一個final類(和我什至不知道這會工作過呢)
那麼有沒有辦法以某種方式別名R類的方式,使我可以用統一的導入語句取代import pkg.name.one.R;/import pkg.name.two.R;
?
我也開來,將解決我的同步困境:)
其更好地進口statement'導入'R和刪除使用'CTRL + SHIFT + O'不必要的包 –
對你的問題不是一個真正的答案,而是你把重複的代碼放到你從每個應用程序中引用的庫項目中,還是兩個應用程序完全分開,並且有90%的代碼相同?你應該保持R文件原樣,而不是嘗試使用相同的兩個項目 – banzai86
將共享代碼移動到android庫。然後將其包含在兩個應用程序中 – pawelzieba