Difference between revisions of "Mobile Development"

From Sinfronteras
Jump to: navigation, search
(Native Application Frameworks)
(Blanked the page)
(Tag: Blanking)
 
(2 intermediate revisions by the same user not shown)
Line 1: Line 1:
==Device Considerations==
 
  
 
<br />
 
===Platform===
 
Will you be developing for multiple platforms?
 
* Android
 
* iOS
 
* Windows 10 Mobile
 
* Blackberry 10
 
* Firefox OS
 
* Sailfish OS
 
* Tizen
 
* Ubuntu Touch
 
* CynaogenOS
 
 
 
<br />
 
===Hardware===
 
* Depending on the device, the specifications of hardware can be very different
 
* Some devices may not have certain components
 
* Vintage of components, such as processors and busses will make a difference to the chosen route
 
 
 
<br />
 
===Language===
 
* What programming languages are supported natively by the device?
 
* What language suits what you want to do best?
 
* Do you need a combination of languages for collaborative tasks?
 
 
 
<br />
 
 
===Form factor===
 
* Most platforms/OSes run on multiple devices, some more than others
 
* Can your application be utilised on all form factors regardless of screen/size?
 
 
 
<br />
 
 
==Native vs Hybrid Frameworks==
 
 
 
<br />
 
===Native Frameworks===
 
Native application frameworks allow developers to access the native platform/OS API directly through code and develop their applications directly to the platform standards and practices
 
 
 
* '''Pros:'''
 
:* Without other intermediate layers, this provides the best application per device in terms of performance
 
:* There is no third-party dependence on access to updates and bug fixes
 
 
 
* '''Cons:'''
 
:* As a native application is written and compiled for a specific platform/OS, deployment on another platform typically requires the maintenance of a totally separate project for each of the supported platforms.
 
:* How the application is distributed can be different for each platform, requiring the maintenance of a separate distribution channel per platform
 
 
 
====[[Mobile_Development#Android Studio|Android Studio]]====
 
 
 
<br />
 
 
===Hybrid Frameworks===
 
Web-based frameworks are essentially tools/processes/procedures that allow us to write an application as a website rather than using any native code (e.g. PhoneGap/Cordova)
 
 
 
* '''Pros:'''
 
:* Anyone with basic web-development skills (HTML, CSS, JS) can write a decent application.
 
:* There are several frameworks to choose from.
 
:* It is possible to wrap the content in an application or just access it with the built-in browser.
 
:* Applications can be accessible across multiple platforms.
 
 
 
* '''Cons:'''
 
:* Going through so many higher-level languages and interpreters makes run-time much slower than a native application
 
:* Each platform has a unique style and mode of operation. This gets lost in a web-based application or, at least, requires a lot of work to make it seem intuitive for each platform.
 
 
 
<br />
 
====React Native====
 
 
 
<br />
 
====[[Cordova - PhoneGap]]====
 
 
 
<br />
 
====Ionic and Capacitor====
 
 
 
<br />
 
==Android Studio==
 
https://developer.android.com/studio
 
 
Java version for Android Studio/Android SDK: https://android.tutorials24x7.com/blog/how-to-install-android-sdk-tools-on-ubuntu
 
 
Note: Before I installed Android Studio, there were already in my home directory these two folders:
 
.android
 
.AndroidStudio3.5
 
I don't know why because I haven't installed Android Studio before. It is possible that they were added when I try to build my ionic project using <code>Capacitor</code>, which requires Android Studio I think so, but I'm not sure about it.
 
 
 
To install Android studio just go to the official web site, download the package. After unzipping, you will have this folder:
 
android-studio
 
that already contain the bin files that can be just executed to open Android Studio. I have created a directory (./androidStudio) in my home and placed the above directory into it:
 
./androidStudio/android-studio
 
 
Then, we just need to execute the following file to open Android Studio:
 
./androidStudio/android-studio/studio.sh
 
The first time we execute <code>studi.sh</code>, we need to follow the setup wizard to configure, among other things, <code>android SDK</code>.
 
 
I have configured this path for android SDK:
 
~./androidStudio/.androidSDK
 
 
When I finished the setup wizard I got a message saying that my computer support hardware acceleration for the Android Emulator. To install and configure it you can follow:
 
* https://developer.android.com/studio/run/emulator-acceleration?utm_source=android-studio#vm-linux
 
* https://help.ubuntu.com/community/KVM/Installation
 
 
Then, we just need to add the paths to our ~/.bashrc:
 
 
 
<br />
 

Latest revision as of 13:03, 25 February 2026