C ++, C로 Android 프로그래밍을 할 수 있습니까?
C ++, C로 Android 프로그래밍을 할 수 있습니까? 대답이 "예"이면 방법을 알려주십시오. 그리고 설정 절차는 무엇입니까?
Obj-C, Java는 모르지만 Google에서 출시 한 C, C ++, Flash AS3, SDK에 대해서는 잘 알고 있습니다.
NVDIA SDK에 대해 완전히 개발되지 않았습니다. :)
참고 : 아래 답변은 매우 오래되었으며 더 이상 완전히 정확하지 않을 수 있습니다.
Android NDK를 사용하여 C / C ++로 프로그래밍 할 수 있습니다 . 정적 라이브러리에 C ++ 코드베이스를 래핑하고 Java 래퍼 및 JNI를 통해로드해야합니다.
표준 NDK는 RTTI를 지원하지 않으며 std :: string 등과 같은 표준 C ++의 많은 기능도 사용할 수 없습니다.이 문제를 해결하려면 NDK를 다시 컴파일 할 수 있습니다. Dmitry Moskalchuk은 http://www.crystax.net/android/ndk-r3.php 에서이를 지원하는 NDK의 수정 된 버전을 제공합니다 . 이 수정 된 버전은 ARM 프로세서에서 실행되는 모든 Android 휴대폰에서 작동합니다.
응용 프로그램의 종류에 따라 Java 또는 C / C ++를 사용하도록 결정해야합니다. 평균 이상의 계산 능력과 게임이 필요한 모든 것에 C / C ++를 사용하고 나머지는 Java입니다.
하나의 언어를 선택하고 대부분의 애플리케이션을 해당 언어로 작성하십시오. JNI 호출은 성능을 크게 저하시킬 수 있습니다. Java는 그렇게 어렵지 않습니다. C / C ++로 프로그래밍하는 방법을 알고 있다면. Java의 장점은 NDK 애플리케이션이 컴파일 된 아키텍처에 따라 달라지는 Android를 실행하는 모든 기기에서 애플리케이션을 실행할 수 있다는 것입니다.
네이티브 코드로 앱의 성능에 중요한 부분을 개발하려면 Android NDK를 사용해야합니다. Android NDK를 참조하세요 .
어쨌든 전체 응용 프로그램을 개발하는 올바른 방법이라고 생각하지 않습니다.
예, NDK (Native Development Kit )를 사용하여 C ++ (대부분)로 Android 앱을 프로그래밍 할 수 있습니다 .하지만 Java는 Android 프로그래밍을위한 기본 / 선호 언어이며 C ++ 코드는 Java 구성 요소와 인터페이스해야합니다. Java 구성 요소에 대한 문서도 읽고 이해해야 할 것입니다. 따라서 이식해야하는 기존 C ++ 코드 기반이 있고 Java로 다시 작성하는 것이 실용적이지 않은 경우 Java를 사용하는 것이 좋습니다.
Java는 C ++와 매우 유사합니다. 문제가 발생하지 않을 것이라고 생각합니다. C ++에서 Java로 이동하는 것은 매우 쉽습니다. Java에서 C ++로 이동하는 것은 끔찍하지는 않지만 조금 더 어렵습니다. C ++ 프로그래머를위한 Java 는 차이점을 잘 설명합니다. Java로 Android 코드를 작성하는 것이 더 관용적이며 개발 프로세스도 더 쉬워집니다 (Java Android SDK 용 도구가 해당 NDK 도구보다 훨씬 낫기 때문입니다).
설정 측면에서 Google은 Java 및 C ++ Android 개발을위한 Android Studio IDE (빌드 시스템으로 Gradle 포함)를 제공하지만, 내부적으로는 원하는 IDE 또는 빌드 시스템을 자유롭게 사용할 수 있습니다. Android SDK / NDK를 사용하여 최종 출력을 생성합니다.
MoSync 도 살펴 봐야합니다 . MoSync는 표준 C / C ++, 사용하기 쉬운 잘 문서화 된 API 및 완전한 기능을 갖춘 Eclipse 기반 IDE를 제공합니다. 현재 오픈 소스 IDE는 여전히 꽤 멋지지만 더 이상 유지되지 않습니다.
C ++ Builder XE6도 살펴볼 수 있으며 XE7은 C ++ 코드 및 Firemonkey 라이브러리에서 Android를 지원합니다.
http://www.embarcadero.com/products/cbuilder
아주 쉬운 시작 방법과 네이티브 코드. 그러나 바이너리는 크기가 큽니다.
Android 프로그래밍에서 C ++로 작업하기위한 라이브러리가 두 개 이상 있습니다.
- C ++-qt (LGPL로도 사용 가능한 Nokia 제품)
- C ++-Wxwidget (GPL로 사용 가능)
참조 URL : https://stackoverflow.com/questions/2773650/can-i-do-android-programming-in-cc
'programing' 카테고리의 다른 글
적용에서 이전 값도 계산 될 때 Pandas에서 dataframe.apply의 이전 행 값을 사용하는 방법이 있습니까? (0) | 2021.01.15 |
---|---|
Uber Android와 같이지도에서 마커 회전 및 애니메이션 이동 (0) | 2021.01.15 |
세션 변수에 대한 제한이 있습니까? (0) | 2021.01.15 |
Mac OS X 10.6.7 Java 경로 현재 JDK 혼동 (0) | 2021.01.15 |
날짜 명령이 Linux 사양을 따르지 않음 (Mac OS X Lion) (0) | 2021.01.15 |