我正在嘗試使系統應用程序工作。以下是我的:使用與系統相同的證書構建Android APK
具有完整4.4.2源代碼的OEM OMAP平臺。我已經構建了系統,並使用Ubuntu 14.04加載到我的平臺上。這一切都有效。
現在,有一個來自OEM的應用程序,它直接訪問硬件(DSP,I2C,UART)等等。來自OEM的原始APK在我的平臺上工作。
我使用make
命令(不使用Eclipse)構建完全相同的應用程序;它構建,我可以在平臺上安裝。但是當我嘗試啓動應用程序時,它會陷入永恆的等待狀態。
我不確定,但我懷疑我的本地構建的應用程序嘗試初始化板上的硬件組件,然後在那裏被阻止。
我一直在閱讀文章,看起來好像與應用程序簽名和證書有關。我認爲總體思路是應用程序需要使用與系統本身相同的證書進行簽名。我想,因爲我使用相同的命令在同一臺機器上構建了應用程序和系統,它們將具有相同的證書。
如果有幫助,清單文件中有這樣一行:
android:sharedUserId="android.uid.system"
而該項目使文件Android.mk
有這樣一行:
LOCAL_CERTIFICATE := platform
誰能告訴我我怎樣才能使應用程序工作?我不確定,好像我必須用適當的證書重建應用程序,以便它可以訪問所有的硬件資源。
謝謝。