Factors in Developing Mobile Applications PDF
Document Details
Uploaded by ComprehensiveMorganite
Tags
Summary
This document provides an overview of factors involved in mobile application development. It discusses various mobile frameworks like Ionic, Xamarin, Adobe PhoneGap, React Native, Flutter, and Titanium SDK. The document outlines key aspects of mobile software engineering and user interface design. It also touches on topics like Android API levels and best practices for running android applications.
Full Transcript
Factors in Developing Mobile Applications Chapter 2 Outlines Understand Understand Develop Understand Mobile mobile mobile types of UI software frameworks generic UI engineering and tools Mobile software engineering It is a specialized f...
Factors in Developing Mobile Applications Chapter 2 Outlines Understand Understand Develop Understand Mobile mobile mobile types of UI software frameworks generic UI engineering and tools Mobile software engineering It is a specialized field of SE that focuses on the design, development, and maintenance of software applications for mobile devices, such as smartphones and tablets. Key aspects of mobile SE App Platform- Cross-platform UI and UX Performance Mobile specific Security and Testing and distribution specific dev’t dev’t design Optimization features Protection debugging and maintenance Frameworks and Tools In general, the basic method of creating an Android app is to use Android Studio However, there are many other Android Development Frameworks that are quite popular in and to provide you a little variety, the list is given below… Uses web Ionic Framework is technologies Ionic has a very popular (HTML,CSS, and documentation open-source mobile JS) to build support with real- framework that was beautiful cross- life examples released in 2013 platform mobile apps. Focuses on the frontend UX and UI interaction of an app It's easy to learn, and integrates with other libraries or frameworks, such as Angular, React, or Vue. 1. Ionic So basically, Xamarin Xamarin is an extremely can be used to write popular Mobile Xamarin is also popular native Android, iOS and framework that was IDE with Microsoft Visual Windows apps with a acquired by Microsoft in Studio and can be used C# codebase that can 2016 and is currently a to create native apps also be shared across Microsoft subsidiary multiple platforms Lets you build native apps for Android, iOS, and macOS using.NET code and platform-specific user interfaces. Xamarin.Forms allows you to build native apps, with shared UI code written in C# or XAML. 2. Xamarin Its unique feature According to Adobe PhoneGap is is that it can be PhoneGap, it can an open-source used to build be used to “Reuse mobile application mobile existing web development applications using development skills framework that HTML5, CSS3, and to quickly make was purchased by JavaScript instead hybrid applications Adobe Systems in of using API like built with HTML, 2011 Android, iOS, or CSS, and Windows Phone JavaScript.” 3. Adobe PhoneGap 4. React Native It provides support Allows developers to for various IDEs and use same codebase mobile app for both iOS and React Native is an development tools Android applications. open-source mobile and that is one of It offers hot framework that was the main reasons it reloading feature – created by is used by many which allows Facebook and companies such as developers to see released in 2015 Instagram, Tesla, changes to app in Walmart, Baidu, etc. real time as they to develop their make them. mobile apps 5. Flutter Flutter is a comparatively recent open-source development framework that was released by Google in 2017 Enables developers to build beautiful cross- platform mobile apps. It also offers hot reloading feature – which allows developers to see changes to app in real time as they make them. Flutter is written in the Dart programming language and it is currently used by famous companies such as Alibaba, Tencent, Google 6. Titanium SDK is an open-source framework that Titanium was created by Appcelerator, Inc. and released in 2018 SDK It is basically a development environment that can be used to create native apps across various operating systems like iOS, Android, BlackBerry, using JavaScript. It offers wide range of APIs and pre-built modules that can be used to add functionality to the app 7. JQuery jQuery Mobile is a Touch-Optimized UI Framework that was developed by the jQuery team and released in Mobile 2010 Built on top of the jQuery library, a popular JS library for web development. It is based on HTML5 and can be used to create responsive web sites and apps that can be accessed using multiple devices such as smartphones, tablets, desktops, etc According to the jQuery team, this takes the “write less, do more” mantra to the next level!!! Allows Corona Softwar developers to e Development create mobile Kit was It is easy to use apps and developed by and quick for games for iOS Corona Labs development and, Android Inc. and time. using Lua released in programming 2009 language. 8. Corona SDK – now Solar2D It offers a simple Swift is a and easy to use programming syntax and It is used to build language supports a wide native iOS apps. developed by range of iOS Apple. frameworks and APIs. 9. Swift Popular Offers a wide programming range of language libraries and Used to build created by frameworks native Android Sun that can be apps. microsystems, used to build now acquired native android by Oracle. apps. 10. Java Summary of Frameworks Framework Languages Example App Is it Free? To start IONIC HTML,CSS,JS Sworkit Yes Get npm 1st XAMARIN C#,.NET Storyo Yes(starter) Check the website Adobe Phone Gap HTML, CSS, JS Wikipedia Yes Get npm 1st Flutter Dart Google Ads Yes Get flutter sdk Corona Lua scripting Corona Geek Corona Simulator Check the SDK/Solar2D website Titanium SDK Js,XML, Alloy iComics Yes Get npm 1st JQuery Mobile HTML,CSS,JS,Jquer Bank of Yes Get npm 1st y Ajax America React Native JS Instagram Yes Get npm 1st Generic UI development Refers to the process of creating user interfaces (UI) that are flexible and can be used across multiple platforms and devices. This approach allows developers to create a single UI design that can be adapted for use on different screen sizes and resolutions. Techniques used in generic UI development – Responsive design – flexible/auto adjusting design – Modular design – break down the UI into smaller and reusable components – Design patterns – using pre-built UI components – Standardization – being consistent in using UI elements and design – Accessibility – consider the disabled group Some Design patterns Navigation drawer Bottom Navigation Wizard Floating Action Button Grid View Pull-to-Refresh Android User Android users are those who use mobile devices that run on the Android operating system, such as smartphones, tablets, or wearable devices Consider the following for an android user during development: – Understand android platform – Use a user centric approach during UX design – Optimize app performance – Test and debug app – Ensure security of app VUI – voice user interface VUI is a type of interface that allows users to interact with a device or application using voice commands. VUIs are commonly used in devices like smart speakers or in-car navigation systems. VUIs are designed to be hands-free and can be useful in situations where a user's hands are occupied, such as cooking or driving. An example of an application that uses both VUI and mobile app interfaces is the Amazon Alexa app. The Amazon Alexa app is a mobile app that allows users to control and customize their Amazon Alexa-enabled devices, such as the Amazon Echo or Echo Dot. Text to Speech Text-to-Speech (TTS) is a technology that allows mobile apps to convert written text into spoken words. TTS can be used to create a VUI (Voice User Interface) for mobile apps, allowing users to interact with an app using voice commands. Techniques: – Platform-specific APIs e.g. Android provides TextToSpeech API – Cloud-based TTS e.g. Google Cloud Text-to-Speech , Amazon Polly – Custom TTS Engines e.g. use open source libraries like MaryTTS or eSpeak – Pre-recorded Audio e.g. requires high storage space Designing the right UI Tips for designing the right UI: – Know your audience – Keep it simple – Use visual hierarchy – Use appropriate color schemes – Use appropriate typography – Use responsive design – Test and iterate Multichannel UI and Multimodal UI Multichannel UI: – Definition: A multichannel UI provides users with multiple channels to interact with a system, such as websites, mobile apps, and voice assistants. – Key Characteristics: Multiple Channels: Offers various access points for users. Independent Channels: Each channel operates independently, without seamless integration. Contextual Switching: Users may need to switch between channels, potentially losing context. – Example: A company that offers its services through a website, a mobile app, and a chatbot...cont’d… Multimodal UI – Definition: A multimodal UI combines multiple input and output modalities, such as speech, touch, gesture, and visual display, within a single interface. – Key Characteristics: Multiple Modalities: Utilizes various input and output methods simultaneously. Integrated Experience: Seamlessly blends different modalities for a cohesive user experience. Contextual Awareness: Understands the user's context and adapts the interface accordingly. – Example: A virtual assistant that can respond to voice commands, display visual information, and provide haptic feedback. Reading Assignment 1) Explore the recent(state of art) frameworks used for mobile application development and submit a report of it. 2) What is the Android API level? Explain the different versions of Android too. 3) Perform a comparative analysis of the software tools/IDE used to develop mobile applications and report the strengths and weaknesses of each tool. 4) What is the best practice for executing/running android applications? Report your findings by describing the strength and weakness of each. DUE DATE: Nov 15, 2025