2014-08-31 67 views
0

當初次嘗試複製Android Studio項目時,我複製了finder中的項目文件夾,將其重命名爲AS使用「導入項目」重構軟件包並編輯清單。起初,它似乎在我的設備上運行沒有任何問題。Android Studio:「導入項目」和「打開項目」在打開重複項目時遇到問題

但後來我注意到,每次我在設備上運行原始應用程序或重複應用程序時,都會替換主屏幕上的其他圖標。

我找到了一個解決方案,說不使用「導入項目」,而是使用「打開項目」來打開副本。這樣做可以解決應用程序的最初問題,而用另一個應用程序取而代之,但打開了一整套新蠕蟲,其中重複項目中的某些指針指向原始項目中的文件和文件路徑。顯然這是一個已知的錯誤。不過,我還沒有向谷歌證實過這一點。

搜索解決方案,只能導致「你需要使用‘導入項目’而不是‘打開項目’,當然這需要我回到原來的問題。任何想法?

+0

我已經看到這個問題在很多方面被問及一百萬次。可能希望對問題進行投票,以便人們知道現在是時候有一個合理的答案。 – dbconfession 2014-09-02 22:56:55

回答

1

Android使用Gradle構建文件中的applicationId在AndroidManifest.xml中設置package屬性;這個字符串被Android設備用來消除應用程序的歧義。如果您安裝了應用程序,它將使用該包ID替換任何其他安裝。在Project Structure> Flavors> defaultConfig中更改值,或者直接在構建文件中修改它。

請注意,如果您嘗試在AndroidManifest.xml中直接更改它,它將在構建時被build.gradle中的內容覆蓋;您需要在構建文件中對其進行修改。

+0

工作。謝謝。如何在重構完成時不更新?這是一個錯誤還是邏輯呢? – dbconfession 2014-09-02 21:22:33

+0

應用程序ID與代碼出現的包不同。僅僅因爲你改變了一個並不意味着你需要/想要改變另一個。 – 2014-09-02 21:26:31

+0

所以這只是一個巧合,包和應用程序ID是在相同的確切格式? (不是諷刺)。 – dbconfession 2014-09-02 22:16:58

-1

而不是試圖複製項目Eclipse之外,嘗試複製它在Eclipse中,這樣的:

複製並粘貼您的項目(Ctrl + C,然後按Ctrl + v)

更改您的清單包名稱

重新命名包名與折射器右鍵點擊包裝。

在您的清單中更改您的應用程序名稱。

這將爲該項目創建一個新的源文件夾,並且它已經在Eclipse中擁有新項目。

+0

我沒有使用Eclipse。如上所述,我正在使用Android Studio。正如您所指出的那樣,在IDE中進行復制使得在使用Eclipse時這個問題變得毫無意義。 – dbconfession 2014-08-31 23:19:56

+0

「這些步驟應該也適用於Android Studio」http://stackoverflow.com/questions/18324555/android-copy-existing-project-with-new-name-in-android-studio – user1282637 2014-08-31 23:22:53

+0

它不。我也看過那篇文章。 – dbconfession 2014-08-31 23:24:35

0

嘗試刪除duped dir中的* .iml,然後導入。