구글 안드로이드가 .NET을 지원할 수 있을까요?
이제 구글의 안드로이드 OS가 탑재된 G1을 사용할 수 있게 되었기 때문에 (곧) 안드로이드 플랫폼은 영원히 지원할 것입니다.그물?
업데이트: 2년 전에 이 답변을 작성한 이후로, 우리는 안드로이드에서 실행할 수 있도록 Mono를 생산했습니다.이 작업에는 Mono를 Android로 포팅하고, Visual Studio와 통합하고, Mac과 Windows에서 MonoDevelop용 플러그인을 구축하고, Java Android API를 .NET 언어에 노출하는 몇 가지 단계가 포함되었습니다.이제 http://monodroid.net 에서 사용할 수 있습니다.
- 시작하기: http://monodroid.net/Welcome
- 설명서: http://monodroid.net/Documentation
- 튜토리얼: http://monodroid.net/Tutorials
Mono on Android는 Mono 2.10 런타임을 기반으로 하며 C# 4.0 컴파일러에서 4.0 프로필로 기본 설정되며 Mono의 새로운 SGen 가비지 수집 엔진과 Java 및 Mono에서 GC를 수행하는 새로운 분산 가비지 수집 시스템을 사용합니다.
아래 링크는 2009년 1월 현재 Android의 Mono를 반영하며, 역사적 맥락을 위해 보관하고 있습니다.
모노는 이제 Koushik Dutta와 Mark Crichton의 작업 덕분에 Android에서 작동합니다.
http://www.koushikdutta.com/2009/01/mono-on-android-with-gratuitous-shaky.html 에서 실행되는 동영상을 볼 수 있습니다.
Mono를 직접 빌드하기 위한 지침은 http://www.koushikdutta.com/2009/01/building-mono-for-android.html 에서 확인할 수 있습니다.
Mono의 JIT와 Dalvik의 통역사를 비교하는 벤치마크는 http://www.koushikdutta.com/2009/01/dalvik-vs-mono.html 에서 확인할 수 있습니다.
물론 Mono와 함께 사전 구성된 이미지도 여기에서 얻을 수 있습니다(자세한 사용 방법은 게시물 하단으로 이동하십시오). http://www.koushikdutta.com/2009/01/building-mono-for-android.html
네, 가능할 것이고 그렇게 어렵지는 않을 것입니다.이 시점에서 필요한 것은 MSIL을 달빅 바이트 코드로 변환하는 일종의 변환기입니다.두 형식 모두 오픈 소스이고 문서화가 잘 되어 있기 때문에 문제가 없을 것입니다.
따라서 C# 또는 VB.NET에서 Android 응용 프로그램을 작성하는 것이 가능할 것입니다. 문제는 .NET 프레임워크 표준 라이브러리를 얼마나 지원할 것인가입니다.하지만 그것은 또 다른 문제입니다.
오스카 레이예스는 다음과 같이 썼습니다.
만약 구글이 닷넷에 관심이 있다면, 그들은 안드로이드가 생산 단계에 있을 때가 아니라 첫 단계에 있었을 때 무언가를 디자인했을 것이라고 꽤 확신합니다.그것이 불가능하다는 뜻은 아닙니다. 제 말은 그들이 관심이 없다는 것입니다.아마 10년 안에.
사실 그들이 이미 설계한 것은 Java 및 .NET과 매우 호환됩니다.
그들이 모든 것을 한꺼번에 할 수는 없지만, 안드로이드 SDK를 들여다보면 dx라는 도구가 있습니다.이 툴은 자바 바이트코드를 달빅 바이트코드로 변환하여, 오늘날 안드로이드에서 자바로 작성된 프로그램을 무리 없이 실행할 수 있습니다.이제 .NET에도 동일한 도구가 필요합니다.
.NET과 자바가 얼마나 비슷한지 생각해보면 정말 시간문제입니다.
디미트로프는 다음과 같이 썼습니다.
.Net->Java->Dalvik 번역은 지금도 가능합니다(http://dev.mainsoft.com/), 하지만 부족함을 과소평가하시는 것 같습니다.넷 라이브러리.물론 누군가는 모노 포트를 사용할 수 있지만, 그것은 분명 사소한 노력이 아닙니다.
모노 포트를 사용할 필요가 없습니다.Android에는 이미 VM과 몇 가지 기본 API가 있습니다.필요한 것은 CIL->Dalvik 컨버터와 Android API용 소형 .NET 래퍼(일부 표준 .NET 클래스의 기본 구현)뿐입니다.바로 그겁니다.
업데이트: .NET은 이미 Android에서 작동합니다. 위에서 언급한 대로 Monodroid(http://monodroid.net )라는 제품이 필요합니다.
Miguel de Icaza는 2010년 2월 17일 자신의 블로그에서 모노드로이드라고 불리는 안드로이드용 모노 작업을 시작한다고 발표했습니다.
이는 아이폰의 MonoTouch와 비슷하지만 대신 안드로이드의 경우입니다.
그것은 안드로이드 UI에 대한 바인딩을 제공하여 앱이 라이브 네이티브 안드로이드 앱을 보고 느낄 수 있습니다.이를 위해서는 안드로이드 전용 UI를 작성해야 합니다.
그러나 다시 컴파일할 필요 없이 기존 하위 수준 라이브러리를 다시 사용할 수 있습니다.
Android용 .NET 프레임워크인 Mono for Android가 있습니다.그리고 C# 및 핵심 .NET API를 사용하여 Android 기반 애플리케이션을 개발하기 위한 개발 스택인 MonoDroid가 있습니다.MonoDroid Preview 1은 며칠 전에 출시되었습니다.
이것은 Android 및 .net 지원을 검색할 때 Google에서 첫 번째 링크 중 하나이기 때문에 여기에 게시하는 것이 적합합니다.
모노 프로젝트는 C#과 같은 CIL 언어를 사용하여 Android 애플리케이션을 개발하기 위한 SDK를 개발하고 있습니다.단점은 그것이 상업적인 제품이 될 것이라는 것입니다. 모노로이드.
MonoDroid를 미리 볼 수 있습니다.저는 그것이 그 차이를 메울 것이라고 생각합니다.그러나 MonoDroid는 개발 비용이 많이 드는 옵션이 될 수 있습니다.이 회사의 다른 개발 도구는 199달러에서 4000달러 사이의 가격입니다(MonoTouch... iPhone 개발 도구...).가격은 399달러에서 3999달러 사이입니다.만약 사람들이 이러한 도구로 앱을 개발한다면, 그들은 수익을 보기 위해 매우 강력한 비즈니스 모델이 필요합니다.
xmlvm을 확인해 보세요. 저는 이것이 가능하다고 생각합니다.아마 이 비디오도 확인할 수 있을 것입니다.
모노 포트를 수정하는 것도 완전히 가능합니다.
.NET 컴팩트 프레임워크는 Symbian OS(http://www.redfivelabs.com/) 로 포팅되었습니다..NET을 '닫힌' 플랫폼으로 이 플랫폼에 이식할 수 있다면 안드로이드용으로 할 수 없는 이유를 알 수 없습니다.
.NET과 Mono는 많은 도구와 사용법을 아는 사람들의 뛰어난 기술 기반을 갖춘 훌륭한 환경입니다.
iPhone의 Objective-C에 대한 유일한 대안이며 Android에 이식할 수 있어야 하며 .NET은 이미 Windows Mobile에 있습니다.
저는 모노터치와 마찬가지로 안드로이드 API를 위한 래퍼와 함께 안드로이드에서 모노를 확실하게 구현하기를 진심으로 바라고 있으며, 제가 직접 할 수 있는 입장이 아니기 때문에 비용을 지불할 준비가 되어 있을 것입니다.
Silverlight의 Android 구현을 볼 가능성이 높습니다.마이크로소프트 담당자는 문제가 있다고 말한 아이폰 대신 가능하다고 확인했습니다.
하지만 의 버전.넷 프레임워크가 가능합니다.그만큼 신경 써줄 사람이 필요해요 :)
그러나 실제로 C#에서 Java로 이동하는 것은 그리 큰 문제가 아니며 두 플랫폼(PC 대 G1) 간의 급격한 차이를 고려할 때 두 애플리케이션 모두에서 실행하고자 하는 모든 애플리케이션에 대해 하나의 코드베이스로 해결할 수 있을 것 같지는 않습니다.
CLI Bytecode를 Dalvik으로 변환하고, Collections, File access 등과 같은 핵심 기능을 위한 래퍼 클래스를 작성하는 것이 기술적으로 가능하다고 생각합니다.
그러나 안드로이드에서 실행되는 .NET 데스크톱 애플리케이션은 터치 장치에서 사용할 수 없는 고전적인 Windows와 같은 GUI를 가지고 있기 때문에 이질적인 느낌이 들 것입니다.반면에, 만약 당신이 .NET에서 안드로이드와 유사한 GUI를 코딩한다면, 당신은 또 다른 포장지 세트가 필요할 것입니다(포장지는 위에서 언급한 포장지와 반대되는 반대 방향입니다).
.NET 모바일 애플리케이션이 안드로이드에서 네이티브처럼 느껴질지는 모르겠지만, 그렇지는 않을 것 같습니다.
아마도 당신은 다른 접근법에 관심이 있을 것입니다: 당신은 당신의 애플리케이션을 자바 언어로 작성할 수 있습니다.그런 다음 Microsoft J#(단종된 것은 알고 있지만 다운로드하여 사용할 수 있음)을 통해 .NET으로 컴파일하고 안드로이드에서 동일한 Java 코드를 사용할 수 있습니다.이는 비즈니스 로직이라고 하는 핵심 클래스를 위한 것이며 GUI를 두 개 작성해야 합니다..NET을 사용하면 할 수 없는 J2ME도 사용할 수 있습니다.
Android용 .NET은 제게 현실적인 가능성으로 보입니다.Microsoft가 Android용으로 적합한 Silverlight를 출시할 것이라는 뉴스가 있습니다. Apple에 시동을 걸 수 있는 Microsoft의 이점을 절대 과소평가하지 마십시오.더 빠르고, 기능이 풍부하며, 더 빠른 개발 라이프사이클, 인상적인 하드웨어, Flash & Silverlight를 표준 설치 가능한 스마트폰.
마이크로소프트는 안드로이드 개선에 기득권을 갖고 있으며, 동시에 안드로이드의 실버라이트용 애플리케이션도 멀티터치, GPS 등이 탑재된 윈도폰7 OS에서 작동할 예정입니다.
언급URL : https://stackoverflow.com/questions/214615/will-google-android-ever-support-net
'bestsource' 카테고리의 다른 글
Moongoose 집계 $match가 ID와 일치하지 않습니다. (0) | 2023.05.29 |
---|---|
두 NS 날짜 사이의 일 수 (0) | 2023.05.29 |
Mongodb Aggregation 프레임워크가 맵/축소보다 빠릅니까? (0) | 2023.05.24 |
스칼라에서 목록 끝에 요소 추가 (0) | 2023.05.24 |
유형 오류: worker()는 0개의 위치 인수를 사용하지만 1개가 지정되었습니다. (0) | 2023.05.24 |