1. A summary of the differences between each compiled version of Android, starting from 5.0.
1. Android 5.0 API-21
1.1 Material Design
Design specifications , the compiled version is upgraded to at least 21 to facilitate the use of Appcompat-V7
RecyclerView-V7
CardView-V7
such frameworks.
1.2 Disable the implicit intent to start the service, and IllegalArgumentException
an exception will be thrown directly at runtime
过时禁用 Intent intent = new Intent(); intent.setAction("com.example.myapplication"); startService(intent);
Only use explicit intent Intent intent = new Intent("com.example.myapplication");
2. Android 6.0 API-23
2.1 For some sensitive permissions, you need to apply for permissions dynamically, otherwise an exception will be thrown
3. Android 7.0 API-24
3.1 APK signature scheme v2 , android 7.0 newly introduces the application signature scheme, which can provide faster application installation time and more protection against unauthorized APK file changes, but it should be noted that this way of packaging is very easy to apk When the internal version is updated, an error message appears when parsing the installation package.
3.2 The StrictMode API
policy prohibits disclosure outside your application file:// URI
. An exception intent
will be thrown if you start a file that contains a file URI FileUriExposedException
. Affected by this are functions such as photo selection , apk download and installation . To share files between apps, you should send an item content:// URI
and grant temporary access to the URI.
4. Android 8.0 API-26 (8.1 API-27)
4.1 roundedIcon adaptive icon, an additional round application icon is provided in the manifest file
4.2 New special permissions: use android.permission.REQUEST_INSTALL_PACKAGES
when you need to install apps from unknown sources