從零開始構建本機客戶端應用程序需要做些什麼?我已經查看了文檔,並弄了幾個應用程序,但是,現在我正在開發自己的應用程序,並且我沒有看到與創建本機客戶端應用程序的基礎有關的任何內容。從無到有構建本機客戶端應用程序
回答
根據您要使用的SDK版本,您有幾個選項。
辣椒16和17:使用init_project.py或者如果你正在使用pepper_16
或pepper_17
用一個例子作爲起點
,你會發現在SDK中project_templates
Python腳本init_project.py
。它會建立一個完整的文件集(.cc,.html,.nmf),並帶有註釋表明您需要添加代碼的位置。運行python init_project.py -h
以查看它接受的選項。其他文檔可在https://developers.google.com/native-client/pepper17/devguide/tutorial找到。
辣椒18和較新的:如果使用pepper_18
或更新使用一個例子作爲起始點
,init_project.py
不再包含。相反,您可以複製examples
目錄中的一個非常小的示例(例如,對於C爲hello_world_glibc
或hello_world_newlib
或對於C++爲hello_world_interactive
)並將其用作起點。
如果要完全從頭開始編寫你的應用程序,首先確保SDK是編譯和運行一些的例子完全正常工作,從頭
寫作。那麼下一步就是看看您的應用需要實現的類pp::Module和pp:Instance。
在HTML端,爲Native Client模塊編寫一個EMBED
元素的簡單頁面。然後添加JavaScript事件處理程序loadstart
,progress
,error
,abort
,load
,loadend
和message
並有處理該事件的數據寫入,例如JavaScript控制檯,以便它可以告訴哪裏出了問題,如果本機客戶端模塊沒有加載。示例顯示如何執行此操作。
接下來,創建清單文件()。從pepper_18
開始,您可以使用tools/
目錄中的generate_nmf.py
腳本。如果您想從頭開始編寫,這些示例提供了使用newlib
和glibc
(目前支持的兩個標準C庫)的示例。分別見hello_world_newlib/
和hello_world_glibc/
。
如果您之前還沒有使用過gcc系列編譯器,那麼查看一些示例的Makefile以查看要使用的編譯器和鏈接器標誌也是一個好主意。建議從頭開始編譯32位和64位。
最簡單的方法是按照https://developers.google.com/native-client/pepper18/quick-start的快速啓動文檔,特別是教程中的步驟5-7(https://developers.google.com/native-client/pepper18/devguide/tutorial),這似乎是您所問的。
- 1. 無法從客戶端應用程序
- 2. Azure應用程序客戶端機密
- 3. 從網絡應用程序打印到客戶端打印機
- 4. Flex構建客戶端和服務器端的應用程序
- 5. 無法在客戶端應用程序
- 6. java客戶端服務器應用程序 - 無法創建多個客戶端
- 7. 從遠程計算機訪問Kurento客戶端應用程序
- 8. TestFlight構建到客戶端
- 9. 安卓:從客戶端應用程序
- 10. 關於.Net中客戶端主機應用程序的建議
- 11. 如何構建ActiveMQ客戶端應用程序?
- 12. 如何正確構建客戶端/服務器應用程序?
- 13. 針對網站的iOS本機客戶端應用程序
- 14. 無法從客戶端應用程序進行遠程EJB在
- 15. 遠程調試WCF客戶端應用程序 - 無法連接到主機
- 16. 任何機構建議基於WAP(無線應用協議)的客戶端服務器應用程序?
- 17. NetBean EJB客戶端應用程序無法建立
- 18. 執行從服務器到客戶端機器的遠程應用程序C#
- 19. .NET應用程序根本無法在客戶端計算機上啓動
- 20. 從aosp構建手機應用程序
- 21. 無法從客戶端應用程序獲取Bean
- 22. 控制檯應用程序客戶端到服務結構無狀態服務
- 23. 從客戶端創建AD用戶計算機(遠程)
- 24. 如何從主應用程序通信到客戶端應用程序C#
- 25. 從Android客戶端應用程序登錄到AppEngine Web應用程序
- 26. 客戶端響應應用程序.Json
- 27. EJB遠程應用程序 - 客戶端
- 28. 谷歌應用程序腳本肥皂客戶端沒有wsdl
- 29. 無法構建Google Api客戶端
- 30. Apigee客戶端應用程序客戶端身份驗證
有關pepper_16和pepper_17的說明很有趣,我會詳細閱讀。但是,將它們刪除以用於pepper_18是有趣的,它們必須有一些東西用 – chadb 2012-03-15 02:34:55
init_project.py爲舊的SCons構建系統生成的構建腳本替換。使用Pepper 18,構建系統被makefile取代,並且假定使用示例作爲起點實際上比使用init_project.py更容易,該腳本已被刪除而不是重寫。 – 2012-03-15 15:53:02