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.