2013-04-28 98 views
1

將MonoDroid應用程序升級到java Android應用程序和/或HTML/js應用程序的最佳方式是什麼? 例如該項目有一堆.axml文件,當你看着它們時,就是.xml Android佈局文件,.xml樣式/選擇的東西放入Drawable中,而.cs文件顯然只是C#中的Android,比如AsyncTasks等等。現在,Web引用文件夾必須是服務/ AJAX調用。像這樣的東西: CFM.Service.User,網絡References.Service.Reference.cs,版本= 0.0.0.0,文化=中立,公鑰=空 將MonoDroid移植到Java或PhoneGap?

如何爲這個在Java或其他代碼JavaScript的?獲得這個c#代碼庫並獲取Java Android應用程序或HTML/js(例如PhoneGap)應用程序的最佳方式是什麼?任何人都這樣做?

類似[解答]的問題在這裏: Call SOAP webservice(Made in .NET) through JavascriptHow to call .NET WSDL call in jQuery Javascript?

+5

您無法將其升級到Java Android或Phonegap。這本身就是降級。 – Cheesebaron 2013-04-28 21:04:44

+4

是什麼讓你認爲Xamarin/MonoDroid應用程序不是一個「真正的」Android應用程序?它肯定比HTML/PhoneGap應用程序更「真實」或本地化。 – 2013-04-28 22:27:58

+1

幫你一個忙,並熟悉Xamarin.Android。與Java合作非常有趣! – Redth 2013-04-29 00:33:32

回答

0

號遷移要麼將主要是一個重寫。 Xamarin中的C#代碼完全是Android集成,並且完全平行於Java編寫的代碼;所以,一位熟悉C#和Java的中級程序員可以做到這一點。即AsyncTasks,ProgressDialogs,Java中使用的所有常用工具以及Android提供的所有常用工具也都從Xamarin中調用。

佈局和其他資產不會被重寫:只需根據android Java構建的限制(小寫等)對其進行重命名即可。可以查看./obj/Debug/android/src並查看完整的Java類樹,因此可以將其用作起始參考。這些只是代理到DLL;所以,如果有人正在遷移到Java,那麼這不是最終的解決方案。如果出於某種原因想要將Java和C#集成到Android中,我確實懷疑可以將Java代碼混合到這裏。這可能很有趣。 (或者使用Intent可能是一種更符合Android標準的方法。)

其他答案是正確的,Xamarin IDE是一流的IDE,運行良好。特別是如果你有.net服務作爲應用程序的後端(菜單點擊將wsdl導入到可調用類中,可以輕鬆查看兩個項目中的代碼等)。

簡而言之,Xamarin可以讓你編寫C#並生成Android應用。