2010-11-29 72 views
0

我在市場上有一個Android應用程序,它將POST和GET查詢連接併發送到REST API,然後將結果存儲在數據庫中,然後查詢並顯示在適當的方式在申請。在C++中將REST API連接代碼移植到Android NDK

我對加速應用程序感興趣,並且注意到從api接收數據的時間到可以使用的數據之間有相當多的時滯。我想調查是否以及如何用C++編寫類似的代碼,使用NDK連接到REST API,處理結果並存儲在數據庫中或引發錯誤。我沒有以前的C++經驗,首先需要知道我是否可以像Java那樣訪問C++中的相同數據庫,其次,如果還有其他警告我應該注意?

另外我想我應該問 - 這樣做值得嗎?我會注意到有什麼不同嗎?

任何指向類似代碼的鏈接,或者我應該從哪裏開始使用C++的概述都將不勝感激。

回答

2

我做的EXACT同樣的事情,相信我:如果你沒有以前的C++的經驗,這可能是有點太昂貴了一點好處。

在我的情況下,經過一些分析後,我重新排序,並且只有通過丟棄DOM和使用SAX纔有了性能的初步提升。剩下的只是讓事情稍微好一些,比如在數據包仍在傳輸時處理響應(即不等待完全響應以開始處理),並且在同一個線程上覆用請求,而不是爲每個線程啓動一個新線程。

如果您希望手工完成,您應該在Google中尋找的是POSIX套接字,HTTP和REST代碼。對於Socket/HTTP部分,更好的選擇可能是使用CURL或類似的東西。我自己做了這一切,但只是因爲我已經做了幾次。