2015-08-09 3 views
1

Какая разница в ч/б с помощью Activity vs Application в Xamarin? Почему нужно использовать один подход над другим?Xamarin Activity vs Application

Например, когда я создаю новый проект Xamarin формы в VS я получаю следующие файлы:

[Activity(Label = "eApprove Main Activity", MainLauncher = true, Icon = "@drawable/eA_icon")] 
public class MainActivity : Activity 
{ 
      ... 
} 

Я также видел примеры на Интернете, где люди используют класс Application в качестве основной точки входа:

namespace MyExpenses.Android 
{ 
     [Application(Theme = "@android:style/Theme.Holo.Light") ] 
     public class MyExpensesApplication : Application 
     { 
       public static Activity CurrentActivity { get; set; } 

       public MyExpensesApplication(IntPtr handle, global::Android.Runtime.JniHandleOwnership transer) 
        :base(handle, transer) 
       { 
       } 

       public override void OnCreate() 
       { 
        base.OnCreate(); 
       } 
     } 
} 
+1

Возможно, вам стоит изучить официальные документы разработчиков Android, понять о классе 'Application' и' Activity', как определено в Java и * THEN * вернитесь к xamarin и C#. Я программист на C#, но когда я выбрал программу для Android, я решил использовать Java вместо использования кросс-платформенных инструментов, таких как xamarin. Я подозреваю, что знаю больше об Android, сделав это именно так. – Squonk

+0

У меня нет роскоши пройти кривую обучения и изучить Java. Я работаю в магазине Microsoft, и Xamarin - это то, что магазин будет использовать. Тем не менее, ваш совет по-прежнему действителен, и я понимаю, что, хотя я все же верю, что Xamarin занял свое место в стеке технологий. – Robert

+1

На самом деле нет такой кривой обучения. Когда Microsoft создала C#, они в основном сорвали Java - если вы можете программировать на C#, то Java не так уж далек от нее. Там * ARE * некоторые различия, но в целом, не так много. Ваш вопрос касается класса 'Application' и класса' Activity'. В этом случае Xamarin не имеет значения, это просто инструмент разработки. 'Application' и' Activity' являются основными классами в Android, и, если вы не прочитаете документы Android, вам будет сложно понять их цель. – Squonk

ответ

0

Пожалуйста, убедитесь, что вы не путаете классическое приложение Xamarin.Android с андроидной частью приложения Xamarin.Forms. Мой быстрый и простой ответ/рекомендация заключалась бы в том, что у вас будет один класс приложения для каждого проекта приложения на платформе и столько же действий, сколько вам нужно. Приложение - это ваша точка входа, в которой используются любые действия с номерами, основанные на ваших потребностях.