簡體   English   中英

gradle合並應用程序+庫項目中的清單后,該活動的最終包名稱是什么?

[英]What's the final package name of an activty after gradle merges manifests in a app+library project?

我有一個由項目和圖書館項目組成的項目。 他們兩個都有自己的清單。

庫項目具有所有活動定義(以及幾乎所有代碼)。 該應用程序項目有一個清單,其中僅定義了Application類。 (如果您問為什么我有這種結構是因為我有一個公共庫,並且我創建了多個應用程序項目來更改主題和api調用)

我的問題是,當我必須在平台(例如Facebook)中定義初始活動類名稱時,是否應該使用清單文件中定義的圖書館項目軟件包名稱? 或gradle將其與我的應用程序項目包名稱合並?

例:

com.app.finalproject是我的應用程序包名稱。

com.commonlibrary.ui.SplashActivity是我的初始活動的常用包名稱,它是在我的公共庫項目清單中定義的。

因此,在gradle合並兩個清單之后,我的SplashActivity的軟件包名稱是什么? 還是com.commonlibrary.ui.SplashActivity還是com.app.finalproject.ui.SplashActivity之類的東西?

提前致謝。

嚴格來講,活動沒有包名稱。

實現活動的Java類將在Java包中。 該包由類文件頂部的package行以及Java類所在的目錄表示。 這些都不受清單合並過程的影響。

有時,您需要活動或其他組件的完整ComponentName 在這種情況下, ComponentName的包部分將是應用程序ID。 ComponentName的Java類部分仍將使用其常規Java包。

使用您的示例,如果我正確理解它,則該活動仍然是com.commonlibrary.ui.SplashActivity 該活動的ComponentNamecom.app.finalproject/com.commonlibrary.ui.SplashActivity

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM