13/06/2021 Week 2 – Notes: Android – Ground Zero Flashcards | Quizlet
Week 2 – Notes: Android – Ground Zero
Study
Week 2 – Notes: Android – Ground Zero Terms in this set (36)
Android
a mobile operating system developed by Google, based on the Linux kernel and designed primarily for touchscreen mobile devices such as smartphones and tablets
a collection of software that manages computer
An operating system (OS) hardware resources and provides common services
for computer programs”
Android Characteristics
Linux-based, Lightweight (wrt device resources), Designed for touchscreen mobile devices, Open Source (Apache License), Free, source code available for modification and redistribution, The most permissive open source license without even the need to push modifications back into the open source community
https://quizlet.com/za/212433045/week-2-notes-android-ground-zero-flash-cards/ 1/9
13/06/2021 Week 2 – Notes: Android – Ground Zero Flashcards | Quizlet
A set of interdependent, evolving componentsStthuadty Week 2 – Notes: Android – Ground Zero
together enable the creation and distribution of
What is the Android Ecosystem
Android Apps
– Cooperation between these components is essential to the well being of the Android Ecosystem
o Many problems have arisen as a result of lack of cooperation (see next slide)
– Compare with the iOS Ecosystem where nearly all components are controlled by Apple which ensures cooperation
Components includes hardware manufacturers, core and development software (IDEs) creators, distribution channels (marketplaces etc.), app developers and their communities, telcos, etc… i.e. the OHA + other App developers + marketplaces + users
an integer value that uniquely identifies the
API Level framework API revision offered by a version of the
Android platform
The minimum SDK version
This determines the lowest level of android that your app will run on
In order to provide the best features and
functionality across several Android versions, you Support Library Tip should use the Android in your app, which allows you to use several recent platform APIs on older
versions.
Activity Fragmentation
Division of an activity into different/multiple functionalities
https://quizlet.com/za/212433045/week-2-notes-android-ground-zero-flash-cards/ 2/9
13/06/2021 Week 2 – Notes: Android – Ground Zero Flashcards | Quizlet
the appalling number of Android versions runniSntgudy Week 2 – Notes: Android – Ground Zero
API Fragmentation
on consumer devices, but it also has been used to
refer to manufacturers’ skins and other matters (like security patches) in recent years
Old apps running on new platform versions
Most android applications are forward compatible, Forward Compatibility they have new versions of the android platform
because almost all changes to the framework API are additive
New apps(using new features) running on old
platform versions
Backward Compatibility Android apps are not usually backward compatible
with versions of the android platform older than the version against which they were compiled
A single, standalone module of application
functionality which usually correlates directly to a Activities single user interface screen and its corresponding
functionality” – [Activities have lifecycles as they are partially or fully hidden or killed by the OS.
Services
Processes that run in the background and do not have a user interface.
a component that runs in the background to perform long-running operations or to perform work for remote processes
Content Providers
A standard interface that connects data in one process with code running in another process
https://quizlet.com/za/212433045/week-2-notes-android-ground-zero-flash-cards/ 3/9
13/06/2021 Week 2 – Notes: Android – Ground Zero Flashcards | Quizlet
This class provides applications access to the Study Week 2 – Notes: Android – Ground Zero
content model.
Content Resolver
Broadcast Receivers are the mechanism by which Broadcast Receivers applications are able to respond to Broadcast
Intent
Intents
An Intent is a messaging object you can use to request an action from another app component.
A system wide intent that is sent out to all Broadcast Intents applications that have registered an “interested”
Broadcast Receiver
The Application Manifest File
It’s an XML file – It details all of an Apps components , their capabilities and more Includes- A declaration of all components in the application
Including for each, any capabilities wrt implicit inter- App intents
It helps you install/uninstal the SDK tools, Platforms, SDK Manager and other componente yo need to develop your
apps
AVD(Android virtual devise)
an emulator, its creates,edits, deletes, and runs/stops emulators
Which app component(s) is Animations, Drawable, Mipmap, Menus, Styles, (are) activated by an Intent? Colours, Strings, Layout of the activity
https://quizlet.com/za/212433045/week-2-notes-android-ground-zero-flash-cards/ 4/9
13/06/2021 Week 2 – Notes: Android – Ground Zero Flashcards | Quizlet
Explain how each of … Study Week 2 – Notes: Android – Ground Zero
these app components
are targeted by an intent
When and how is the API level initially set on an emulator?
Can it be changed? How?
API level is set when creating a new AVD. You can select it when the system image page appears
The target SDK and minimum SDK can be changed but if features are not allowed in older SDK you may get compile errors. You can use the support library to get around this but note that the v7 or v4 in an import statement refers to the minimum API level that the support library supports.
Example:
• android.support.v7.appcompat works on API 7+ which refers to Android 2.1.x
Note: minSdkVersion and targetSdkVersion take in a number that refers to the API level (which may confuse people)
Can it be changed? How?
Yes:
Right click the app directory
Choose the module setting option
Change the SDK and API to the level you require
https://quizlet.com/za/212433045/week-2-notes-android-ground-zero-flash-cards/ 5/9
13/06/2021 Week 2 – Notes: Android – Ground Zero Flashcards | Quizlet
During the creating of the emulator (app, not Study Week 2 – Notes: Android – Ground Zero
emulator)
When and how is the API level initially set on the app you are developing
Can it be changed? How?
During creation of the app
In the AVD manager (previous is asking about app, not emulator)
– Go to File > Project Structure then select “app” in the list on the left, go to “Flavors” tab and change min SDK and target SDK versions to the wanted values
Consider an app compiled against API level 22 on a device running Nougat. This usually works. Why? How could this go wrong?
Apps are typically forward compatible, as most changes to the API framework are additive. A device running nougat will be on an API level of 25, but an app on API level 22 will probably have no issue running on the newer device as all of the API used in the app will be available to the device.
It is important for an app to be forward compatibility as when users receive an OTA update to their android version it is critical all apps are functional after the update is complete.
The minSdkVersion attribute declares the minimum version with which your app is compatible (if you need a certain API to run) and the targetSdkVersion attribute declares the highest version on which you’ve optimized your app.
If the API version of the device is greater than the TargetSdkVersion then the system may enable compatibility behaviour to ensure the app runs as expected.
https://quizlet.com/za/212433045/week-2-notes-android-ground-zero-flash-cards/ 6/9
13/06/2021 Week 2 – Notes: Android – Ground Zero Flashcards | Quizlet
It could go wrong if Android decides to removeStuady Week 2 – Notes: Android – Ground Zero
feature for a security reason for example.
Consider an app compiled against API level 22 on a device running Nougat. This usually works
Can it be fixed without changing the API level of the app and the device? Explain.
If the app uses parts of an API that have been removed in an update then that feature won’t be available to the app. Therefore it may not perform as intended.
If maxSDKVersion is greater than the system API it will not be allowed to be installed on the system. (should not declare this attribute as it is not required. It may result in your application being removed from the users device if system is updated.)
Consider an app compiled against API 25 on a device running LollipopUntitled title How could this go wrong?
Android applications are not necessarily backward compatible with older versions of Android. Therefore, an app compiled against API level 25 may contain framework that will not work on Lollipop.
If it goes wrong can it be fixed always or sometimes?
Features that are not required could be removed to fix this but if those features are required. It is also possible to use the support library to try going around this but it is not always possible.
(It’s also possible to give the feature to newer devices whilst not giving it to older devices – if statements usually help with this)
https://quizlet.com/za/212433045/week-2-notes-android-ground-zero-flash-cards/ 7/9
13/06/2021 Week 2 – Notes: Android – Ground Zero Flashcards | Quizlet
Consider an app compiled Rather than building code to handle earlier versSitoudnys, Week 2 – Notes: Android – Ground Zero
against API 25 on a device you can leverage the Support Libraries to provide
running LollipopUntitled title. the backward compatibility layer, as it understands Under what circumstances can the fragments.
it be fixed?
Fluid UI design uses … relative dimensions
rather than absolute
dimensions so the UI
will scale to different screen sizes and orientations (e.g. 20% not 2 cm)
If you have prepared for your lab this week (it was part of prescribed pre-reading) you will have already encountered 2 relative specification of height and width
What are they and what do they mean?
A dp (or dip, Density … Independent Pixel) is
one physical pixel on a
160 dpi (Dots Per Inch)
screen? Is this an absolute or relative dimension? Explain
https://quizlet.com/za/212433045/week-2-notes-android-ground-zero-flash-cards/ 8/9
13/06/2021 Week 2 – Notes: Android – Ground Zero Flashcards | Quizlet
Name 5 things that can … Study Week 2 – Notes: Android – Ground Zero
be defined using
Android resources
Android can select … between alternate
resources depending
on device
configuration.Give 2 examples of resource selection
How are alternate … resources
distinguished?
With respect to Android … what is forward
compatibility? What
would prevent it?
With respect to Android … what is Back
compatibility? What
would be a
disadvantage
https://quizlet.com/za/212433045/week-2-notes-android-ground-zero-flash-cards/ 9/9