2012-10-26 54 views
1

我剛剛完成我的應用程序的構建,並且一切都運行良好。所以我決定創建它的精簡版。我將我的android項目轉換爲android庫,並創建了一個lite項目和一個完整的項目,每個項目都引用該庫。精簡版應用程序無法啓動,因爲它無法綁定到服務(完整版本也安裝)

我以這種方式運行了我的完整版本,它效果很好。然後我嘗試運行我的精簡版,它抱怨「SecurityException:不允許綁定到服務意圖...」

它指的是我從每個活動綁定到的本地服務。

我猜測,因爲該服務在這兩個應用相同的包名,精簡版的應用程序會很困惑,並試圖連接到全面應用的服務...

我怎樣才能解決這個用盡可能少破壞儘可能?

+0

不錯的問題... – swinefeaster

回答

0

好吧,看到我沒有回覆...我想我會分享我最終做的。如果部署在兩個應用程序中,我的懷疑對於需要唯一軟件包名稱的服務是正確的。

因此,而不是一個庫和兩個項目,我現在只有一個單一的android項目。在那裏我有一個靜態標誌常量,根據我想要運行的情況而改變。我在一種情況下生成一個關閉標誌的APK。然後我重命名整個項目的包(eclipse重構)並生成另一個APK標誌,並打開它。

當標誌打開時,應用程序的某些部分被鎖定(所以lite版本)。當它關閉時,它是完整版本。

一旦完成,我恢復到基礎並清除所有更改。

這不是我希望的理想解決方案,但只需要一分鐘就可以完成。所以這不是什麼大問題。

+0

我面臨同樣的問題。 –

相關問題