我們平時建立項目有些朋友可能當時就是随意寫的一個包名,然後在項目過程中, 又感覺這個包名不太好,是以就要對包名進行修改,根據我們正常的修改方式,是這樣的。
在種情況是隻能修改最外層的那個名稱,
如果我們現在是需要修改中間的某一個,這裡就行不通了。
那麼我們來看一下如何修改成你最終要的包名。
操作圖如下:
看到沒有,我們隻需要在setting裡面,把 compact empty middle packages 這個選項去掉,這樣,我們的包的層次結構就分開了,這個時候我們就可以根據自己的需要去做相應的修改了。
另外說明一點,在 Studio 裡面我們的 getPackageName 對應的是 applicationId , 而manifest 的那個package,在這裡的作用其實是為了引用内部資源檔案,以及保證 Activity 等源檔案的路徑正确而已,是以,在 Studio
中修改釋出程式包名,則隻需要在 build 檔案中修改 applicationId 就可以了。
如下圖所示:
通過修改包顯示方式,我們可以更友善的修改包名。
經過1中的操作,我們可以随意修改包的某個節點
選中所要修改包的節點
右鍵後選中-><code>Refactor</code>-><code>Rename</code>
在彈窗裡輸入要修改成什麼名字,确認
在彈窗裡選擇 修改<code>package</code>
修改目前<code>Module</code>的<code>build.gradle</code>檔案中的<code>applicationId</code>,改為跟你的包名一緻;
修改目前<code>Module</code>的<code>AndroidManifest.xml</code>檔案中的<code>manifest</code>節點裡的<code>package</code>屬性值,改為跟你的包名一緻。
以上兩個後續操作缺一不可,否則會造成很多奇特的Bug,比如<code>Id</code>沒有錯誤且存在的情況下,提示找不到<code>id</code>;還有找不到資源、某些<code>Activity</code> 無法啟動等等的Bug。
以上「3.後續操作」裡的第二操作是很多人都容易忽略的地方,不修改的話一時間也不會出現問題,如果忽略裡,以後遇到無法解決的Bug後可能需要很久才會意識到<code>AndroidManifest.xml</code> 包名的問題。
作者: 一點點征服
本文版權歸作者所有,歡迎轉載,但未經作者同意必須保留此段聲明,且在文章頁面明顯位置給出原文連結,否則保留追究法律責任的權利