Difference between revisions of "Android"

From BC$ MobileTV Wiki
Jump to: navigation, search
Line 414: Line 414:
 
<ref>Android JetPack - Navigation Architecture Component: https://medium.com/deemaze-software/android-jetpack-navigation-architecture-component-b603c9a8100c</ref>
 
<ref>Android JetPack - Navigation Architecture Component: https://medium.com/deemaze-software/android-jetpack-navigation-architecture-component-b603c9a8100c</ref>
 
<ref>Using the Navigation Component (from JetPack) in a modular world: https://medium.com/swlh/using-the-navigation-component-in-a-modular-world-e7578825962</ref>
 
<ref>Using the Navigation Component (from JetPack) in a modular world: https://medium.com/swlh/using-the-navigation-component-in-a-modular-world-e7578825962</ref>
 +
<ref>The State of Navigation in Jetpack Compose: https://proandroiddev.com/the-state-of-navigation-in-jetpack-compose-cc13eb6ac3d9</ref>
  
  

Revision as of 04:05, 23 June 2022

Android - the open source operating system for mobile devices[1]

Android is the codename (and now working name) of the open source mobile operating system (Mobile OS) project started and currently being lead by Google. Android is to be the core physical product of the labors of the Open Handset Alliance.


HTC touch, the first majorly successful Android mobile phone by Samsung


Contents

OS Versions

There's a predictable annual "release cycle" for Android versions:

Android release-cycle.png

[2] [3] [4] [5] [6] [7]

Android

Brownie

Unofficial name, it was actually still just called Android in the public (and internally they used the term "le petit four").

Cupcake

Donut

Eclair

Froyo

Gingerbread

Honeycomb

Ice cream sandwich

Jellybean

KitKat

Lollipop

Marshmallow

Nougat

Oreo

Pie

Q

No official codename so let's go with "Quindim" (a Brazilian dessert).

[16] [17][18] [19]

R (11)

"Rocky Road" squares are probably one of the best unofficial codenames.

As of Android "R" (11.0 release), the Android platform will now be numbered, and "sweets names" or letters will only be used as a working title internally by Google & OEM partners prior to platform updates, simplifying the "annual to semi-annual" major platform updates.

[20] [21] [22] [23] [24] [25] [26] [27] [28] [29] [30]


12

Codenames have returned with "Snow Cone".

[31] [32] [33] [34] [35] [36] [37] [38] [39]

13

Codenamed "Tiramisu" (but its hidden in Dev preview code).

[40] [41] [42] [43] [44] [45] [46]


14

Fuchsia

[47] [48] [49] [50] [51] [52] [53] [54] [55] [56] [57]


Device versions

In comparison to the primary Mobile OS competitor, Apple's iOS, there have been a massively broad variety of Devices released with various combinations of minimum and maximum supported (and upgradeable) Android platform OS version ranges.

[58] [59] [60] [61] [62]


Google

Google entered the Device manufacturing market as their own OEM after first parterning with (and acquiring a majority stake in) the Motorola electronics company. This was later sold off to Lenovo (group built success in PC market after acquiring the IBM ThinkPad product line), at which point Google invested into building their own Device manufacturing arm, citing mainly a desire to fully control the design, development, testing, production, distribution and maintenance/support phases.

[63] [64] [65]

Samsung

[66] [67]

LG

[68]

HTC

[70] [71] [72]


Other

The primary vendor OEMs other than those listed above include:

A number of other prominent vendors have "dabbled" into the platform for reasons ranging from "if you can't beat'em join'em" to simply trying to cache in on the Mobile market and Android's notoriety, including:

  • Microsoft (have scrapped their prior Windows Mobile & Windows Phone OS offerings)
  • Blackberry (formerly called RIM, have all but scrapped the BlackBerryOS)
  • HP (briefly launched a Tablet product line but now focusing back on PCs and full Windows Tablets)[73]
  • Dell
  • Toshiba
  • Lenovo
  • Palm
  • Archos
  • Alacatel-Lucent
  • Barnes & Noble ("Nook" series and related E-Books & reader tablets)

Some brands known for more poorly performing, or, simply intentionally lower-powered, cheaper/low-end devices:

  • Oppo
  • OnePlus
  • BBK Electronics
  • BQ Aquaris

[74] [75] [76] [77] [78] [79]

Virtual Environments

A number of platforms support loading Android apps on non-Android Operating Systems, such as:

  • BlackBerry 10
  • Amazon Fire OS
  • Windows 11
  • BlueStacks
  • MEMu
  • Genymotion
  • AnBox
  • Nox App Player

[80]


Development Environments

Android Studio

[81] [82] [83] [84] [85] [86] [87] [88] [89] [90] [91] [92]


Programming Languages

Java (Dalvik)

See: Java#Dalvix

Kotlin

See: Kotlin


Testing

See: Mobile Testing

Unit Testing

See: JUnit

Instrumented Testing

[93] [94] [95]

UI Automator

Espresso

[96]


SCA

[97]

ProGuard

[98]



Platform

Mobile/Tablet

The core, original Android platform was designed to run on SmartPhones, and was later extended to support a broader variety of screen sizes, capable of running on anything from a small "feature phone" (original before DPI/PPI-scaling was 320x240) to a standard high-resolution scaled SmartPhone display (768x1024). As of Android 4.0 a platform resdesign broguht in support for much larger Phablet phones (some as high as 2960x1440 DPI/PPI-scaled) up to full tablets (starting at 1366x768 unscaled up to 2224x1668 DPI/PPI-scaled), which actually enabled Android to be used for a number of larger other types of display such as TVs or Kiosks (starting at 1920x1080 before DPI/PPI-scaling up to 3840x2160 all the way up to 4K 4096x2304 or 8K 7680x4320).

[99]


Android TV

The development of a large number of "Android TV boxes" as of Android 4.x which were primarily software-based .

[100] [101] [102] [103]


Android Wear

SmartWatches, Fitness Bands/Trackers, and similar wearable devices.


Android Things

Android-based mini operating system (OS) for embedded devices and micro-controllers such as Raspberry PI, Arduino, etc.

[104]


Android Auto


JetPack

Announced at GoogleIO 2018[105], Android Jetpack is a collection of reusable, purpose-built, highly-performant and customizable software components for the Android platform which help us in building great Android apps in a consistent manner across the various media/devices the Android platform supports (Android Mobile/Tablet, TV, Wear, Things).

These software components help in:

  • Following the best practices and providing IDE auto-complete and/or templates to avoid needing to re-write any necessary boilerplate code
  • Making complex concerns such as managing activity lifecycles, surviving configuration changes, preventing memory leaks, and passing/persisting data much simpler

The JetPack software components have been arranged into 4 distinct categories:

AndroidJetpack.png

[106] [107] [108] [109] [110]


AndroidX

AndroidX is a major improvement to the original "Android Support Library" (ASL), which is no longer maintained but still functions for Android OS versions 1-9. There are Androidx packages to replace each Support Library, providing feature parity and also provide unique new features through additional libraries. Artifacts within the "androidx" namespace comprise the Android Jetpack libraries. Like the Support Library, libraries in the androidx namespace ship separately from the Android platform and provide backward compatibility across Android releases.

[111] [112] [113] [114] [115]


Foundation Components

Architecture Components

[116] [117] [118] [119] [120] [121]

Behavior Components

Compose

"Compose" is a library that offers a set of UI Components that can replace much of the XML-based UI configuration which was previously required for all native Android apps.

[124]


Features

[125]

[126]

Project Mainline

Cite error: Closing </ref> missing for <ref> tag


Accessibility

TTS

STT

OCR

[127] [128] [129] [130] [131] [132]

Security

Keystore

Credentials

SSO

Privacy Dashboard

[133] [134]


Utilities

Libraries

[135] [136] [137] [138] [139]

Bundles

[140] [141] [142] [143] [144] [145] [146]


Dynamic Bundle loading

[147] [148] [149] [150]

Auto-Update

[151]

Focus

[152] [153] [154]


Clock

Alarm


Calendar

Reminders

Notes

[155] [156] [157] [158]

Clipboard


Firebase

[159] [160] [161] [162] [163] [164] [165] [166] [167] [168] [169] [170] [171] [172] [173] [174] [175] [176]

Machine Learning


Graphics

[177] [178]

Animation

[180]


Layering

Camera

[194] [195] [196] [197] [198]

File System

Photos


Bluetooth

[199]

Email


Internet

Browser

[200] [201]

WebView

[202] [203] [204] [205] [206] [207] [208] [209] [210] [211] [212] [213] [214] [215] [216] [217] [218] [219] [220] [221]


Android Beam (discontinued)

[222] [223] [224] [225]


Nearby "Sharing/Fast Share"

Nearby Sharing (also referred to as FastShare) is the name of the successor of the "Android Beam" feature for "local network"-based file sharing over WiFi-Direct/NFC/Bluetooth.

[226] [227] [228] [229]


Development concepts

Layouts

[230] [231]

  • Re-using layouts with <include/>: developer.android.com/training/improving-layouts/reusing-layouts

[232]

[233] [234] [235]

Views

ListView

Intents

[238] [239] [240]

Manifest XML

The Manifest XML

[241] [242] [243]

App Links

Standard App links - linking into a specific app from a standard web link (URL) - take the format:

https://play.google.com/store/apps/details?id=<package_name>&launch=true

[244] [245] [246] [247]

Activity Intent Deep-Linking

You can also "deep-link" from the web into specific screens (Activities) of your Android app using Intents.

[248] [249] [250] [251]

Android assetlinks.json

Further to app-linking and deep-linking, you can also "asset-link" which will enable automatically launching a specific App/Activity/Intent combination based on a two-way configuration between your app and your website, using "./well-known/assetlinks.json" file on your web server, and a specific "<intent-filter>" configuration within your app's "AndroidManifest.xml" file.

[252] [253] [254] [255] [256] [257] [258] [259] [260]

Instant App

[261] [262]

AppWidgets

Abbreviated displays of part of an app's full capabilities, shown on the lock screen and/or notification center.

Manifest JSON

The Manifest JSON configuration file enables both PWA features, and, enhanced deep-linking between Web & Mobile App experiences. This file typically lives on the web server to help in associating a website or WebApp to a corresponding Mobile App. It typically lives in the ".well-known" path, such as:

https://www.example.com/.well-known/manifest.json

Though it could just be placed in the root director as well.

[263] [264]


Architectures

MVC

MVVM

[265] [266] [267] [268] [269] [270] [271] [272] [273] [274] [275] [276] [277] [278] [279] [280]

Observables

[281] [282]

[283]


MVP

[284] [285]

MVI

[286] [287] [288] [289] [290]


Google Play

