2012-06-20 26 views
1

我正在構建自己的視圖以顯示視頻,並且我想將自定義視圖基於內置的Android VideoView。因此,我正在尋找VideoView的源代碼。我在Stackoverflow和別處找到的大多數帖子都指向了grepcode。不幸的是,grepcode上的代碼似乎並不是代碼developer.android.com中記錄的代碼,並且不太可用。 例如,grepcode上的VideoView.java引用了從View繼承的mContext對象,但在sdk的視圖中不可用。此外,VideoView還會調用MediaPlayer的恢復方法,該方法在標準MediaPlayer類中也不可用。 我在哪裏可以找到developer.android.com上記錄的源代碼?適用於Android 2.2的可用VideoView源代碼

謝謝, 萬斯

回答

1

首先,機器人基座框架是開源的,存在來自grepcode源代碼和從github原來之間沒有差異。它們都有優點和缺點,grepcode中的源代碼是通過API級標記的,因此可以輕鬆導航特定版本的API類,其中github中的源代碼對每次提交都有完整的更改歷史記錄,但有點複雜以便查找/檢索早期版本的特定API類。

上grepcode的VideoView.java引用了從View繼承,但在developer.android.com SDK

mContext被標記爲android系統@hide的視圖不可用的mContext對象。 view.View,請參閱head version in github

VideoView調用MediaPlayer的恢復方法,該方法在標準MediaPlayer類中也不可用。

恢復()在android.media.MediaPlayer被標記爲@hide,見earlier version in githubtag 2.2_r1.1 in grepcode

一般來說,谷歌提供給消費者開發者的開發API(android.jar)已將com.android.internal@hide API剝離。但是,安裝在實際設備上的運行時API(framework.jar)具有一切。

如果您想在自己的代碼中使用這些內部API和隱藏API,解決方案是使用java反射或在他的博客here中解釋的解決方法inazaruk。

希望這是有道理的。

相關問題