簡體   English   中英

跨移動選項

[英]Cross Mobile Options

我創建了一個Android應用。 盡管創建一個特定的應用程序是一個有趣的挑戰,但我現在正在研究創建一組類似的應用程序。

我想創建一組類似的Android應用程序,然后繼續在平板電腦和iOS ...(任何移動設備)上創建相同的應用程序。

我已經考慮過使用稱為PhoneGap的產品或基於Web的移動應用程序來這樣做。 這兩個選項似乎都不理想。 使用Android應用程序時,我對Java缺乏控制力和底層構造感到沮喪。 轉向基於Web的應用程序似乎是完全錯誤的方向。

C ++是我選擇的語言。 它具有低級工作能力,跨平台的高度可移植性以及對通用編碼的顯着支持,這對於生成一組相似的應用程序將很有用。 但是,Android文檔建議不要使用C ++,除非您的目標是移植現有代碼或處理計算繁重的任務。

無論如何,我都傾向於使用C ++,但是還有其他我沒有考慮過的選擇嗎?

謝謝

從理論上講,您可以使用C ++編寫邏輯,然后在其上使用UI層。 如果您真的對C ++感到滿意,那可能是一條路。

幾乎所有其他部分(網絡,UI,動畫等)都最好以平台的本地語言完成。 跨平台解決方案的使用總是會在某種程度上限制您的使用,並且通常導致應用程序的性能不如任何平台。

好吧,我相信Google關於不使用C ++的建議基於以下幾點。 C ++是低級的,因此如果您知道自己在做什么 ,就可以從中獲得額外的性能。 Google做出了許多程序員沒有的合理假設。 對於一個沒有經驗的程序員來說,使用C ++傷害更容易獲得性能提升。

但是,如果您知道自己在做什么,它可以為您提供幫助。 iOS和Android上的UI元素均以其主要語言(分別為obj-c和Java)實現,因此沒有很好的解決方法,但是您可以用C ++編寫核心邏輯和其他函數,並且它們之間可以移植(iOS可以直接使用C ++,Android可以通過本機開發套件使用它)。

還有其他一些選擇。 我最終使用的是Appcelerator Titanium,但請遠離它。 如果您的項目變得非常復雜或龐大,您將像我一樣討厭自己選擇它。 使用C ++代替Javascript的另一個有趣的方法是Marmalade 我還沒有使用過,所以我無法對此發表評論。

我聽說過的一個非免費解決方案是Xamarin ,它已經使用Mono將兩種環境都移植到了C#和.NET中。 但是,據我所知,您仍然必須為UI編寫兩個版本的代碼。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM