Desenvolva aplicativo Android usando C #


104

É possível escrever um aplicativo Android usando C #? Existe uma API ou algo assim? É gratuito para desenvolvimento pessoal e comercial?

O que preciso instalar para ter o modelo de projeto do Android em meu Visual Studio?


não tenho certeza sobre como o C # pode ser usado, mas você pode tentar HTML5 ..... (mas tem algumas limitações)
— Dheeresh Singh

C # é mais semelhante ao objetivo C do que java. O iPhone usa o primeiro, o Android usa o último e, portanto, faria mais sentido experimentar o desenvolvimento do iPhone do que o do Android se você já conhece C #.
— Todd Davies

82
@ToddDavies Eu discordaria totalmente e diria que Java e C # são as linguagens mais semelhantes. De fato, eu diria que Objective C não reflete C # de forma alguma.
— Darren de

Bem, cada um tem sua opinião, mas tenho certeza de que Java está para o Objectivo C assim como eu estou para o meu mais odiado quinto primo removido: P
— Todd Davies

1
+1 @DarrenDavies As ligações Mono para iOS lutam para representar seus equivalentes Objective-C em alguns lugares (por exemplo, protocolos), mas são francamente 1-1 contra Android.
— Danyal Aytekin

Respostas:


63

Você pode usar Mono for Android:

http://xamarin.com/monoforandroid

Uma alternativa é dot42:

http://www.dot42.com/

dot42 fornece uma licença comunitária gratuita, bem como uma licença profissional por $ 399.


Por favor, dê uma olhada no comentário que adicionei à resposta de Seva Alekseyev.
— CoolArchTek

@CoolArchTek - você pode baixar a avaliação gratuitamente; no entanto, o Mono para Android Professional custa $ 399 e Enterprise, $ 999. store.xamarin.com
— Darren

13
Para escrever alguns aplicativos para você e seus amigos, $ 399 é extremamente proibitivo. Eu gostaria que houvesse algo 'intermediário'. Considerando que o Android + Eclipse é GRATUITO e o Visual Studio Express é GRATUITO, xamarin está perdendo muito, simplesmente por causa de seus preços
— cmroanirgo

1
@cmroanirgo Xamarin agora oferece suporte a um modelo baseado em assinatura com uma opção gratuita - você não precisa mais comprar Mono para Android.
— James,

4
http://www.dot42.com/ tem isso em seu site a dot42 has been discontinued and is no longer supported. All sources are availabe on GitHub. The latest build is available as a binary setup.partir de 29/05/2015. Eles tinham um download do código - fonte e um GitHub .
— JabberwockyDecompiler

78

Tendo usado o Mono, eu NÃO o recomendaria. O tempo de execução Mono é fornecido com seu aplicativo, então seu apk acaba sendo inchado em mais de 6 MB. Uma solução de programação melhor para C # seria dot42 . Tanto o Mono quanto o dot42 são produtos licenciados.

Pessoalmente, eu recomendaria usar Java com o ambiente dev IntelliJ IDEA . Digo isso por 3 razões:

  1. Já existe muito código Java para Android; faça um favor a si mesmo e não reinvente a roda.
  2. IDEA é semelhante o suficiente ao Visual Studio para ser fácil de aprender; é feito por JetBrains e o intelli-sense é melhor do que o VS.
  3. IDEA é grátis.

Sou programador C # há 12 anos e comecei a desenvolver para Android com C #, mas acabei abandonando o barco e seguindo a rota do Java. As línguas são tão semelhantes que você realmente não perceberá muito a curva de aprendizado.

PS Se você deseja usar LINQ, serialização e outros recursos úteis que são nativos do C #, você só precisa procurar a biblioteca Java equivalente.


4
Obrigado, sua experiência parece útil
— nightcoder

boa resposta, mas o que fazer se o aplicativo Android tiver C # como back-end?
— Krupal Shah

e se eu quiser criar um aplicativo para um aplicativo da Web desenvolvido com API da Web?
— renakre

Obrigado, meios, se trabalharmos com o Android usando java, então vou receber mais blogs e materiais de googling. Só a inicialização será ouvida mais tarde, tudo bem. Obrigado, sou desenvolvedor C #, mas vou iniciar meu aplicativo usando java.
— mohd mazhar khan de

21

Aqui está um novo (Observação: no estágio de visualização da tecnologia): http://www.dot42.com

É basicamente um suplemento do Visual Studio que permite compilar seu código C # diretamente para o código DEX. Isso significa que não há requisitos de tempo de execução como Mono.

Divulgação: eu trabalho para esta empresa


ATUALIZAÇÃO: todas as fontes estão agora em https://github.com/dot42


6
Não acho que este seja o lugar certo para discutir preços, mas certifique-se de comparar as licenças corretas. Eu quero observar que o dot42 vem com uma Licença de Comunidade gratuita para uso não comercial.
— Frank Rem

4
Frank, você está absolutamente certo e devo admitir que não percebi a licença comunitária.
— Dave81

1
legais. algum comentário se você algum dia considerar a criação de código c para ios?
— citykid de

2
Isso é incrível! Existem planos para colocar um designer de IU? Ou posso usar outra ferramenta para fazer isso? Excelente trabalho !
— Piotr Kula

2
Na verdade, não existem tais planos no momento. Você pode usar o Android Studio para projetar a IU. Você pode então importar esses recursos no Visual Studio.
— Frank Rem

8

Mono Touch é a resposta.

http://xamarin.com/monotouch


É gratuito para desenvolvimento comercial? Quero desenvolver um aplicativo que seja para uma empresa (seus usuários).
— CoolArchTek

Eles têm isso para que você possa usar muito gratuitamente. Mas há uma taxa de licença de algum tipo iirc
— FoamyGuy

Mono é a única maneira? Existem opções de código aberto disponíveis?
— CoolArchTek

5
Mono é um IIRC de código aberto. Além disso, você percebe o esforço de portar todo o tempo de execução do C # (CLR) para uma plataforma diferente, com pouco suporte da Microsoft? É um milagre que até Mono exista. Google e MSFT são concorrentes diretos no espaço móvel, C # é uma tecnologia apoiada pela MSFT. Vai saber.
— Seva Alekseyev

6

Usei o mecanismo de jogo Unity 3D para desenvolver jogos para PC e celular. Usamos C # neste desenvolvimento.


1
Um link para qual versão do Unity 3D Game Engine você usa seria bom.
— Jesse Chisholm


3

De fato, existem compiladores C # para Android disponíveis. Mesmo que eu prefira desenvolver aplicativos Android em Java, posso recomendar o MonoForAndroid. Você encontra mais informações em http://xamarin.com/monoforandroid

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.