2014-01-15 35 views
2

我正在嘗試編譯Android的Gallery App源代碼,該代碼目前在Google Source上公開。從源代碼構建捆綁的Android Google Apps

我已經在這個過程中的一些問題,所以我會回顧一下我做:

  1. 克隆從git倉庫
  2. 導入基於Eclipse
  3. 項目
  4. 添加framework.jar和core.jar從源代碼庫訪問隱藏和內部的API。 (作爲回答here

不過,我還是得到了一些實例變量的編譯器錯誤(例如從TextView的派生類:mScrollX,mRight等)。其中一些被標記爲超級祖先的保護,所以他們不能從源代碼解析(如看到here

我對其他Android內部類的其他類似的問題。在配置環境以編譯這些類型的應用程序時,我錯過了些什麼?

+1

是的,這些應用程序不打算針對Android SDK構建,而僅僅作爲完整系統構建的一部分。我的回憶是,官方的說法是,只使用公共API來獲取它們對SDK的清理是可取的,但不被視爲優先事項。 –

回答

2

所以我給了這個鏡頭,將Gallery項目導入到eclipse中,並將framework.jar文件添加到構建路徑,並且一旦所有事情都已正確完成,就沒有編譯器錯誤。

我也注意到,我將讓你得到時,framework.jar文件沒有位於訂單和出口的頂部相同的編譯器錯誤,所以我會仔細檢查您的訂單和出口標籤,並確保它是在最頂端(和其他回答者說的一樣,主要在android.jar上面)。

我也不需要core.jar,這對Gallery應用程序來說不是必需的。事實上,對於我所有的系統開發,我仍然不需要導入更多的frameworks.jar文件,我很想知道你從哪裏獲得這些信息。

希望這會幫助你建立它作爲一個apk,雖然你可能無法安裝它(我當然無法)。既然你的問題是專門關於建設,這應該讓你開始。作爲一個額外的,this xda forum有一個安裝apk獲取SHARED_USER_INCOMPATIBLE錯誤的快速指南。這是一個黑客,但如果你想要做的只是測試一些東西,那麼它可能是最簡單的方法。

+0

感謝您對此的澄清。我已經能夠安裝.apk從AndroidManifest.xml中刪除sharedUserId,如[回到] [http://support.microsoft.com/kb/15937929/604832]。 –

+0

感謝您鏈接到答案,這比我連接的XDA文章中建議的要容易。很高興聽到事情解決 –