The Google Play! store (formerly Google WebStore), is the online marketplace for downloading games, apps, ringtones, content, etc for your Android mobile device.

[291] [292] [293]



APPS



Tools


Resources

[308]

[314]

[315] [316] [317][318] [319] [320] [321] [322]

[327]

[328] [329]


[330] [331] [332] [333] [334]

[335] [336] [337] [338] [339] [340] [341]

[342] [343] [344] [345] [346] [347] [348] [349] [350] [351] [352]

[355] [356]

[357] [358] [359] [360] [361] [362] [363] [364] [365] [366]


Tutorials

[369] [370] [371]

[372] [373]

[376] [377] [378]

[383]

[387] [388]

[389] [390] [391]

[392] [393]

[394]

[396] [397] [398]

[400]

[404] [405] [406] [407]

[408] [409] [410] [411] [412] [413]

[416] [417] [418] [419] [420] [421]

[425] [426]

[427]

[428] [429] [430] [431] [432] [433] [434] [435] [436] [437] [438] [439] [440] [441] [442] [443] [444]

[446] [447] [448]

[454]

[455] [456] [457] [458] [459] [460] [461]

[468] [469] [470]

[495] [496]

[497][498][499]

[500] [501]


External Links

[502] [503]


References

  1. ANDROID Robot + Logo: Portions of this page are modifications based on work created and <a href="http://code.google.com/policies.html">shared by Google</a> and used according to terms described in the <a href="http://creativecommons.org/licenses/by/3.0/">Creative Commons 3.0 Attribution License</a>.
  2. wikipedia: Android version history
  3. wikipedia: List of features in Android
  4. Android versions -- A living history from 1.0 to 11: https://www.computerworld.com/article/3235946/android-versions-a-living-history-from-1-0-to-today.html
  5. The ugly truth behind Android's OS version/capabilities upgrade problem: https://www.computerworld.com/article/3175067/android-upgrade-problem.html
  6. Retrieving Android API version programmatically: https://stackoverflow.com/questions/3423754/retrieving-android-api-version-programmatically
  7. The 10 Greatest Versions of Android, Ranked: https://www.howtogeek.com/719851/the-10-greatest-versions-of-android-ranked/
  8. wikipedia: Android Ice Cream sandwich
  9. wikipedia: Android Jelly Bean
  10. wikipedia: Android KitKat (4.4, API 19-20)
  11. wikipedia: Android Lollipop (5.0, API 21-22)
  12. wikipedia: Android Marshmallow (6.0, API 23)
  13. wikipedia: Android Nougat (7.0, API 24-25)
  14. wikipedia: Android Oreo (8.0, API 26-27)
  15. wikipedia: Android Pie (9.0, API 28)
  16. wikipedia: Android Q (10.0, API 29)
  17. Android Q -- Everything you need to know!: https://www.androidcentral.com/android-q
  18. Welcoming Android 10!: https://android-developers.googleblog.com/2019/09/welcoming-android-10.html (2019-09-03)
  19. Google cuts the sugar out of Android with a simplified name and fresh logo : https://www.digitaltrends.com/mobile/google-rebrands-android-drops-dessert-naming-scheme/
  20. wikipedia: Android 11 (11.x aka "R", API 30)
  21. Turning it up to 11 - the first Developer Preview of Android 11: https://android-developers.googleblog.com/2020/02/Android-11-developer-preview.html
  22. Android 11 - Developer preview highlights: https://levelup.gitconnected.com/android-11-developer-preview-highlights-5b56c5b1c3cb
  23. Top Features of Android 11 from Developer’s Point of View: https://android.jlelse.eu/android-11-developers-point-of-view-39f0f135da88
  24. Android 11 timeline -- Three developer previews, first beta in May, and Q3 2020 launch: https://9to5google.com/2020/02/19/android-11-launch-timeline/
  25. Android 11 release date and what we know about the upcoming OS upgrade: https://www.techradar.com/news/android-11
  26. Android 11 preview released -- These are the top new features: https://www.tomsguide.com/news/android-11-preview-released-these-are-the-top-new-features
  27. Google releases Android 11 developer preview earlier than expected: https://www.theverge.com/2020/2/19/21143789/google-android-11-developer-preview-release-5g-security-early
  28. The first Android 11 developer preview has already landed: https://www.androidpit.com/android-11-release-date-news-features
  29. Android 11 roundup -- Everything new with Android 11: https://9to5google.com/guides/android-11/
  30. How to install the Android 11 Developer Preview on Google Pixel devices (VIDEO): https://9to5google.com/2020/02/19/android-11-google-pixel-install-developer-preview/
  31. First preview of Android 12: https://android-developers.googleblog.com/2021/02/android-12-dp1.html
  32. Google Will Let You Opt Out of Being Tracked by Apps in Android 12: https://gizmodo.com/google-will-let-you-opt-out-of-being-tracked-by-apps-in-1847029681
  33. Android 12 Beta 2 adds more privacy features: https://sdtimes.com/softwaredev/android-12-beta-2-adds-more-privacy-features/?activecampaign_id=123002
  34. Android 12 Beta 4 reaches "Platform Stability": https://android-developers.googleblog.com/2021/08/android-12-beta-4-and-platform-stability.html
  35. What Is Android 12L?: https://www.howtogeek.com/767928/what-is-android-12l/
  36. Google Brings Back Dessert Codenames For New OS, Names Android 12 ‘Snow Cone': https://www.republicworld.com/technology-news/mobile/google-brings-back-dessert-codenames-for-new-os-names-android-12-snow-cone.html
  37. "Material You" Coming to more Android devices near you: https://android-developers.googleblog.com/2022/02/material-you-coming-to-more-android.html
  38. Android 12’s “Material You” Is Coming to These 5 Phones: https://www.howtogeek.com/785428/android-12s-material-you-is-coming-to-these-5-phones/ (sSmsung,
  39. How to Install Android 12L on a Google Pixel: https://www.howtogeek.com/799089/how-to-install-android-12l-on-a-google-pixel/
  40. The first developer preview of Android 13: https://android-developers.googleblog.com/2022/02/first-preview-android-13.html
  41. Google debuts Android 13 with its first developer preview: https://www.theverge.com/2022/2/10/22926874/android-13-features-developer-previewlanguage-controls
  42. Android 13’s Developer Preview Boosts Your Photo Privacy: https://www.howtogeek.com/785448/android-13s-developer-preview-boosts-your-photo-privacy/
  43. Android 13 Is Named After the Classic Italian Dessert: https://www.howtogeek.com/785630/android-13-is-named-after-the-classic-italian-dessert/
  44. Yep, Android 13’s dessert codename is ‘Tiramisu’ after all: https://www.theverge.com/tldr/2022/2/11/22928812/android-13-cake-codename-tiramisu
  45. Android 13 Phones Can Run Windows 11, Here’s Why: https://www.howtogeek.com/785972/android-13-phones-can-run-windows-11-heres-why/
  46. Android 13 deep dive -- Every change, thoroughly documented: https://blog.esper.io/android-13-deep-dive/
  47. Google is working on software that could eventually replace Android: https://mashable.com/article/google-fuchsia-os-replace-android-five-years/
  48. Google Fuchsia - Armadillo Smartphone OS, Not Based on Linux, Spotted in Images and Video: https://gadgets.ndtv.com/internet/news/google-fuchsia-armadillo-linux-smartphone-os-image-video-leak-1691260
  49. Fuchsia OS Spotted on Google's Android Open Source Project (AOSP), Said to Natively Support Android Apps: https://gadgets.ndtv.com/android/news/fuchsia-os-android-aosp-art-native-support-android-apps-1844248
  50. Is Fuchsia going to replace Android? Flutter with Fuchsia next big thing?: https://sanjibsinha.com/is-fuchsia-going-to-replace-android-flutter-with-fuchsia-next-big-thing/
  51. What is Google’s Fuchsia OS?: https://www.androidauthority.com/what-is-google-fuchsia-os-847784/
  52. Leaker says Samsung will probably switch to Google’s mysterious new mobile OS: https://www.yahoo.com/entertainment/leaker-says-samsung-probably-switch-161332751.html
  53. Google might have quietly teased the OS that will replace Android: https://www.msn.com/en-us/news/technology/google-might-have-quietly-teased-the-os-that-will-replace-android/ar-BB1dQB44
  54. Google’s mysterious OS (Fuchsia) that might replace Android just reached a new milestone -- Bluetooth Cerification (Google Sapphire 1.0 Bluetooth Core Host Solution): https://www.msn.com/en-us/news/technology/googles-mysterious-os-that-might-replace-android-just-reached-a-new-milestone/ar-BB17UGj9
  55. Google Fuchsia First Beta to Replace Android, Chrome OS: How to Download?: https://www.techtimes.com/articles/258295/20210323/google-fuchsia-first-beta-replace-android-chrome-os-download.htm
  56. Report -- Google's new Fuchsia OS could replace Android - or not: https://www.cnet.com/news/report-google-new-fuchsia-os-could-replace-android-or-not/
  57. Why Google's Fuschia won't replace Android and Chrome OS: https://www.techrepublic.com/article/why-googles-fuschia-wont-replace-android-and-chrome-os/
  58. How to Find Out What Model of Android Phone You Have: https://www.howtogeek.com/347761/how-to-find-out-what-model-of-android-phone-you-have/
  59. Top Android phone manufacturers: https://www.appbrain.com/stats/top-manufacturers
  60. Top 10 Smartphone OEMs Listed, 6 Of Them Are From China: https://www.androidheadlines.com/2015/05/top-10-smartphone-oems-listed-6-china.html
  61. New report compares Android OEMs - Motorola is the fastest with updates, Sony has lowest crash rate: https://9to5google.com/2016/08/16/android-oems-compared/
  62. What are "Android Skins"?: https://www.howtogeek.com/701801/what-are-android-skins/ (custom "entire OS" themes/styling/gestures/default-apps/settings)
  63. Google Nexus vs Google Pixel -- What's the difference?: https://www.pocket-lint.com/phones/buyers-guides/google/135451-google-nexus-vs-google-pixel-what-s-the-difference (Nexus is designed & manufactured by Google partners based on Google's specs: Samsung, LG, Motorola, Nokia; whereas Pixel is fully designed, developed, manufactured, distributed & supported by Google, but some phases still having strategic partner involvement such as Intel design & HTC manufacture)
  64. Google Nexus vs Google Pixel - What's the difference?: https://www.quora.com/Google-Nexus-vs-Google-Pixel-Whats-the-difference
  65. Google Pixel starts to challenge Samsung in UK Android market: https://telecoms.com/502822/google-pixel-starts-to-challenge-samsung-in-uk-android-market/
  66. Samsung Galaxy S7: https://www.gsmarena.com/samsung_galaxy_s7-7821.php
  67. wikipedia: Category:Android_(operating_system)_devices
  68. List of Android 10 Supported LG Devices: https://www.getdroidtips.com/list-of-android-q-supported-lg-devices/
  69. wikipedia: HTC Sense
  70. wikipedia: Google Nexus
  71. wikipedia: Nexus One
  72. What Was HTC Sense, and How Did It Change Android?: https://www.howtogeek.com/717107/what-was-htc-sense-and-how-did-it-change-android/
  73. HP abandons low-end Android tablets to focus on profitability with iPad-like prices: https://appleinsider.com/articles/15/12/03/hp-abandons-low-end-android-tablets-to-focus-on-profitability-with-ipad-like-prices
  74. wikipedia: Android_One#Products_by_year_of_announcement_or_release (intentionally low-powered/lower-end/cheaper Android devices from well-known Android OEMs)
  75. Stock Android vs Android One vs Android Go: https://www.androidauthority.com/stock-android-vs-android-one-vs-android-go-860020/
  76. IDC data shows 66% of Android's 81% smartphone share are junk phones selling for $215 or less (high "designed for the dumb" likelihood, in network-limited markets, leading to low real-world usage outside of calls/texts): https://appleinsider.com/articles/13/11/12/idc-data-shows-66-of-androids-81-smartphone-share-are-junk-phones-selling-for-215
  77. Cheap smartphones have a disturbing secret: https://www.fastcompany.com/90408472/cheap-smartphones-have-a-disturbing-secret
  78. Best budget phones you can buy (January 2020): https://www.androidauthority.com/cheap-android-phones-269520/
  79. Apps with great experiences on large screens: https://developer.android.com/large-screens/stories
  80. Why Windows 11’s Android apps are better than BlueStacks: https://www.howtogeek.com/766547/why-windows-11s-android-apps-are-better-than-bluestacks/
  81. The powerful Android Studio: http://saulmm.github.io/the-powerful-android-studio (animated GIFs of some key new feature as of 2016)
  82. How I automated creating files for a new screen with my own Android Studio plugin: https://proandroiddev.com/how-i-automated-creating-files-for-a-new-screen-with-my-own-android-studio-plugin-5d54b14ba6fa
  83. Android Studio - Debug Your App: https://developer.android.com/studio/debug/index.html (steps for when you want to debug a native or hybrid app and have access to the code)
  84. Android Studio - Create and Edit Run/Debug Configurations: https://developer.android.com/studio/run/rundebugconfig.html
  85. How to Debug Android application line by line using Eclipse?: https://stackoverflow.com/questions/8551818/how-to-debug-android-application-line-by-line-using-eclipse
  86. How to increase the font size in Android Studio?: https://stackoverflow.com/questions/16590216/how-to-increase-the-font-size-in-android-studio
  87. Search all the occurrences of a string in the entire project in Android Studio: https://stackoverflow.com/questions/20252180/search-all-the-occurrences-of-a-string-in-the-entire-project-in-android-studio (CTR+SHIFT+F shortcut to "Find All in Project")
  88. My Android Studio project keeps running my old project/application: https://stackoverflow.com/questions/27132140/my-android-studio-project-keeps-running-my-old-project-application
  89. How to fixed if it won't run unless I update "google play service" in android studio: https://stackoverflow.com/questions/39730327/how-to-fixed-if-it-wont-run-unless-i-update-google-play-service-in-android-stud#40333081
  90. How To Change Package Name In Android Studio: https://abhiandroid.com/androidstudio/how-to-change-package-name-android-studio.html
  91. Quick search on filename Android studio: https://stackoverflow.com/questions/25419684/quick-search-on-filename-android-studio (double-type SHIFT key for "Search All" across all IDE including settings, CTRL+SHIFT+N to "find by filename" similar to Eclipse/Netbeans)
  92. How to get the package name of current launcher in Android?: https://stackoverflow.com/questions/25055762/how-to-get-the-package-name-of-current-launcher-in-android
  93. Developing Android unit and instrumentation tests (in Java) tutorial: https://www.vogella.com/tutorials/AndroidTesting/article.html
  94. Android Testing - How to Perform Instrumented Tests (in Kotlin): https://medium.com/swlh/android-testing-how-to-perform-instrumented-tests-2000a75b6f73 | BACKUP
  95. A guide to test pyramid in Android — Instrumented tests — Part 3: https://proandroiddev.com/a-guide-to-test-pyramid-in-android-instrumented-tests-part-3-3ae46049fe
  96. Friendspell: https://github.com/chiuki/friendspell (Party icebreaker game based on the Google Nearby API, with usages of Unit Tests, Instrumentation Tests, Espresso UI Tests)
  97. Getting The Most Out Of Android Lint: https://medium.com/@intelia/getting-the-most-out-of-android-lint-6df05a7ab054
  98. Little more about ProGuard for Android: https://medium.com/android-news/little-more-about-proguard-for-android-5aed2e18f6f1
  99. TV resolution confusion: 1080p, 2K, UHD, 4K, 8K, and what they all mean: https://www.cnet.com/news/4k-1080p-2k-uhd-8k-tv-resolutions-explained/
  100. Channels on the home screen: https://developer.android.com/training/tv/discovery/recommendations-channel
  101. How to Force Close Apps on Android TV: https://www.howtogeek.com/688347/how-to-force-close-apps-on-android-tv/
  102. How to Customize the Android TV Home Screen: https://www.howtogeek.com/686217/how-to-customize-the-android-tv-home-screen/
  103. How to Use Your Android Phone as a Google TV Remote: https://www.howtogeek.com/757203/how-to-use-your-android-phone-as-a-google-tv-remote/
  104. IoT, Android Things, and the Cloud: https://dzone.com/articles/iot-android-things-and-the-cloud
  105. Android gets a Jetpack: https://techcrunch.com/2018/05/08/android-gets-a-jetpack/
  106. What is Android Jetpack and why should we use it?: https://blog.mindorks.com/what-is-android-jetpack-and-why-should-we-use-it
  107. What exactly is Android Jetpack?: https://stackoverflow.com/questions/50251658/what-exactly-is-android-jetpack
  108. Android JetPack - Navigation Architecture Component: https://medium.com/deemaze-software/android-jetpack-navigation-architecture-component-b603c9a8100c
  109. Using the Navigation Component (from JetPack) in a modular world: https://medium.com/swlh/using-the-navigation-component-in-a-modular-world-e7578825962
  110. The State of Navigation in Jetpack Compose: https://proandroiddev.com/the-state-of-navigation-in-jetpack-compose-cc13eb6ac3d9
  111. How AndroidX changes the way we work with Activities and Fragments: https://medium.com/@miloszlewandowski/how-androidx-changes-the-way-we-work-with-activities-and-fragments-73b88d157678
  112. Migrating to AndroidX - tips, tricks, and guidance: https://medium.com/androiddevelopers/migrating-to-androidx-tip-tricks-and-guidance-88d5de238876
  113. Restitching Plaid: https://medium.com/@crafty/restitching-plaid-9ca5588d3b0a (migrating to AndroidX)
  114. Patchwork Plaid — A modularization story:
  115. Loaders in Support Library 27.1.0: https://medium.com/androiddevelopers/loaders-in-support-library-27-1-0-b1a1f0fee638 (basically any call to getLoaderManager() becomes LoaderManager.getInstance(this) so the code will need changing to LoaderManager.getInstance(this).initLoader(LOADER_ID, null, this);)
  116. What are Android Architecture Components?: https://blog.mindorks.com/what-are-android-architecture-components
  117. Architecture Components - Easy Mapping of Actions and UI State: https://android.jlelse.eu/architecture-components-easy-mapping-of-actions-and-ui-state-207663e3fdd
  118. Android Architecture Components -- Lifecycle example using Camera access use-case: https://android.jlelse.eu/android-architecture-components-lifecycles-8990957e7e28
  119. Architecture Components - Easy Mapping of Actions and UI State: https://medium.com/android-news/architecture-components-easy-mapping-of-actions-and-ui-state-207663e3fdd
  120. Architecture Components & MVP / MVVM: https://medium.com/android-news/architecture-components-mvp-mvvm-237eaa831096
  121. Introducing Android Sunflower: https://medium.com/androiddevelopers/introducing-android-sunflower-e421b43fe0c2
  122. A modern approach to Android development, with Jetpack Compose and more!: https://android-developers.googleblog.com/2019/10/android-dev-summit-2019-keynote.html
  123. Jetpack Compose is now 1.0 -- announcing Android’s modern toolkit for building native UI: https://android-developers.googleblog.com/2021/07/jetpack-compose-announcement.html
  124. ShapeableImageView — "Material Components" for Android: https://medium.com/android-beginners/shapeableimageview-material-components-for-android-cac6edac2c0d
  125. Android Open Source Project: http://www.youtube.com/watch?v=7Y4thikv-OM
  126. Run Multiple Apps, All At Once on Android-Powered Phones: http://www.youtube.com/watch?v=q1m4j676BCc
  127. Scan Barcodes with ML Kit on Android: https://developers.google.com/ml-kit/vision/barcode-scanning/android
  128. QR Code Scanner – Barcode Scanner for Android: https://www.journaldev.com/18198/qr-code-barcode-scanner-android
  129. Android Barcode Reader and Qr Code Scanner using Google Mobile Vision: https://medium.com/cashify-engineering/barcode-reader-using-google-mobile-vision-88b3e9f31668
  130. Android SDK -- Create a Barcode Reader - ZXing (Zebra Crossing): https://code.tutsplus.com/tutorials/android-sdk-create-a-barcode-reader--mobile-17162
  131. Android QR Code Scanner Tutorial using Zxing Library: https://www.simplifiedcoding.net/android-qr-code-scanner-tutorial/
  132. Creating a Barcode Scanner using Android Studio: https://medium.com/analytics-vidhya/creating-a-barcode-scanner-using-android-studio-71cff11800a2
  133. What Is the Privacy Dashboard on Android?: https://www.howtogeek.com/733712/what-is-the-privacy-dashboard-on-android/
  134. Android 13's privacy dashboard prepares to show you the big picture: https://www.androidpolice.com/android-13s-privacy-dashboard-prepares-to-show-you-the-big-picture/
  135. Create an Android library: https://developer.android.com/studio/projects/android-library
  136. Why your Android Studio takes forever to build: https://medium.com/@temidjoy/why-your-android-studio-takes-forever-to-build-e8a638f97b34
  137. Why your Android Studio takes forever to build-Part 2: https://medium.com/@temidjoy/why-your-android-studio-takes-forever-to-build-part-2-c1b9c38e894b
  138. How Linux kernel interfaces with android runtime and libraries?: https://stackoverflow.com/questions/37436869/how-linux-kernel-interfaces-with-android-runtime-and-libraries
  139. How to publish and distribute your Android library: https://medium.com/swlh/how-to-publish-and-distribute-your-android-library-ce845c68c7f7
  140. wikipedia: Android_application_package (Android application Package)
  141. What does APK stand for? What is the internal format?: https://android.stackexchange.com/questions/1365/what-does-apk-stand-for-what-is-the-internal-format
  142. Getting inside APK files: https://medium.com/android-news/getting-inside-apk-files-21dbd01529d4
  143. APK vs AAB - Why Is Google Changing Android’s App Format?: https://www.cloudsavvyit.com/12544/apk-vs-app-bundle-why-is-google-changing-androids-app-format/
  144. What Is an Android App Bundle (AAB)?: https://www.howtogeek.com/739098/what-is-an-android-app-bundle-aab/
  145. A Practical Guide to Android App Bundle for Beginners: https://medium.com/better-programming/a-practical-guide-to-android-app-bundle-for-beginners-7e8d93831828
  146. R8 Shrinking in Android: https://betterprogramming.pub/r8-shrinking-in-android-27f3edbbad9e
  147. Android Tutorial - How to reduce Android app size?: https://dev.to/amitspaceo/how-to-reduce-android-app-size-android-tutorial-578i
  148. Reduce APK size: https://developer.android.com/topic/performance/reduce-apk-size
  149. 5 Easy Hacks To Reduce The Android APK Size: https://android.jlelse.eu/5-easy-hacks-to-reduce-the-android-apk-size-2f343b30187
  150. Twitter uses app bundles to keep their app featherweight, reducing its app size by a third: http://https://developer.android.com/stories/apps/twitter
  151. How to Disable Automatic App Updates in Android: https://www.howtogeek.com/202297/how-to-disable-automatic-app-updates-in-android/
  152. Ten New Features in Android 10: https://www.androidinfotech.com/new-features-android-10/#8_Focus_mode
  153. Google’s Digital Wellbeing is schooling Apple on how to combat smartphone addiction: https://www.pcworld.com/article/401938/google-digital-wellbeing-android-p.html
  154. Android Digital Wellbeing - How to sign up, set up, and break your bad habits: https://www.pcworld.com/article/402383/android-digital-wellbeing.html
  155. Where are notepad notes stored?: https://android.stackexchange.com/questions/215061/where-are-notepad-notes-stored#215070
  156. Where does Huawei Ascend Y300 store "Notes"?: https://forum.xda-developers.com/t/q-where-does-huawei-ascend-y300-store-notes.2810932/ (initially stored in /data/data/com.android.notes/files in SQLite format in a file called note_pad.db but this seems to have changed in later Android versions)
  157. How to Trans­fer Notes to a New Phone: https://www.guidingtech.com/transfer-notes-new-phone/
  158. How to Transfer Notes from Huawei to Samsung (2020): https://www.wikihow.com/Transfer-Notes-from-Huawei-to-Samsung
  159. Firebase Test Lab: https://firebase.google.com/docs/test-lab/
  160. Firebase Android Codelab - Build Friendly Chat (in Java): https://codelabs.developers.google.com/codelabs/firebase-android/ | SRC
  161. How to get the SHA-1 fingerprint certificate in Android Studio for debug mode?: https://stackoverflow.com/questions/27609442/how-to-get-the-sha-1-fingerprint-certificate-in-android-studio-for-debug-mode
  162. Compile OpenSSL 1.1.1 for Android application: https://proandroiddev.com/tutorial-compile-openssl-to-1-1-1-for-android-application-87137968fee
  163. Firebase Android Codelab - Grow Friendly Chat: https://codelabs.developers.google.com/codelabs/growfirebase-android/ | SRC
  164. Firebase Quickstart Samples for Android https://github.com/firebase/quickstart-android
  165. Firebase docs -- Authenticating Your Client: https://developers.google.com/android/guides/client-auth (Mac/Linux and Windows versions of the command... basically swap "~" for "%USERPROFILE%")
  166. Firebase docs -- Manage Users in Firebase: https://firebase.google.com/docs/auth/android/manage-users
  167. Firebase docs -- Authenticate with Firebase using Password-Based Accounts on Android: https://firebase.google.com/docs/auth/android/password-auth
  168. Can't login my App using Firebase: https://stackoverflow.com/questions/44626822/cant-login-my-app-using-firebase
  169. Firebase Android - Google Sign In Failure: https://stackoverflow.com/questions/39987012/firebase-android-google-sign-in-failure
  170. Google SignIn Fails with code 10 (on Android): https://github.com/googlesamples/google-services/issues/360
  171. Facebook login & Google sign in not working on Android app in production?: https://medium.com/@akashmahali/facebook-login-google-sign-in-not-working-on-android-app-in-production-5febd9537f92
  172. Firebase docs -- Understand Firebase Realtime Database Rules: https://firebase.google.com/docs/database/security
  173. Firebase docs -- Security quick start: https://firebase.google.com/docs/database/security/quickstart
  174. Firebase docs -- Authenticate with Firebase Anonymously on Android: https://firebase.google.com/docs/auth/android/anonymous-auth
  175. Firebase docs -- User Based Security: https://firebase.google.com/docs/database/security/user-security
  176. Signed APK build failure re:play-services-ads-identifier.properties collision: https://stackoverflow.com/questions/60402349/signed-apk-build-failure-replay-services-ads-identifier-properties-collision
  177. Difference between SurfaceView and View?: https://stackoverflow.com/questions/1243433/difference-between-surfaceview-and-view/15995353#15995353
  178. Android UI Internal -- SurfaceView Vs View: https://pierrchen.blogspot.com/2014/03/anroid-graphics-surfaceview-all-you.html
  179. Porter/Duff Compositing and Blend Modes: http://ssp.impulsetrain.com/porterduff.html
  180. Animate all the things - Transitions in Android: https://medium.com/@andkulikov/animate-all-the-things-transitions-in-android-914af5477d50
  181. How to get package name of camera application: https://stackoverflow.com/questions/9665045/how-to-get-package-name-of-camera-application#96654400
  182. Google Camera: https://www.apkmirror.com/apk/google-inc/camera/
  183. Taking pictures with camera on Android programmatically: https://stackoverflow.com/questions/14421694/taking-pictures-with-camera-on-android-programmatically
  184. Android - Camera API example: https://www.tutorialspoint.com/android/android_camera.htm
  185. Taking Photos Simply: https://web.archive.org/web/20130529180836/http://stuff.mit.edu:80/afs/sipb/project/android/docs/training/camera/photobasics.html
  186. Android’s New Image Capture from a Camera using File Provider: https://android.jlelse.eu/androids-new-image-capture-from-a-camera-using-file-provider-dd178519a954
  187. Android dev docs -- Build a Camera App: https://developer.android.com/guide/topics/media/camera.html#custom-camera
  188. Android dev docs -- Control the camera (Camera 2.x API): https://developer.android.com/training/camera/cameradirect.html
  189. Understanding Camera2 API from callbacks: Part 1 | Part 2
  190. Google - Camera2 basic example: http://github.com/googlearchive/android-Camera2Basic/tree/master/Application/src/main
  191. Android CAMERA2 API example tutorial: http://web.archive.org/web/20160528133624/https://inducesmile.com/android/android-camera2-api-example-tutorial/
  192. How to use Android's camera or Camera2 API to support old and new API versions without deprecation notes?: https://stackoverflow.com/questions/27272845/how-to-use-androids-camera-or-camera2-api-to-support-old-and-new-api-versions-w
  193. The least you can do with Camera2 API: https://medium.com/android-news/the-least-you-can-do-with-camera2-api-2971c8c81b8b
  194. Google Codelabs -- Android - Getting Started with CameraX: https://developer.android.com/codelabs/camerax-getting-started
  195. Android CameraX - overview: http://www.journaldev.com/30132/android-camerax-overview | SRC
  196. CameraX - An Introduction: https://medium.com/android-news/camerax-an-introduction-b3d76c3820e6
  197. Introduction to Android’s CameraX With Java: https://medium.com/swlh/introduction-to-androids-camerax-with-java-ca384c522c5
  198. What’s new in CameraX: https://medium.com/androiddevelopers/whats-new-in-camerax-fb8568d6ddc
  199. How to Wirelessly Transfer Files from Windows to Android: https://www.howtogeek.com/707171/how-to-wirelessly-transfer-files-from-windows-to-android/
  200. Turn cookies on or off: https://support.google.com/accounts/answer/61416?co=GENIE.Platform%3DAndroid&hl=en
  201. How to Install Chrome Browser on Android TV: https://techwiser.com/how-to-install-chrome-browser-on-android-tv/
  202. Google's Android Dev blog -- Developer tools to debug WebView in beta: https://android-developers.googleblog.com/2020/04/developer-tools-to-debug-webview-in-beta.html
  203. The Crosswalk Project: https://github.com/crosswalk-project (prior way to get Chrome into a WebView, before Google officially started making Chrome the default browser AND WebView rendering engine)
  204. Android 4.4+ KitKat ships without browser app. OEMs have to license Chrome or build their own: https://web.archive.org/web/20150324060415/http://www.unwiredview.com/2013/11/21/android-4-4-kitkat-ships-without-browser-app-oems-have-to-license-chrome-or-build-their-own/
  205. Use Chrome as render engine for Android webview: https://stackoverflow.com/questions/14537083/use-chrome-as-render-engine-for-android-webview
  206. Is it better to use Android System Webview when not using Chrome as default browser?: https://android.stackexchange.com/questions/179613/is-it-better-to-use-android-system-webview-when-not-using-chrome-as-default-brow
  207. Google explains how Chrome will become WebView in Android 7.0 (Nougat): https://www.androidpolice.com/2016/07/20/google-explains-chrome-will-become-webview-android-7-0/
  208. Google Chrome to Replace WebView in Android 7.0 Nougat: https://gadgets.ndtv.com/apps/news/google-chrome-to-replace-webview-in-android-70-nougat-863667
  209. Change to Chrome Web Browser in Android?: https://www.askdavetaylor.com/change-update-chrome-web-browser-android-phone/
  210. Why is the Android stock browser still alive?: https://android.stackexchange.com/questions/75336/why-is-the-android-stock-browser-still-alive
  211. PdfConverter.java example of Native Mobile App PDF conversion: https://github.com/blink22/react--html-to-pdf/blob/master/android/src/main/java/android/print/PdfConverter.java
  212. Android PDF not loading in browser and WebView: https://stackoverflow.com/questions/30461392/android-pdf-not-loading-in-browser-and-webview
  213. Google dev docs -- Android - PdfRenderer: https://developer.android.com/reference/android/graphics/pdf/PdfRenderer (added in API level 21)
  214. Rendering PDFs on Android the easy way: https://proandroiddev.com/rendering-pdfs-on-android-the-easy-way-c05635b2c3a8
  215. Rendering a PDF Document in Android Activity/Fragment (Using PdfRenderer): https://medium.com/@chahat.jain0/rendering-a-pdf-document-in-android-activity-fragment-using-pdfrenderer-442462cb8f9a
  216. Rendering PDF Document’s in Android using PdfRenderer: https://medium.com/android-dev-hacks/rendering-pdf-documents-in-android-using-pdfrenderer-f6d4f730b18
  217. How to render PDF in Android (using Intent and/or App chooser): https://stackoverflow.com/questions/2883355/how-to-render-pdf-in-android?noredirect=1&lq=1
  218. Open PDF file from sdcard in Android programmatically: https://deepshikhapuri.wordpress.com/2017/04/24/open-pdf-file-from-sdcard-in-android-programmatically/
  219. How can I display a PDF document into a Webview?: https://stackoverflow.com/questions/2655972/how-can-i-display-a-pdf-document-into-a-webview (by loading the PDF from URL to local temporary PDF file)
  220. How to render PDF in Android: https://stackoverflow.com/questions/2883355/how-to-render-pdf-in-android (using Google Docs - PDF viewer)
  221. PDF Rendering in Android App — from raw/assets and internal storage: https://android.jlelse.eu/pdf-rendering-in-android-app-from-raw-assets-and-internal-storage-4d386950f35
  222. Android Beam - why you should care about this hidden gem: https://www.techradar.com/news/phone-and-communications/mobile-phones/android-beam-why-you-should-care-about-this-hidden-gem-1229479
  223. How to use Android Beam to send files and photos: https://www.androidauthority.com/how-to-use-android-beam-699961/
  224. How to Use Android Beam to Wirelessly Transfer Content Between Devices (on OS versions that support it): http://www.howtogeek.com/138307/how-to-use-android-beam-to-wirelessly-transfer-content-between-android-devices/
  225. Android Q won't have Android Beam (API/service has been deprecated and is now getting removed): https://www.techradar.com/news/android-q-wont-have-android-beam
  226. Android Beam’s replacement will be called Nearby Sharing: https://www.androidpolice.com/2020/01/13/google-fast-sharing-android-beam-replacement/
  227. Google working on ‘Fast Share,’ Android Beam replacement and AirDrop competitor: https://9to5google.com/2019/06/29/google-android-fast-share/
  228. How to Send Apps Between Android Devices: https://www.howtogeek.com/714458/how-to-send-apps-between-android-devices/
  229. AirDrop for Android - How to Use Android Nearby Share: https://www.howtogeek.com/684434/airdrop-for-android-how-to-use-android-nearby-share/
  230. Three Key Lessons When Migrating from RelativeLayout To ConstraintLayout: https://medium.com/comparethemarket/three-key-lessons-when-migrating-to-constraintlayout-dff38c31a47
  231. ConstraintLayout in the LIMELIGHT: https://android.jlelse.eu/constraintlayout-in-the-limelight-6c22b54d9726
  232. Learning ConstraintLayout — 🚀Live Templates for Rescue: http://android.jlelse.eu/learning-constraintlayout-live-templates-for-rescue-2142e6b7b3b2
  233. How to make a custom FrameLayout with a cover?: https://stackoverflow.com/questions/45581172/how-to-make-a-custom-framelayout-with-a-cover
  234. Enabling the `onClick` method in a custom FrameLayout view: https://stackoverflow.com/questions/54337370/enabling-the-onclick-method-in-a-custom-framelayout-view
  235. Android showcase designs UX and Android touch gestures: https://basitali11.medium.com/android-showcase-designs-ux-and-android-touch-gestures-2a6ec48de888 | SRC
  236. Android ListView with icons/images ….and “sharks with lasers”: https://w2davids.wordpress.com/android-listview-with-iconsimages-and-sharks-with-lasers/
  237. Back to Top -- Android vs. iO: https://cyrilmottier.com/2013/01/09/back-to-top-android-vs-ios/
  238. Android docs -- Quick Settings - Tile: https://developer.android.com/reference/android/service/quicksettings/Tile
  239. Quick Tip -- Create a Custom Quick Settings Tile for Android: https://code.tutsplus.com/tutorials/create-a-custom-quick-settings-tile-for-android--cms-30318
  240. Full-Screen Intent Notifications — Android: https://medium.com/android-news/full-screen-intent-notifications-android-85ea2f5b5dc1
  241. Android -- Getting “Manifest merger failed” error after updating to a new version of gradle: https://stackoverflow.com/questions/43280871/android-getting-manifest-merger-failed-error-after-updating-to-a-new-version (add in a compilation block to the bottom of the Gradle build script)
  242. Supercharging your app development speed with custom file templates: https://android.jlelse.eu/supercharging-your-app-development-speed-with-custom-file-templates-3e6acb6db6c3
  243. android.useDeprecatedNdk=true is no longer supported: https://stackoverflow.com/questions/47633050/android-usedeprecatedndk-true-is-no-longer-supported
  244. Google -- Android dev docs - Linking to Google Play store: https://developer.android.com/distribute/marketing-tools/linking-to-google-play
  245. Google -- Android dev docs - App Link indexing: https://developer.android.com/studio/write/app-link-indexing
  246. How to directly open any given app dashboard home page inside Play Store on programmatically from an Android app: https://www.android-examples.com/open-specific-app-inside-google-play-store/
  247. How to link to Android Market app: https://stackoverflow.com/questions/3239478/how-to-link-to-android-market-app
  248. Android Deep Linking (from web to native app) guide: https://blog.branch.io/how-to-open-an-android-app-from-the-browser/
  249. Intro to Deep Linking on Android: https://medium.com/@muratcanbur/intro-to-deep-linking-on-android-1b9fe9e38abd
  250. The 15 best tips and tricks for Chrome on Android: https://www.androidpolice.com/2020/02/03/15-tips-tricks-chrome-android/
  251. Android Deep Linking (SLIDES): https://www.slideshare.net/ravalketan/android-deep-linking
  252. What is the "assetlinks.json" file for, when using Android deep links?: https://stackoverflow.com/questions/44209477/what-is-the-assetlinks-json-file-for-when-using-android-deep-links
  253. How to implement Android App Links with wildcard domains?: https://stackoverflow.com/questions/39616895/how-to-implement-android-app-links-with-wildcard-domains
  254. Android Studio - Add Android App Links: https://developer.android.com/studio/write/app-link-indexing
  255. Android docs -- Handling Android App Links: https://developer.android.com/training/app-links
  256. Verify Android App Links: https://developer.android.com/training/app-links/verify-site-associations
  257. Handling specific routes in Android M app links: https://stackoverflow.com/questions/35840262/handling-specific-routes-in-android-m-app-links
  258. Intent Filters and android:pathPattern: https://stackoverflow.com/questions/16490907/intent-filters-and-androidpathpattern
  259. App links intent filters in assetlinks.json not working on Android: https://stackoverflow.com/questions/35518429/app-links-intent-filters-in-assetlinks-json-not-working-on-android (look out for "Windows line-breaks", and keep in mind it would only work on Android 6.0, API 23 or later)
  260. How to setup /.well-known/assetlinks.json on Google AppEngine Web App (Java): https://stackoverflow.com/questions/40003252/how-to-setup-well-known-assetlinks-json-on-google-appengine-web-app-java
  261. Digital Assets Link InstantApp link to my website: https://stackoverflow.com/questions/44497929/digital-assets-link-link-to-my-website
  262. A Guide to Android Instant Apps: https://medium.com/swlh/https-medium-com-vinodsfingent-a-guide-to-android-instant-apps-c05d905c0098
  263. MozDev -- PWAs - Web App Manifest: https://developer.mozilla.org/en-US/docs/Web/Manifest
  264. Can I Use -- PWA & Manifest JSON - Add to home screen (A2HS): https://caniuse.com/web-app-manifest
  265. Android dev docs -- LiveData overview: https://developer.android.com/topic/libraries/architecture/livedata#java
  266. Understanding LiveData: https://medium.com/@elye.project/understanding-live-data-made-simple-a820fcd7b4d0 | SRC
  267. ViewModels -- A Simple Example: https://medium.com/androiddevelopers/viewmodels-a-simple-example-ed5ac416317e
  268. ViewModels and LiveData -- Patterns + AntiPatterns: https://medium.com/androiddevelopers/viewmodels-and-livedata-patterns-antipatterns-21efaef74a54
  269. LiveData overview: https://developer.android.com/topic/libraries/architecture/livedata
  270. Unit-testing LiveData and other common observability problems: https://medium.com/androiddevelopers/unit-testing-livedata-and-other-common-observability-problems-bb477262eb04
  271. Android "Activity Lifecycle" considered harmful: https://proandroiddev.com/android-activity-lifecycle-considered-harmful-98a5b00d287 (how MVVM & LiveData can avoid the most common pitfalls)
  272. MVVM DB ToDo List example: https://github.com/AnilDeshpande/DBDemoToDoList
  273. Android MVVM — Do’s and Don’ts: https://android.jlelse.eu/mvvm-dos-and-don-ts-5950d6f347d4
  274. Android ViewModels: Saving State across Process Death: https://android.jlelse.eu/android-viewmodels-saving-state-across-process-death-a3f447bf839a
  275. Healthier cleaner code in your Android projects - SCA with Sonarqube & JaCoCo: https://medium.com/xmglobal/healthier-cleaner-code-in-your-android-projects-e17f8e6829c3
  276. View Model Creation in Android — Android Architecture Components & Kotlin: https://proandroiddev.com/view-model-creation-in-android-android-architecture-components-kotlin-ce9f6b93a46b
  277. Flow and LiveData in MVVM architecture: https://medium.com/@lukaszburcon/flow-and-livedata-in-mvvm-architecture-6f8879b96ce0
  278. MVVM on Android with the Architecture Components & Koin: https://medium.com/swlh/mvvm-on-android-with-the-architecture-components-koin-f53c3c200363
  279. How to use a ViewModel with a custom view: https://medium.com/@polson55/how-to-use-a-viewmodel-with-a-custom-view-403420f7aab4
  280. ViewModel: One-off event antipatterns: https://medium.com/androiddevelopers/viewmodel-one-off-event-antipatterns-16a1da869b95
  281. Android docs -- ObservablesList: https://developer.android.com/reference/android/databinding/ObservableList
  282. Android docs -- Observable: https://developer.android.com/reference/java/util/Observable.html
  283. Observe LiveData from ViewModel in Fragment: https://medium.com/@begalesagar/observe-livedata-from-viewmodel-in-fragment-fd7d14f9f5fb
  284. Using Retrofit 2 for web-services in Android with a simple demo project: https://medium.com/cr8resume/make-your-hand-dirty-with-retrofit-2-a-type-safe-http-client-for-android-and-java-c546f88b3a51 | SRC
  285. Working with MVP and Retrofit 2 in Android with demo project: https://medium.com/cr8resume/working-with-mvp-and-retrofit-2-in-android-b771b8369ec0 | SRC
  286. How to maximize Android’s UI reusability — 5 common mistakes: https://proandroiddev.com/how-to-maximize-androids-ui-reusability-5-common-mistakes-cb2571216a9f
  287. The Contract of the Model-View-Intent architecture: https://proandroiddev.com/the-contract-of-the-model-view-intent-architecture-777f95706c1e | SRC - Kotlin | SRC - Java
  288. The State of Managing State with RxJava: https://jakewharton.com/the-state-of-managing-state-with-rxjava/
  289. Introduction of Model View Intent (MVI) for Android: https://www.21twelveinteractive.com/model-view-intent-mvi/
  290. Android MVI with Jetpack Compose: https://medium.com/swlh/android-mvi-with-jetpack-compose-b0890f5156ac
  291. Chrome WebStore: http://code.google.com/chrome/webstore/ (built on same infrastructure as GooglePlay store
  292. Use pre-launch reports to identify issues: https://support.google.com/googleplay/android-developer/answer/7002270?hl=en-GB
  293. Make your app shine on Google Play: https://medium.com/googleplaydev/make-your-app-shine-on-google-play-68fbb107a4c5
  294. How to install Adobe Flash Player on Android: http://www.androidpit.com/how-to-install-flash-player-on-android
  295. How to Install Adobe Flash Player on Android Devices: http://www.smartphonesupdates.com/how-to-install-adobe-flash-player-on-android-devices/
  296. Flash player version archive (including old Android versions): https://helpx.adobe.com/flash-player/kb/archived-flash-player-versions.html
  297. An Update on Flash Player and Android: http://blogs.adobe.com/flashplayer/2012/06/flash-player-and-android-update.html
  298. How to add Adobe Flash support to Android 5.0 Lollipop: http://bgr.com/2014/11/21/flash-on-android-how-to/
  299. How to manually install Adobe Flash Player on your Android device: http://www.androidcentral.com/how-manually-install-flash-your-android-device
  300. Now in Android -- Episode #3 - Android Studio 3.5: https://medium.com/androiddevelopers/now-in-android-episode-3-7965985c39c9
  301. The Best Features in Android Studio 4.0 Beta: https://android.jlelse.eu/best-features-in-android-studio-4-beta-12ca4d195788
  302. ADB Survival Guide for Android: https://android.jlelse.eu/adb-survival-guide-for-android-2cd22bad0a0f
  303. How to solve Specified AAPT2 executable does not exist on Android Studio 3.2: https://stackoverflow.com/questions/52545740/how-to-solve-specified-aapt2-executable-does-not-exist-on-android-studio-3-2
  304. Google Play -- Manage your store listings - Graphic assets, screenshots & video specs (for marketplace listing): https://support.google.com/googleplay/android-developer/answer/1078870
  305. A New Reference App for Multi-device Applications: https://android-developers.googleblog.com/2015/03/a-new-reference-app-for-multi-device.html | SRC
  306. New Android Code Samples: https://android-developers.googleblog.com/2015/04/new-android-code-samples.html | SRC
  307. Web App Manifest: https://developer.mozilla.org/en-US/docs/Web/Manifest
  308. Android Development - 15 Libraries You Should Be Using: https://auth0.com/blog/android-development-15-libraries-you-should-be-using/
  309. Android Studio shortcuts like Eclipse: https://stackoverflow.com/questions/27657025/android-studio-shortcuts-like-eclipse
  310. What is the shortcut to Auto import all in Android Studio?: https://stackoverflow.com/questions/16615038/what-is-the-shortcut-to-auto-import-all-in-android-studio
  311. How To Auto Import All Class In Android Studio: http://https://www.dev2qa.com/how-to-auto-import-all-class-in-android-studio/
  312. ShortCut for adding class field to existing constructor in AndroidStudio or IDEA: https://stackoverflow.com/questions/34692945/shortcut-for-adding-class-field-to-existing-constructor-in-androidstudio-or-idea (ALT+ENTER to auto-fix)
  313. Develop Android Apps Fast(er) and Easier (saves 30 min daily): https://medium.com/@gopikrish2000/android-apps-develop-fast-er-and-easier-saves-30-min-daily-9691f0c63573
  314. Android -- checkbox listener: https://stackoverflow.com/questions/8386832/android-checkbox-listener#8386876
  315. Protecting secrets in an Android project: https://proandroiddev.com/protecting-secrets-in-an-android-project-ff99eaf7b9ec
  316. Android applications security — part 1, reverse engineering and token storage problems: https://medium.com/skyrise/android-applications-security-part-1-2782d73771e0
  317. Android applications security — part 2, client-server communication: https://medium.com/skyrise/android-applications-security-part-2-588ffb9d83ab
  318. Android OWASP crackmes -- Write-up UnCrackable Level 3: https://enovella.github.io/android/reverse/2017/05/20/android-owasp-crackmes-level-3.html
  319. What is the preferable way to hide private information in Android Studio?: https://stackoverflow.com/questions/52642783/what-is-the-preferable-way-to-hide-private-information-in-android-studio
  320. Hiding API keys from your Android repository: https://medium.com/code-better/hiding-api-keys-from-your-android-repository-b23f5598b906
  321. Where to Store Android KeyStore File in CI/CD Cycle?: https://android.jlelse.eu/where-to-store-android-keystore-file-in-ci-cd-cycle-2365f4e02e57
  322. Keeping Your Android Project’s Secrets Secret: https://medium.com/@geocohn/keeping-your-android-projects-secrets-secret-393b8855765d
  323. Android Programming Cookbook: http://enos.itcollege.ee/~jpoial/allalaadimised/reading/Android-Programming-Cookbook.pdf
  324. Android Cookbook -- Ch.10 (Sample Chapter): http://ptgmedia.pearsoncmg.com/images/9780321897534/samplepages/0321897536.pdf
  325. Head First Android Development: https://www.vitalsource.com/products/head-first-android-development-dawn-griffiths-v9781491974018 | SRC
  326. Head First Android Development (2nd edition): http://shop.oreilly.com/product/0636920056966.do | SRC
  327. Android core APIs -- Free Samples! (and PRs)https://medium.com/androiddevelopers/free-samples-1db256ac8217
  328. Implement Caching In Android Using RxJava Operators: https://blog.mindorks.com/implement-caching-in-android-using-rxjava-operators | SRC
  329. Implement Search Using RxJava Operators: https://blog.mindorks.com/implement-search-using-rxjava-operators-c8882b64fe1d | SRC
  330. WoWoViewPager: https://github.com/Nightonke/WoWoViewPager (transition/animation helper lib)
  331. Refining an Onboarding Experience with MotionLayout: https://medium.com/ot-design/refining-an-onboarding-experience-with-motionlayout-4a5d73239f76
  332. Swipe right on Motion Layout: https://medium.com/bumble-tech/swipe-right-on-motion-layout-641c1452d6a5
  333. MotionLayout + ShapeOfView: https://proandroiddev.com/motionlayout-shapeofview-26a7ab10142f
  334. 5 Must-Have Android Libraries For Smooth App Development: https://android.jlelse.eu/5-must-have-android-libraries-for-smooth-app-development-a85ecbdd8a54
  335. How to import RecyclerView for Android L-preview: https://stackoverflow.com/questions/24440852/how-to-import-recyclerview-for-android-l-preview
  336. Using the RecyclerView: https://github.com/codepath/android_guides/wiki/Using-the-RecyclerView
  337. Android RecyclerView List Example: https://www.javatpoint.com/android-recyclerview-list-example
  338. RecyclerView in Android with example: https://www.geeksforgeeks.org/android-recyclerview/
  339. Why does java.lang.IllegalStateException: RecyclerView has no LayoutManager in Fragment happen when using new RecyclerView: https://stackoverflow.com/questions/27563853/java-lang-illegalstateexception-recyclerview-has-no-layoutmanager-in-fragment
  340. Getting Started With RecyclerView and CardView on Android: https://code.tutsplus.com/tutorials/getting-started-with-recyclerview-and-cardview-on-android--cms-23465
  341. How to resolve NoClassDefFoundError: Failed resolution of: Landroid/view/View$OnUnhandledKeyEventListener; error: https://stackoverflow.com/questions/52537638/how-to-resolve-noclassdeffounderror-failed-resolution-of-landroid-view-viewon
  342. Optimizing Nested RecyclerView: https://proandroiddev.com/optimizing-nested-recyclerview-a9b7830a4ba7
  343. RecyclerView item optimizations: https://medium.com/@programmerr47/recyclerview-item-optimizations-cae1aed0c321
  344. Saving Scroll Positions of Nested RecyclerViews: https://android.jlelse.eu/storing-scroll-positions-of-nested-recyclerviews-9e9e8eb3196d
  345. Learning Android Development in 2019 - A Practical Guide: https://medium.com/mindorks/learning-android-development-in-2019-a-practical-guide-ddc71e008696
  346. Android developer Roadmap for 2019: https://android.jlelse.eu/android-developer-roadmap-for-2019-14eacb0d0a2
  347. Learning Android Development in 2018 (Comprehensive Beginner’s Edition): https://android.jlelse.eu/learning-android-development-in-2018-part-1-83a514f6a205
  348. Android Paging Library with multiple view types: https://proandroiddev.com/android-paging-library-with-multiple-view-type-68f85fe1222d
  349. Android paging Network + Database: https://proandroiddev.com/android-paging-library-database-network-error-events-18ecb66830fe
  350. A better way to set RecyclerView items margin: https://medium.com/@cesarmorigaki/a-better-way-to-set-recyclerview-items-margin-708ea9d3ac25
  351. Android CardView Sample Project (with RecyclerView): http://www.oded-tech-blog.com/android-cardview-sample-project-recyclerview/ | SRC
  352. Getting Started With RecyclerView and CardView on Android: https://code.tutsplus.com/tutorials/getting-started-with-recyclerview-and-cardview-on-android--cms-23465
  353. Best practices for Video Playback in Android: https://blog.viki.com/best-practices-for-video-playback-in-android-d7482d513f3d
  354. Florina Muntenescu -- Google Android Dev envangelist: https://github.com/florina-muntenescu?tab=repositories
  355. Material Design - Components catalog: https://www.material.io/components
  356. Material UI -- Motion system: https://material.io/design/motion/the-motion-system.html
  357. wikipedia: Samsung phones
  358. Samsung Android phones: https://www.gsmarena.com/samsung-phones-9.php
  359. wikipedia: List of LG mobile phones
  360. LG Android phones: https://www.gsmarena.com/lg-phones-20.php
  361. wikipedia: Comparison_of_HTC_devices#Android_devices
  362. HTC Android phones: https://www.gsmarena.com/htc-phones-45.php
  363. Best Android Phones for 2018: https://www.cnet.com/topics/phones/best-phones/android/
  364. Best Android devices released in 2018: https://www.pcmag.com/article2/0,2817,2483688,00.asp
  365. List of Samsung Phones To Get The Android Oreo 8.x Update: https://theleaker.com/samsung-android-8-0-oreo-update-phones-list/
  366. Complete List Of Android Devices To Get The ANDROID 4.4 Kitkat Update: http://www.techverse.net/phone-receiving-android-4-4-kitkat-update/
  367. Finding Android SDK on Mac and adding to PATH: https://stackoverflow.com/questions/34532063/finding-android-sdk-on-mac-and-adding-to-path (/Users/USERNAME/Library/Android/sdk)
  368. Building an Android App from the Command Line: https://www.hanshq.net/command-line-android.html
  369. How to make Android apps without IDE from command line: https://medium.com/@authmane512/how-to-build-an-apk-from-command-line-without-ide-7260e1e22676
  370. Building and Running from the Command Line: https://stuff.mit.edu/afs/sipb/project/android/docs/tools/building/building-cmdline.html (legacy Android versions)
  371. Building Android application (.apk) from the Command Line v2 using ANT: https://www.built.io/blog/building-android-application-apk-from-the-command-line-v2
  372. Build Android Studio app via command line: https://stackoverflow.com/questions/24398041/build-android-studio-app-via-command-line
  373. Building Android applications with Gradle - Tutorial: https://www.vogella.com/tutorials/AndroidBuild/article.html
  374. How to Sideload Apps on Android: https://www.howtogeek.com/313433/how-to-sideload-apps-on-android/
  375. Uncomfortable Questions About App Signing: https://commonsware.com/blog/2020/09/23/uncomfortable-questions-app-signing.html (soon to be required for new apps through move to AAB)
  376. Android Get Application Context From Anywhere Example: https://www.dev2qa.com/android-get-application-context-from-anywhere-example/
  377. Getting activity from context in android: https://stackoverflow.com/questions/9891360/getting-activity-from-context-in-android
  378. pm.hasSystemFeature(PackageManager.FEATURE_CAMERA_ANY) not giving corerct answer: https://stackoverflow.com/questions/19458342/pm-hassystemfeaturepackagemanager-feature-camera-any-not-giving-corerct-answer
  379. Responsive Web Made Easier with Chrome DevTools Device Mode: https://girliemac.com/blog/2014/07/28/devicemode/
  380. A Concise Guide to Remote Debugging on iOS, Android, and Windows Phone: https://developer.telerik.com/featured/a-concise-guide-to-remote-debugging-on-ios-android-and-windows-phone/
  381. Run Apps on a Hardware Device: https://developer.android.com/studio/run/device
  382. How to Enable USB Debugging in Android Phones: http://idroidhorizon.blogspot.ca/2014/06/How-to-Enable-USB-Debugging-in-Android.html
  383. Chrome DevTools for Mobile -- Screencast and Emulation: https://www.html5rocks.com/en/tutorials/developertools/mobile/
  384. What is the best android emulator for low spec PC ? : https://www.webmastersun.com/threads/9549-what-is-the-best-android-emulator-for-low-spec-pc
  385. BlueStacks -- Android Emulator https://www.bluestacks.com
  386. Andryoid - Android emulator: https://www.andyroid.net/
  387. How to find and turn on USB debugging mode on Nexus 4: https://stackoverflow.com/questions/16707137/how-to-find-and-turn-on-usb-debugging-mode-on-nexus-4
  388. Enabling USB Debugging on an Android Device: https://www.embarcadero.com/starthere/xe5/mobdevsetup/android/en/enabling_usb_debugging_on_an_android_device.html
  389. NVIDIA -- Android lifecycle for application developers - guidelines and tips: http://developer.download.nvidia.com/assets/mobile/files/AndroidLifecycleAppNote_v100.pdf (from chip manufacturer's perspective)
  390. Writing Your First Android App, in Assembly: https://urish.medium.com/writing-your-first-android-app-in-assembly-30e8e0f8c3fe
  391. Creating an Android Weather App using Java: https://www.androdocs.com/java/creating-an-android-weather-app-using-java.html
  392. Constraint layout the best layout ever!: https://android.jlelse.eu/constraints-layout-best-layout-ever-230175272c0f
  393. How to make ConstraintLayout work with percentage values?: https://stackoverflow.com/questions/37318228/how-to-make-constraintlayout-work-with-percentage-values
  394. Adding a menu to the toolbar in Android: https://suragch.medium.com/adding-a-menu-to-the-toolbar-in-android-60d096f9fb89
  395. How to change Menu SearchView Widget Icon Color In Android: https://android.jlelse.eu/how-to-change-menu-searchview-widget-icon-color-in-android-c9ff1043a41f
  396. Get the position of a spinner in Android: https://stackoverflow.com/questions/8597582/get-the-position-of-a-spinner-in-android
  397. Change text color of selected item in spinner: https://stackoverflow.com/questions/15379851/change-text-color-of-selected-item-in-spinner
  398. How to change Spinner text color in Android: https://inducesmile.com/android-programming/how-to-change-spinner-text-color-in-android/
  399. Make a button take 25% of a linearlayout: https://stackoverflow.com/questions/19075217/make-a-button-take-25-of-a-linearlayout
  400. Calling findViewById("thing") in Fragment (rather than Activity): https://stackoverflow.com/questions/6495898/findviewbyid-in-fragment (you should call via getView().findViewById("thing") instead of calling directly)
  401. How to Manage App Permissions on Android: https://www.howtogeek.com/230683/how-to-manage-app-permissions-on-android-6.0/
  402. Permissions on the fly with Dexter lib (as compared to requesting programmatically in Kotlin): https://medium.com/@tirgei/permissions-on-the-fly-with-dexter-android-permissions-7394f3bc1e88
  403. Seven Things You Don’t Have to Root Android to Do Anymore: https://www.howtogeek.com/120599/6-things-you-dont-have-to-root-android-to-do-anymore/
  404. Android SQLite Database with example: https://www.tutlane.com/tutorial/android/android-sqlite-database-with-examples
  405. Android SQLite ListView with example: https://www.tutlane.com/tutorial/android/android-sqlite-listview-with-examples
  406. Android Loading SQLite Data Into TableLayout: https://tranngocnhat.blogspot.com/2016/06/android-loading-sqlite-data-into.html
  407. Android Dynamically Add rows to Table Layout: https://technotzz.wordpress.com/2011/11/04/android-dynamically-add-rows-to-table-layout/
  408. Room Persistence Library With Pre-Populated Database: https://android.jlelse.eu/room-persistence-library-with-pre-populated-database-5f17ef103d3d
  409. Gradually Migrate to Room from SQLite: https://medium.com/android-news/gradually-migrate-to-room-the-missing-guide-133520c7260
  410. 7 Steps To Room: https://medium.com/androiddevelopers/7-steps-to-room-27a5fe5f99b2
  411. 7 Pro-tips for Room: https://medium.com/androiddevelopers/7-pro-tips-for-room-fbadea4bfbd1
  412. Room Flow: https://medium.com/androiddevelopers/room-flow-273acffe5b57
  413. Doing DB queries in Room with RxJava: https://medium.com/androiddevelopers/room-rxjava-acb0cd4f3757
  414. Navigation in Modular Applications with Deep Linking: https://blog.usejournal.com/navigation-in-modular-applications-with-deep-linking-6a599c11e487
  415. How to Stop Android Apps from Using Background Mobile Data: https://www.howtogeek.com/715337/how-to-stop-android-apps-from-using-background-mobile-data/
  416. Introducing WorkManager: https://medium.com/androiddevelopers/introducing-workmanager-2083bcfc4712
  417. Practical guide to Dagger 2: https://android.jlelse.eu/practical-guide-to-dagger-76398948a2ea
  418. Dagger 2 — Dependency Injection basics in Android: https://medium.com/agency04/dagger-2-dependency-injection-basics-in-android-be229d99a0a
  419. Dagger 2 on Android - The Simple Way: https://proandroiddev.com/dagger-2-on-android-the-simple-way-f706a2c597e9
  420. Using Dagger in a multi-module project: https://proandroiddev.com/using-dagger-in-a-multi-module-project-1e6af8f06ffc
  421. Android Inter-Module Navigation With Dagger: https://robinhood.engineering/android-inter-module-navigation-with-dagger-b808c4579067
  422. error -- resource android:attr/fontVariationSettings not found: https://icetutor.com/question/error-resource-androidattr-fontvariationsettings-not-found/
  423. Since the Android getFragmentManager() API is deprecated, is there any alternative?: https://stackoverflow.com/questions/51737667/since-the-android-getfragmentmanager-api-is-deprecated-is-there-any-alternati
  424. Using ViewPager to Create a Sliding Screen UI in Android: https://www.sitepoint.com/using-viewpager-to-create-a-sliding-screen-ui-in-android/ | SRC | DOCS
  425. How to communicate between Fragments and Activities in Kotlin: https://android.jlelse.eu/how-to-communicate-between-fragments-and-activities-dc91707e02fb
  426. Advocating Against Android Fragments: https://developer.squareup.com/blog/advocating-against-android-fragments/
  427. How to get a string back from AsyncTask?: https://stackoverflow.com/a/10972142
  428. 350% performance improvement in fetching data from the server, by using RxJava: https://android.jlelse.eu/replacing-tedious-progressbar-using-rxjava-and-pagedlistadapter-in-android-b60534c6f9dd
  429. Retrofit with RxJava to fetch data asyncronously: https://riptutorial.com/android/example/31945/retrofit-with-rxjava-to-fetch-data-asyncronously
  430. Loading entities from database and server API by using RxJava: https://proandroiddev.com/loading-entities-from-database-and-server-api-by-using-rxjava-e1b798b549b4
  431. First steps with RxJava and RxAndroid: https://www.vogella.com/tutorials/RxJava/article.html
  432. RxAndroid’s New Async API: https://www.zacsweers.dev/rxandroids-new-async-api/
  433. Android Studio AsyncTask Return Value to Caller: http://instinctcoder.com/android-studio-asynctask-return-value-to-caller/
  434. Return a value from AsyncTask in Android: https://stackoverflow.com/questions/9458258/return-a-value-from-asynctask-in-android/26820666#26820666
  435. AsyncTask is Deprecated, Now What?: https://www.techyourchance.com/asynctask-deprecated/
  436. Google is deprecating Android’s AsyncTask API in Android 11: https://www.xda-developers.com/asynctask-deprecate-android-11/
  437. Was AsyncTask Deprecated For No Reason?: https://www.techyourchance.com/asynctask-deprecated/
  438. Android Multithreading - Threads, UI, Garbage Collector, Memory Leaks and More: https://www.youtube.com/watch?v=UPq1LDxL5_w
  439. Android -- Alternatives to AsyncTask?: https://stackoverflow.com/questions/30416158/android-alternatives-to-asynctask
  440. Some great alternatives for AsyncTasks: https://medium.com/code-yoga/some-great-alternatives-for-asynctasks-e8113747673a
  441. Handling success data and error callback responses from a network for Android projects using Sandwich: https://proandroiddev.com/handling-success-data-and-error-callback-responses-from-a-network-for-android-projects-using-b53a26214cef | SRC - DisneyMotion | SRC - MarvelHeroes | SRC - TheMovies2 | SRC - Pokedex
  442. AsyncTaskLoader basic example (Android): https://stackoverflow.com/questions/20279216/asynctaskloader-basic-example-android
  443. Getting Started with JSOUP in Android (DuckDuckGo scraping example): https://princessdharmy.medium.com/getting-started-with-jsoup-in-android-594e89dc891f
  444. Implementing DuckDuckGo API in SUSI Android: https://blog.fossasia.org/implementing-duckduckgo-api-in-susi-android/
  445. How to Read JSON file from the Assets folder in Android?: https://www.11zon.com/zon/android/how-to-read-json-file-from-assets-folder-in-android.php
  446. How To Read String Value Array From strings.xml In Android: https://www.dev2qa.com/how-to-read-string-value-array-from-strings-xml-in-android/
  447. Android -- How do I get string from resources using its name?: https://stackoverflow.com/questions/7493287/android-how-do-i-get-string-from-resources-using-its-name
  448. Android getting value from selected radiobutton: http://https://stackoverflow.com/questions/18179124/android-getting-value-from-selected-radiobutton
  449. Mipmaps vs. drawable folders: https://stackoverflow.com/questions/28065267/mipmaps-vs-drawable-folders
  450. How to add icon image button in Android Studio: https://stackoverflow.com/questions/33450657/how-to-add-icon-image-button-in-android-studio
  451. Android Hello GridView Tutorial Will Not Display Images: https://stackoverflow.com/questions/6805541/android-hello-gridview-tutorial-will-not-display-images
  452. Android -- Bitmaps loaded from gallery are rotated in ImageView: https://stackoverflow.com/questions/3647993/android-bitmaps-loaded-from-gallery-are-rotated-in-imageview
  453. Modern User Storage on Android: https://medium.com/androiddevelopers/modern-user-storage-on-android-e9469e8624f9 (StorageAccessFramework & "Scoped Storage" APIs are coming to Android 11+)
  454. VLC adapts for Android TV to bring users’ personal videos to the big screen: https://developer.android.com/stories/apps/vlc-android-tv
  455. Android get image from gallery into ImageView: https://stackoverflow.com/questions/10473823/android-get-image-from-gallery-into-imageview
  456. How to load an image in ImageView from gallery?: https://stackoverflow.com/questions/13023788/how-to-load-an-image-in-image-view-from-gallery
  457. Custom Gallery For Android: https://android.jlelse.eu/custom-gallery-for-android-af2437b227da
  458. Creating A Photo Gallery In Android Studio With List Fragments: https://www.airpair.com/android/photo-gallery-android-studio-list-fragments
  459. "Gallery" widget tutorial with example app in Android Studio: https://abhiandroid.com/ui/gallery (legacy approach only works up until API v16)
  460. Create a Photo Gallery App for Android for Local Images: https://stackoverflow.com/questions/15196306/create-a-photo-gallery-app-for-android-for-local-images
  461. Add image to Media Gallery - Android: https://stackoverflow.com/questions/28243330/add-image-to-media-gallery-android
  462. Universal Android Music Player Sample: https://github.com/googlesamples/android-UniversalMusicPlayer (reference implementation of a Music Player in Android)
  463. Android Media Player example: https://www.javatpoint.com/playing-audio-in-android-example
  464. How to play audio in Android?: https://javapapers.com/android/how-to-play-audio-in-android/
  465. Android -- sample microphone without recording to get live amplitude/level?: https://stackoverflow.com/questions/4777060/android-sample-microphone-without-recording-to-get-live-amplitude-level
  466. Sensing Voice Amplitude with Android: http://www.doepiccoding.com/blog/?p=195
  467. Android Audio - Seek Bar: https://stackoverflow.com/questions/16141167/android-audio-seekbar
  468. MediaPlayer error (1, -1004) aka MEDIA_ERROR_IO trying to stream music on Samsung S3: https://stackoverflow.com/questions/16672568/mediaplayer-error-1-1004-aka-media-error-io-trying-to-stream-music-on-samsun
  469. Why does it take so long for Android's MediaPlayer to prepare some live streams for playback?: https://stackoverflow.com/questions/6582908/why-does-it-take-so-long-for-androids-mediaplayer-to-prepare-some-live-streams
  470. MediaPlayer.OnPreparedListener doesn't work: https://stackoverflow.com/questions/39594449/mediaplayer-onpreparedlistener-doesnt-work#39595041
  471. Audio Recording In ".wav" Format In Android Programming: http://www.edumobile.org/android/audio-recording-in-wav-format-in-android-programming/
  472. Android - Audio Capture: https://www.tutorialspoint.com/android/android_audio_capture.htm (basic example of working with Microphone to record Audio and save to device)
  473. How can I record a Video in my Android App?: https://stackoverflow.com/questions/1817742/how-can-i-record-a-video-in-my-android-app
  474. Android Canvas - Draw Happy Face!: http://hmkcode.com/android-draw-happy-face/
  475. Measure, Layout, Draw, Repeat - Custom Views and ViewGroups: https://academy.realm.io/posts/360andev-huyen-tue-dao-measure-layout-draw-repeat-custom-views-and-viewgroups-android/
  476. Android Canvas Example: https://examples.javacodegeeks.com/android/core/graphics/canvas-graphics/android-canvas-example/
  477. Draw in Canvas by finger, Android: https://stackoverflow.com/questions/16650419/draw-in-canvas-by-finger-android
  478. Android Shape Drawables tutorial: https://android.jlelse.eu/android-shape-drawables-tutorial-17fbece6fef5
  479. Drawing Shapes in Android: https://androidresearch.wordpress.com/2012/03/24/drawing-shapes-in-android/
  480. Android Canvas And Paint Common Drawing Function Example: https://www.dev2qa.com/android-canvas-and-paint-common-drawing-function-example/
  481. Drawable resources: https://developer.android.com/guide/topics/resources/drawable-resource.html
  482. Draw with a Canvas in Android: https://www.wideskills.com/android/android-graphics/draw-with-canvas-in-android
  483. Basic Painting with Views: https://guides.codepath.com/android/Basic-Painting-with-Views
  484. Calling JavaScript function from an Android Activity: https://stackoverflow.com/questions/15673509/calling-javascript-function-from-an-android-activity
  485. Android Calling JavaScript functions in WebView: https://stackoverflow.com/questions/4325639/android-calling-javascript-functions-in-webview
  486. Call Android methods from JavaScript: https://stackoverflow.com/questions/22895140/call-android-methods-from-javascript
  487. Android webview & localStorage: https://stackoverflow.com/questions/5899087/android-webview-localstorage
  488. Sample App — Android Unidirectional Data Flow: https://android.jlelse.eu/sample-app-android-unidirectional-data-flow-b9f8ad0fbca3
  489. Google I/O 2013 - The New Android SDK Build System: https://www.youtube.com/watch?v=LCJAgPkpmR0 (introduced move from Ant to Gradle)
  490. How to Add Libraries to Android Studio: https://www.youtube.com/watch?v=1MyBO9z7ojk
  491. How to Manage Gradle Dependencies in Android Project: https://android.jlelse.eu/how-to-manage-gradle-dependencies-in-android-project-132736ae3217
  492. How do I add a library project to Android Studio?: https://stackoverflow.com/questions/16588064/how-do-i-add-a-library-project-to-android-studio
  493. Android plugin for Gradle HTTP proxy settings: https://developer.android.com/studio/intro/studio-config?hl=tr#gradle-plugin
  494. Better dependency management in Android Studio 3.5 with Gradle buildSrcVersions: https://proandroiddev.com/better-dependency-management-in-android-studio-3-5-with-gradle-buildsrcversions-7cd67dbaa5d4
  495. Copying APK file in Android Gradle project: https://stackoverflow.com/questions/21434554/copying-apk-file-in-android-gradle-project
  496. How to get the attr reference in code?: https://stackoverflow.com/questions/9398610/how-to-get-the-attr-reference-in-code/9409391#9409391
  497. Gradle exclude R.java in Android Javadocs when internal classes depend on R.java: https://stackoverflow.com/questions/34427079/gradle-exclude-r-java-in-android-javadocs-when-internal-classes-depend-on-r-java
  498. Excluding BuildConfig.class and R.class from Android library jar in Maven: https://stackoverflow.com/questions/15127624/excluding-buildconfig-class-and-r-class-from-android-library-jar-in-maven
  499. How to create JavaDoc using Android Studio without R and BuildConfig?: https://stackoverflow.com/questions/29162820/how-to-create-javadoc-using-android-studio-without-r-and-buildconfig
  500. Webview Localhost Connection refused using 10.0.2.2 address: https://stackoverflow.com/questions/27613752/webview-localhost-connection-refused-using-10-0-2-2-address
  501. Android -- ConnectivityManager always returning null: https://stackoverflow.com/questions/9664757/android-connectivitymanager-always-returning-null (how to check Network state)
  502. How Google Makes Money from Android - Business Model Explained: https://www.kamilfranek.com/how-google-makes-money-from-android/
  503. How does Google make money from Android?: https://www.androidauthority.com/how-does-google-make-money-from-android-669008/
  504. How To Resolve Package R Does Not Exist Error In Android Studio: https://www.dev2qa.com/how-to-resolve-package-r-dose-not-exist-error-in-android-studio/

See Also

Linux | Java | Kotlin | Flutter | Mobile Phone | Tablet | Wearables | IoT | OS | OpenMoko | iOS | QR code | Image Recognition | Voice Recognition | Speech Recognition | Biometrics