BenasP / AxmlApp

Test project for learning AXML
1 stars 0 forks source link

Analyse app project. #6

Open SorrowMmussy opened 7 years ago

SorrowMmussy commented 7 years ago

Starting from: Assets. Models. Resources. View. MainActivity.cs

SorrowMmussy commented 7 years ago

What is Marshmallow API 23? Marshmallow API is an Android version on which you want to develop/test your application, you can see how other versions are called https://en.wikipedia.org/wiki/Android_version_history . From practice we mostly support all phones which has version 19 or higher. Unless client wants to support even lower version, in that case, most of the times we write a separate app dedicated just for those versions

Testing on every version is very important because some android OS features doesn't work in some cases. For example android API 19 doesn't support notification action swipe motion, so we need to workaround in some cases or simply ignore that issue. But I all cases we need to know what could be wrong with our app

SorrowMmussy commented 7 years ago

Style - app's visual looks, gadget colors, wight, length, size. I will probably need clarification

//--- What i ment was, what style section was used for mainly. Was that not correct?

SorrowMmussy commented 7 years ago

Models are the central places to represent business data, rules and logic. They often need to be reused in different places. In a well-designed application, models are usually much fatter than controllers. (explain controllers?) First topic

SorrowMmussy commented 7 years ago

Resources - they combine photos, videos and various other objects with code. Programmatically in code and declaratively in XML using a special XML syntax. What is Android Assets? Pros of resources in Android applications: Code-seperation, Target multiple devices, Compile time checking. Why is #pragma warning restore 1591 used? Contains "Get started with Xamarin Build iOS and Android apps in C# " tutorial. You already answered what is Android Assets. It is basically a dumpster for all the images, style sheets, other media objects you want to deploy to your app. I cannot say why pragma is used, I know what it is, but I have never used it. (https://msdn.microsoft.com/en-us/library/x74w198a.aspx)

SorrowMmussy commented 7 years ago

Views - Xamarin.Forms uses the word View to refer to visual objects such as buttons, labels or text entry boxes - which may be more commonly known as controls of widgets. Uses javascript. Converts it to c#, mix of 2 programming languages.

SorrowMmussy commented 7 years ago

Main activity: The MainActivity class contains an Attribute called Activity and has properties called Label, MainLauncher and Icon. Label property specified the name of the application and here the applications is called as ANDROID_APP. MainLauncher property specifies whether the current activity will be used as the Main Activity for the application, it is like the First page to be executed in the application. Icon property specifies the icon for the Application. Do you understand why and what methods are used?

//------

I think so. MainLauncher is basicaly when we click on an app in our phones. And it tells the phone "Hey dude, this app is gonna run now". And then it starts loading it. Activity is whats being done at the current time, and what processes are run. Icon property is simply a small picture or fragment of how the application displays the image.

BenasP commented 7 years ago

@SorrowMmussy I have answered few of your question, please review them BTW have you reviewed axml files in Resources -> layout?


Yes, it is the image of what app looks like, on what android version it will be used, and how it will adapt to it. Its similar to virtual representation of an actual phone. Also, it helps us debug problems, since as you pointed out. Not every version has same specifics. If one does not, we need to look at how the app adapts to its enviroment, and if something doesnt work in that virtual image of our app, we try to adapt it in a way it would work.