{"id":13997,"date":"2021-02-09T15:32:00","date_gmt":"2021-02-09T14:32:00","guid":{"rendered":"https:\/\/rafen.app\/uncategorized\/mobile-application-development\/"},"modified":"2023-02-08T23:11:00","modified_gmt":"2023-02-08T22:11:00","slug":"mobile-application-development","status":"publish","type":"post","link":"https:\/\/raf.edu.rs\/en\/subjects\/mobile-application-development\/","title":{"rendered":"Mobile Application Development"},"content":{"rendered":"<h5>Objectives and outcomes<\/h5>\n<p>Acquisition of knowledge and practical skills needed to create applications based on the Android platform. Students understand and can implement all the key concepts, technologies and design patterns necessary to create scalable, modern mobile applications.<\/p>\n<h5>Lectures<\/h5>\n<p>History of development, architecture, versions and layers of the Android OS interface. Getting to know the working environment &#8220;Android studio&#8221;. Types of android applications, AndroidManifest.xml file, permissions and components. Anatomy of an android application, overview of characteristic folders for storing different types of resources. Getting to know the Gradle tool. Creating a graphical user interface using different layout types (LinearLayout, RelativeLayout, GridLayout, ConstraitLayout, etc.). Activities and activity lifecycle. Fragments, fragment lifecycle, multi-fragment communication and fragment-activity relationship. Intentions and types of intentions. Advanced concepts of creating a graphical user interface and displaying data to a user (ListView, RecyclerView, TabLayout, ViewPager, NavigationDrawer). Services and asynchronous operations. Message receivers and senders (BroadcastSender, BroadcastReciver). Data persistence. (SharedPreferences, Room). Communication with Restfull web services, advanced design elements. MVVM, MVI, MVC design patterns. Firebase platform, geofencing, applications based on GPS technology. Testing the application and placing it on the Google play store. Overview of useful resources for further training.<\/p>\n<h5>Practical classes<\/h5>\n<p>Installation and familiarisation with the &#8220;Android studio&#8221; development environment. Creating the first android project, getting to know the anatomy of an android application and the Gradle tool. Creating a graphical user interface using different types of layouts. Interaction with user interface elements, processing of various types of events. Activities, fragments, intentions. Examples. Displaying larger datasets using ListView, RecyclerView. Description of use cases and implementation of applications that use service components and asynchronous operations. Message receivers and senders. Creating applications with the ability to store and reuse data using the Room library, SharedPreferences class. ViewModel, Data Binding, application development based on the MVVM pattern. Getting to know the Firebase platform, creating applications that use Firebase as a backend service. Development of applications using Geofencing and GPS technology. Testing and using applications.<\/p>\n<p><br \/><br \/><\/p>\n<p>\u00a0<\/p>\n<p>\u00a0<\/p>\n<p>\u00a0<\/p>\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Objectives and outcomes Acquisition of knowledge and practical skills needed to create applications based on the Android platform. Students understand and can implement all the key concepts, technologies and design patterns necessary to create scalable, &#8230; <a title=\"Mobile Application Development\" class=\"read-more\" href=\"https:\/\/raf.edu.rs\/en\/subjects\/mobile-application-development\/\" aria-label=\"More on Mobile Application Development\">Read more<\/a><\/p>\n <a href=\"https:\/\/raf.edu.rs\/en\/subjects\/mobile-application-development\/\" class=\"more-link\" title=\"Read more\">Read more<\/a>","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[199],"tags":[],"class_list":["post-13997","post","type-post","status-publish","format-standard","hentry","category-subjects"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.7 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Mobile Application Development - School of Computing<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/raf.edu.rs\/en\/subjects\/mobile-application-development\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Mobile Application Development - School of Computing\" \/>\n<meta property=\"og:description\" content=\"Objectives and outcomes Acquisition of knowledge and practical skills needed to create applications based on the Android platform. Students understand and can implement all the key concepts, technologies and design patterns necessary to create scalable, ... Read more\" \/>\n<meta property=\"og:url\" content=\"https:\/\/raf.edu.rs\/en\/subjects\/mobile-application-development\/\" \/>\n<meta property=\"og:site_name\" content=\"School of Computing\" \/>\n<meta property=\"article:published_time\" content=\"2021-02-09T14:32:00+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2023-02-08T22:11:00+00:00\" \/>\n<meta name=\"author\" content=\"RAF Admin\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"RAF Admin\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"2 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/raf.edu.rs\\\/en\\\/subjects\\\/mobile-application-development\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/raf.edu.rs\\\/en\\\/subjects\\\/mobile-application-development\\\/\"},\"author\":{\"name\":\"RAF Admin\",\"@id\":\"https:\\\/\\\/raf.edu.rs\\\/en\\\/#\\\/schema\\\/person\\\/4e2166c781f2802c67414a1578c66a43\"},\"headline\":\"Mobile Application Development\",\"datePublished\":\"2021-02-09T14:32:00+00:00\",\"dateModified\":\"2023-02-08T22:11:00+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/raf.edu.rs\\\/en\\\/subjects\\\/mobile-application-development\\\/\"},\"wordCount\":328,\"publisher\":{\"@id\":\"https:\\\/\\\/raf.edu.rs\\\/en\\\/#organization\"},\"articleSection\":[\"Subjects\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/raf.edu.rs\\\/en\\\/subjects\\\/mobile-application-development\\\/\",\"url\":\"https:\\\/\\\/raf.edu.rs\\\/en\\\/subjects\\\/mobile-application-development\\\/\",\"name\":\"Mobile Application Development - School of Computing\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/raf.edu.rs\\\/en\\\/#website\"},\"datePublished\":\"2021-02-09T14:32:00+00:00\",\"dateModified\":\"2023-02-08T22:11:00+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/raf.edu.rs\\\/en\\\/subjects\\\/mobile-application-development\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/raf.edu.rs\\\/en\\\/subjects\\\/mobile-application-development\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/raf.edu.rs\\\/en\\\/subjects\\\/mobile-application-development\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Homepage\",\"item\":\"https:\\\/\\\/raf.edu.rs\\\/en\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Subjects\",\"item\":\"https:\\\/\\\/raf.edu.rs\\\/en\\\/subjects\\\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Mobile Application Development\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/raf.edu.rs\\\/en\\\/#website\",\"url\":\"https:\\\/\\\/raf.edu.rs\\\/en\\\/\",\"name\":\"School of Computing\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\\\/\\\/raf.edu.rs\\\/en\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/raf.edu.rs\\\/en\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/raf.edu.rs\\\/en\\\/#organization\",\"name\":\"School of Computing\",\"url\":\"https:\\\/\\\/raf.edu.rs\\\/en\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/raf.edu.rs\\\/en\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/raf.edu.rs\\\/en\\\/wp-content\\\/uploads\\\/2023\\\/02\\\/cropped-raf-engleski.png\",\"contentUrl\":\"https:\\\/\\\/raf.edu.rs\\\/en\\\/wp-content\\\/uploads\\\/2023\\\/02\\\/cropped-raf-engleski.png\",\"width\":400,\"height\":66,\"caption\":\"School of Computing\"},\"image\":{\"@id\":\"https:\\\/\\\/raf.edu.rs\\\/en\\\/#\\\/schema\\\/logo\\\/image\\\/\"}},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/raf.edu.rs\\\/en\\\/#\\\/schema\\\/person\\\/4e2166c781f2802c67414a1578c66a43\",\"name\":\"RAF Admin\",\"sameAs\":[\"https:\\\/\\\/raf.app\"],\"url\":\"https:\\\/\\\/raf.edu.rs\\\/en\\\/author\\\/rafadmin\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Mobile Application Development - School of Computing","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/raf.edu.rs\/en\/subjects\/mobile-application-development\/","og_locale":"en_US","og_type":"article","og_title":"Mobile Application Development - School of Computing","og_description":"Objectives and outcomes Acquisition of knowledge and practical skills needed to create applications based on the Android platform. Students understand and can implement all the key concepts, technologies and design patterns necessary to create scalable, ... Read more","og_url":"https:\/\/raf.edu.rs\/en\/subjects\/mobile-application-development\/","og_site_name":"School of Computing","article_published_time":"2021-02-09T14:32:00+00:00","article_modified_time":"2023-02-08T22:11:00+00:00","author":"RAF Admin","twitter_card":"summary_large_image","twitter_misc":{"Written by":"RAF Admin","Est. reading time":"2 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/raf.edu.rs\/en\/subjects\/mobile-application-development\/#article","isPartOf":{"@id":"https:\/\/raf.edu.rs\/en\/subjects\/mobile-application-development\/"},"author":{"name":"RAF Admin","@id":"https:\/\/raf.edu.rs\/en\/#\/schema\/person\/4e2166c781f2802c67414a1578c66a43"},"headline":"Mobile Application Development","datePublished":"2021-02-09T14:32:00+00:00","dateModified":"2023-02-08T22:11:00+00:00","mainEntityOfPage":{"@id":"https:\/\/raf.edu.rs\/en\/subjects\/mobile-application-development\/"},"wordCount":328,"publisher":{"@id":"https:\/\/raf.edu.rs\/en\/#organization"},"articleSection":["Subjects"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/raf.edu.rs\/en\/subjects\/mobile-application-development\/","url":"https:\/\/raf.edu.rs\/en\/subjects\/mobile-application-development\/","name":"Mobile Application Development - School of Computing","isPartOf":{"@id":"https:\/\/raf.edu.rs\/en\/#website"},"datePublished":"2021-02-09T14:32:00+00:00","dateModified":"2023-02-08T22:11:00+00:00","breadcrumb":{"@id":"https:\/\/raf.edu.rs\/en\/subjects\/mobile-application-development\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/raf.edu.rs\/en\/subjects\/mobile-application-development\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/raf.edu.rs\/en\/subjects\/mobile-application-development\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Homepage","item":"https:\/\/raf.edu.rs\/en\/"},{"@type":"ListItem","position":2,"name":"Subjects","item":"https:\/\/raf.edu.rs\/en\/subjects\/"},{"@type":"ListItem","position":3,"name":"Mobile Application Development"}]},{"@type":"WebSite","@id":"https:\/\/raf.edu.rs\/en\/#website","url":"https:\/\/raf.edu.rs\/en\/","name":"School of Computing","description":"","publisher":{"@id":"https:\/\/raf.edu.rs\/en\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/raf.edu.rs\/en\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/raf.edu.rs\/en\/#organization","name":"School of Computing","url":"https:\/\/raf.edu.rs\/en\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/raf.edu.rs\/en\/#\/schema\/logo\/image\/","url":"https:\/\/raf.edu.rs\/en\/wp-content\/uploads\/2023\/02\/cropped-raf-engleski.png","contentUrl":"https:\/\/raf.edu.rs\/en\/wp-content\/uploads\/2023\/02\/cropped-raf-engleski.png","width":400,"height":66,"caption":"School of Computing"},"image":{"@id":"https:\/\/raf.edu.rs\/en\/#\/schema\/logo\/image\/"}},{"@type":"Person","@id":"https:\/\/raf.edu.rs\/en\/#\/schema\/person\/4e2166c781f2802c67414a1578c66a43","name":"RAF Admin","sameAs":["https:\/\/raf.app"],"url":"https:\/\/raf.edu.rs\/en\/author\/rafadmin\/"}]}},"_links":{"self":[{"href":"https:\/\/raf.edu.rs\/en\/wp-json\/wp\/v2\/posts\/13997","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/raf.edu.rs\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/raf.edu.rs\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/raf.edu.rs\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/raf.edu.rs\/en\/wp-json\/wp\/v2\/comments?post=13997"}],"version-history":[{"count":1,"href":"https:\/\/raf.edu.rs\/en\/wp-json\/wp\/v2\/posts\/13997\/revisions"}],"predecessor-version":[{"id":15200,"href":"https:\/\/raf.edu.rs\/en\/wp-json\/wp\/v2\/posts\/13997\/revisions\/15200"}],"wp:attachment":[{"href":"https:\/\/raf.edu.rs\/en\/wp-json\/wp\/v2\/media?parent=13997"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/raf.edu.rs\/en\/wp-json\/wp\/v2\/categories?post=13997"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/raf.edu.rs\/en\/wp-json\/wp\/v2\/tags?post=13997"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}