Desenvolvimento Android usando C e C ++ [closed]

46

Eu sou um desenvolvedor C, C ++. Estou interessado em desenvolvimento móvel. Eu quero saber como posso desenvolver aplicativos para Android usando C e C ++, eu tenho read que eles estão fornecendo um kit para desenvolvedores C, C ++, mas ele não tem todas as funções do kit Java. Devo ir para o kit de desenvolvimento C / C ++ ou é melhor aprender java, pois eles podem não fornecer todas as funcionalidades no futuro?

    
por Fahad Uddin 30.12.2011 / 17:06
fonte

3 respostas

31

Versão resumida: trabalhar com C ++ no Android é possível e fácil com cada versão do Android SDK / NDK, mas é mais difícil do que trabalhar com Java.

Versão longa:

Para cada versão, o Google adiciona mais funcionalidades ao Android Native Development Kit e torna-o mais e mais independente no código Java.

Leia o link para obter mais detalhes:

Write a native activity, which allows you to implement the lifecycle callbacks in native code. The Android SDK provides the NativeActivity class, which is a convenience class that notifies your native code of any activity lifecycle callbacks (onCreate(), onPause(), onResume(), etc). You can implement the callbacks in your native code to handle these events when they occur. Applications that use native activities must be run on Android 2.3 (API Level 9) or later. You cannot access features such as Services and Content Providers natively, so if you want to use them or any other framework API, you can still write JNI code to do so.

O problema é que, se você usar o NDK mais recente, não poderá implantar e muitas versões não recentes do Android.

De qualquer forma, mesmo com versões anteriores do NDK, você pode ter um código Java mínimo (para interagir com o sistema operacional) e o código completo do aplicativo em C ++ ou qualquer coisa nativa.

Também existem esforços para ajudar os desenvolvedores nativos a trabalhar totalmente em C ou C ++ através de plugins IDE como este Vs-Android, que é um plugin para o Visual Studio 201x escondendo todo o processo de compilação e geração de você: link

Além disso, se você planeja portar seu aplicativo para outro sistema operacional, é uma boa idéia usar o C ++ para o núcleo do seu aplicativo (talvez com uma linguagem de script no topo). É apenas mais caro no tempo de desenvolvimento do que outras alternativas - por razões específicas do C ++ e suas implementações de ferramentas de desenvolvimento disponíveis, por exemplo, muito tempo de compilação pode matar sua produtividade efetiva.

Dito isso, essa não é a maneira mais fácil de trabalhar em aplicativos para dispositivos móveis.

    
por 30.12.2011 / 17:49
fonte
8

Aconselho-o a optar pelo C ++ se tiver um plano firme para entrar no Game Development. Mas se não, é melhor você ir para Java. Aqui está uma boa cartilha para você no site oficial do Android:

Desenvolvimento de jogos para Android: um resumo rápido

NOTA: Por favor, leia o passo 2 (Passo Dois: Escolha um Idioma) do tutorial.

Se você não conhece o Java e deseja desenvolver aplicativos no Android a longo prazo, é essencial aprender Java. Há ótimos tutoriais dados no site oficial. Há um bom livro que você pode pegar para aprender especificamente para o desenvolvimento do Android: Aqui está: Aprenda Java para desenvolvimento Android

    
por 30.12.2011 / 17:21
fonte
6

Should I go for C/C++ development kit or it's better to learn java as they may not provide all the functionality in future?

A resposta é ambas.

  • Se você estiver escrevendo algum aplicativo em que o desempenho seja o principal preocupação, eles quase tem que estar em algo diferente de java. (C / C ++ é mais popular) Jogos é o item de grande valor, mas há outros.
  • Se você está fazendo algum desenvolvimento android, você também deve ter tempo para aprender java para um nível razoável.
por 30.12.2011 / 18:19
fonte

Tags