From c1824057d52131dc62d36c7d143e9c3bbe230364 Mon Sep 17 00:00:00 2001
From: Muntashir Al-Islam <muntashir.islam96@gmail.com>
Date: Mon, 17 May 2021 18:22:46 +0600
Subject: [PATCH] Update licenses, add contributing and building pages

---
 BUILDING.rst                                  |  91 +++++
 CONTRIBUTING.rst                              |  62 +++
 COPYING                                       |  16 +
 LICENSES/Apache-2.0                           | 186 +++++++++
 LICENSES/BSD-2-Clause                         |  35 ++
 LICENSES/BSD-3-Clause                         |  36 ++
 arts/LICENSE => LICENSES/CC-BY-SA-4.0         |  14 +-
 LICENSES/GPL-2.0                              | 353 ++++++++++++++++++
 LICENSE => LICENSES/GPL-3.0                   |  15 +-
 LICENSES/ISC                                  |  27 ++
 LICENSES/MIT                                  |  33 ++
 LICENSES/WTFPL                                |  25 ++
 README.md                                     |  72 +---
 app/build.gradle                              |  17 +-
 app/src/debug/res/xml/shortcuts.xml           |   3 +-
 app/src/main/AndroidManifest.xml              |  19 +-
 .../muntashirakon/AppManager/IAMService.aidl  |  17 +-
 .../muntashirakon/AppManager/IRemoteFile.aidl |  17 +-
 .../AppManager/IRemoteFileReader.aidl         |  17 +-
 .../AppManager/IRemoteFileWriter.aidl         |  17 +-
 .../AppManager/IRemoteProcess.aidl            |  18 +-
 .../AppManager/IRemoteShell.aidl              |  17 +-
 .../AppManager/IShellResult.aidl              |  17 +-
 .../AppManager/ipc/ps/ProcessEntry.aidl       |  17 +-
 .../AppManager/ipc/ps/ProcessUsers.aidl       |  17 +-
 .../github/muntashirakon/io/FileStatus.aidl   |  17 +-
 .../java/aosp/libcore/util/EmptyArray.java    |  19 +-
 .../java/aosp/libcore/util/HexEncoding.java   |  19 +-
 .../muntashirakon/AppManager/AppManager.java  |  17 +-
 .../AppManager/BaseActivity.java              |  17 +-
 .../AppManager/StaticDataset.java             |  17 +-
 .../adb/AdbAuthenticationFailedException.java |  19 +-
 .../AppManager/adb/AdbConnection.java         |  21 +-
 .../AppManager/adb/AdbConnectionManager.java  |  18 +-
 .../AppManager/adb/AdbCrypto.java             |  20 +-
 .../AppManager/adb/AdbProtocol.java           |  20 +-
 .../AppManager/adb/AdbShell.java              |  17 +-
 .../AppManager/adb/AdbStream.java             |  23 +-
 .../AppManager/adb/AdbUtils.java              |  17 +-
 .../AppManager/adb/LineReader.java            |  18 +-
 .../AppManager/apk/AndroidBinXmlParser.java   |  19 +-
 .../muntashirakon/AppManager/apk/ApkFile.java |  17 +-
 .../AppManager/apk/ApkUtils.java              |  17 +-
 .../apk/installer/AMPackageInstaller.java     |  17 +-
 .../installer/PackageInstallerActivity.java   |  17 +-
 .../PackageInstallerBroadcastReceiver.java    |  17 +-
 .../apk/installer/PackageInstallerCompat.java |  17 +-
 .../installer/PackageInstallerService.java    |  17 +-
 .../apk/installer/PackageInstallerUtils.java  |  18 +-
 .../installer/PackageInstallerViewModel.java  |  17 +-
 .../AppManager/apk/signing/SigSchemes.java    |  17 +-
 .../AppManager/apk/signing/Signer.java        |  17 +-
 .../AppManager/apk/splitapk/ApksMetadata.java |  17 +-
 .../apk/splitapk/SplitApkChooser.java         |  17 +-
 .../apk/splitapk/SplitApkExporter.java        |  17 +-
 .../apk/whatsnew/ApkWhatsNewFinder.java       |  17 +-
 .../apk/whatsnew/WhatsNewDialogFragment.java  |  17 +-
 .../AppManager/appops/AppOpsManager.java      |  18 +-
 .../AppManager/appops/AppOpsService.java      |  17 +-
 .../AppManager/appops/AppOpsUtils.java        |  17 +-
 .../AppManager/appops/OpEntry.java            |  17 +-
 .../AppManager/appops/PackageOps.java         |  17 +-
 .../appops/reflector/OpEntryConverter.java    |   2 +
 .../appops/reflector/PackageOpsConverter.java |   2 +
 .../appops/reflector/ReflectUtils.java        |  18 +-
 .../backup/BackupDialogFragment.java          |  17 +-
 .../AppManager/backup/BackupException.java    |   2 +
 .../AppManager/backup/BackupFiles.java        |  17 +-
 .../AppManager/backup/BackupFlags.java        |  17 +-
 .../AppManager/backup/BackupManager.java      |  17 +-
 .../AppManager/backup/BackupOp.java           |  17 +-
 .../AppManager/backup/BackupUtils.java        |  17 +-
 .../AppManager/backup/CryptoUtils.java        |  17 +-
 .../AppManager/backup/MetadataManager.java    |  17 +-
 .../AppManager/backup/RestoreOp.java          |  17 +-
 .../AppManager/backup/VerifyOp.java           |  17 +-
 .../AppManager/batchops/BatchOpsManager.java  |  17 +-
 .../AppManager/batchops/BatchOpsService.java  |  17 +-
 .../AppManager/crypto/AESCrypto.java          |  17 +-
 .../crypto/AuthenticationActivity.java        |  17 +-
 .../AppManager/crypto/Crypto.java             |  17 +-
 .../AppManager/crypto/CryptoException.java    |  17 +-
 .../AppManager/crypto/DummyCrypto.java        |  17 +-
 .../AppManager/crypto/OpenPGPCrypto.java      |  18 +-
 .../crypto/OpenPGPCryptoActivity.java         |  17 +-
 .../AppManager/crypto/RSACrypto.java          |  17 +-
 .../AppManager/crypto/ks/CompatUtil.java      |  19 +-
 .../AppManager/crypto/ks/KeyPair.java         |  17 +-
 .../crypto/ks/KeyStoreActivity.java           |  17 +-
 .../AppManager/crypto/ks/KeyStoreManager.java |  17 +-
 .../AppManager/crypto/ks/KeyStoreUtils.java   |  17 +-
 .../crypto/ks/SecretKeyAndVersion.java        |  18 +-
 .../AppManager/crypto/ks/SecretKeyCompat.java |  17 +-
 .../AppManager/db/AMDatabase.java             |  17 +-
 .../AppManager/db/dao/AppDao.java             |  17 +-
 .../AppManager/db/dao/FileHashDao.java        |  17 +-
 .../AppManager/db/dao/LogFilterDao.java       |  17 +-
 .../AppManager/db/entity/App.java             |  17 +-
 .../AppManager/db/entity/FileHash.java        |  17 +-
 .../AppManager/db/entity/LogFilter.java       |  17 +-
 .../details/AppDetailsActivity.java           |  17 +-
 .../details/AppDetailsFragment.java           |  17 +-
 .../details/AppDetailsFragmentViewModel.java  |  17 +-
 .../details/AppDetailsViewModel.java          |  17 +-
 .../details/EditShortcutDialogFragment.java   |  23 +-
 .../details/IconPickerDialogFragment.java     |  18 +-
 .../details/LauncherIconCreator.java          |  37 +-
 .../details/ManifestViewerActivity.java       |  17 +-
 .../details/info/AppInfoFragment.java         |  17 +-
 .../details/info/AppInfoRecyclerAdapter.java  |  17 +-
 .../details/info/AppInfoViewModel.java        |  17 +-
 .../AppManager/details/info/ListItem.java     |  17 +-
 .../intercept/ActivityInterceptor.java        |  19 +-
 .../intercept/AddIntentExtraFragment.java     |  17 +-
 .../AppManager/intercept/HistoryEditText.java |  17 +-
 .../AppManager/intercept/IntentCompat.java    |   2 +
 .../AppManager/ipc/AMService.java             |  17 +-
 .../AppManager/ipc/Container.java             |  18 +-
 .../AppManager/ipc/HiddenAPIs.java            |  18 +-
 .../AppManager/ipc/IPCClient.java             |  18 +-
 .../AppManager/ipc/IPCServer.java             |  18 +-
 .../AppManager/ipc/IPCUtils.java              |   2 +
 .../AppManager/ipc/ProxyBinder.java           |  19 +-
 .../AppManager/ipc/RemoteFileImpl.java        |  17 +-
 .../AppManager/ipc/RemoteFileReaderImpl.java  |  17 +-
 .../AppManager/ipc/RemoteFileWriterImpl.java  |  17 +-
 .../AppManager/ipc/RemoteProcess.java         |  18 +-
 .../AppManager/ipc/RemoteProcessImpl.java     |  18 +-
 .../AppManager/ipc/RemoteShellImpl.java       |  17 +-
 .../AppManager/ipc/RootService.java           |  18 +-
 .../AppManager/ipc/SerialExecutorService.java |  18 +-
 .../muntashirakon/AppManager/ipc/package.html |  17 +-
 .../AppManager/ipc/ps/ProcessEntry.java       |  17 +-
 .../AppManager/ipc/ps/ProcessUsers.java       |  17 +-
 .../muntashirakon/AppManager/ipc/ps/Ps.java   |  19 +-
 .../AppManager/logcat/CrazyLoggerService.java |  18 +-
 .../AppManager/logcat/LogFilterAdapter.java   |  18 +-
 .../AppManager/logcat/LogViewerActivity.java  |  18 +-
 .../logcat/LogViewerRecyclerAdapter.java      |  19 +-
 .../logcat/LogcatRecordingService.java        |  20 +-
 .../logcat/RecordLogDialogActivity.java       |  18 +-
 .../logcat/RecordLogDialogFragment.java       |  18 +-
 .../logcat/RecordingWidgetProvider.java       |  18 +-
 .../AppManager/logcat/helper/BuildHelper.java |  18 +-
 .../logcat/helper/LogcatHelper.java           |  18 +-
 .../logcat/helper/PreferenceHelper.java       |  18 +-
 .../logcat/helper/SaveLogHelper.java          |  18 +-
 .../logcat/helper/ServiceHelper.java          |  18 +-
 .../logcat/helper/WidgetHelper.java           |  18 +-
 .../logcat/reader/AbsLogcatReader.java        |  18 +-
 .../logcat/reader/LogcatReader.java           |  18 +-
 .../logcat/reader/LogcatReaderLoader.java     |  18 +-
 .../logcat/reader/MultipleLogcatReader.java   |  20 +-
 .../logcat/reader/ScrubberUtils.java          |  19 +-
 .../logcat/reader/SingleLogcatReader.java     |  18 +-
 .../AppManager/logcat/struct/LogLine.java     |  18 +-
 .../AppManager/logcat/struct/SavedLog.java    |  18 +-
 .../logcat/struct/SearchCriteria.java         |  18 +-
 .../logcat/struct/SendLogDetails.java         |  18 +-
 .../muntashirakon/AppManager/logs/Log.java    |  17 +-
 .../AppManager/main/ApplicationItem.java      |  17 +-
 .../AppManager/main/ListOptions.java          |  17 +-
 .../AppManager/main/MainActivity.java         |  17 +-
 .../AppManager/main/MainRecyclerAdapter.java  |  17 +-
 .../AppManager/main/MainViewModel.java        |  17 +-
 .../AppManager/misc/AMExceptionHandler.java   |  17 +-
 .../AppManager/misc/AlertDialogActivity.java  |  17 +-
 .../AppManager/misc/DeviceInfo.java           |  17 +-
 .../AppManager/misc/HelpActivity.java         |  17 +-
 .../AppManager/misc/OsEnvironment.java        |  17 +-
 .../AppManager/misc/SystemProperties.java     |  17 +-
 .../AppManager/misc/VMRuntime.java            |  16 +-
 .../AppManager/oneclickops/AppOpCount.java    |  17 +-
 .../BackupTasksDialogFragment.java            |   2 +
 .../AppManager/oneclickops/ItemCount.java     |  17 +-
 .../oneclickops/OneClickOpsActivity.java      |  17 +-
 .../RestoreTasksDialogFragment.java           |   2 +
 .../AppManager/profiles/AppsFragment.java     |  17 +-
 .../profiles/AppsProfileActivity.java         |  17 +-
 .../AppManager/profiles/ConfFragment.java     |  17 +-
 .../AppManager/profiles/ConfPreferences.java  |  17 +-
 .../profiles/ProfileApplierService.java       |  17 +-
 .../AppManager/profiles/ProfileManager.java   |  17 +-
 .../profiles/ProfileMetaManager.java          |  17 +-
 .../AppManager/profiles/ProfileViewModel.java |  17 +-
 .../AppManager/profiles/ProfilesActivity.java |  17 +-
 .../profiles/ProfilesViewModel.java           |  17 +-
 .../AppManager/rules/PseudoRules.java         |   2 +
 .../AppManager/rules/RulesExporter.java       |  17 +-
 .../AppManager/rules/RulesImporter.java       |  17 +-
 .../AppManager/rules/RulesStorageManager.java |  17 +-
 .../RulesTypeSelectionDialogFragment.java     |  17 +-
 .../rules/compontents/ComponentUtils.java     |  17 +-
 .../rules/compontents/ComponentsBlocker.java  |  17 +-
 .../ExternalComponentsImporter.java           |  17 +-
 .../AppManager/runner/AdbShellRunner.java     |  17 +-
 .../AppManager/runner/RootShellRunner.java    |  17 +-
 .../AppManager/runner/Runner.java             |  17 +-
 .../AppManager/runner/RunnerUtils.java        |  17 +-
 .../AppManager/runner/UserShellRunner.java    |  17 +-
 .../runningapps/AppProcessItem.java           |  17 +-
 .../AppManager/runningapps/ProcessItem.java   |  17 +-
 .../AppManager/runningapps/ProcessParser.java |  17 +-
 .../runningapps/RunningAppsActivity.java      |  17 +-
 .../runningapps/RunningAppsAdapter.java       |  17 +-
 .../runningapps/RunningAppsViewModel.java     |  17 +-
 .../scanner/ClassListingActivity.java         |  18 +-
 .../scanner/ClassViewerActivity.java          |  18 +-
 .../AppManager/scanner/DexClasses.java        |  17 +-
 .../AppManager/scanner/ScannerActivity.java   |  18 +-
 .../AppManager/scanner/ScannerViewModel.java  |  18 +-
 .../scanner/reflector/ClassTypeAlgorithm.java |  17 +-
 .../scanner/reflector/Reflector.java          |  17 +-
 .../servermanager/ActivityManagerCompat.java  |   2 +
 .../servermanager/ApiSupporter.java           |  18 +-
 .../servermanager/AppOpsConfigProvider.java   |  18 +-
 .../servermanager/ApplicationInfoCompat.java  |  17 +-
 .../AppManager/servermanager/AssetsUtils.java |  18 +-
 .../AppManager/servermanager/LocalServer.java |  18 +-
 .../servermanager/LocalServerManager.java     |  18 +-
 .../NetworkPolicyManagerCompat.java           |   2 +
 .../servermanager/PackageManagerCompat.java   |  17 +-
 .../servermanager/PermissionCompat.java       |  17 +-
 .../servermanager/ProcessCompat.java          |  17 +-
 .../servermanager/ServerConfig.java           |   3 +
 .../ServerStatusChangeReceiver.java           |   3 +
 .../settings/ApkSigningPreferences.java       |  17 +-
 .../settings/BackupRestorePreferences.java    |  17 +-
 .../settings/FeatureController.java           |  17 +-
 .../ImportExportRulesDialogFragment.java      |  17 +-
 .../settings/InstallerPreferences.java        |  17 +-
 .../settings/LogViewerPreferences.java        |  17 +-
 .../AppManager/settings/MainPreferences.java  |  17 +-
 .../AppManager/settings/RulesPreferences.java |  17 +-
 .../AppManager/settings/SettingsActivity.java |  17 +-
 .../settings/SettingsDataStore.java           |  17 +-
 .../AESCryptoSelectionDialogFragment.java     |  17 +-
 .../ImportExportKeyStoreDialogFragment.java   |  17 +-
 .../KeyPairGeneratorDialogFragment.java       |  17 +-
 .../crypto/KeyPairImporterDialogFragment.java |  17 +-
 .../OpenPgpKeySelectionDialogFragment.java    |  17 +-
 .../RSACryptoSelectionDialogFragment.java     |  17 +-
 .../sharedpref/EditPrefItemFragment.java      |  17 +-
 .../sharedpref/SharedPrefsActivity.java       |  17 +-
 .../sysconfig/SysConfigActivity.java          |  17 +-
 .../AppManager/sysconfig/SysConfigInfo.java   |  17 +-
 .../AppManager/sysconfig/SysConfigType.java   |  17 +-
 .../sysconfig/SysConfigWrapper.java           |  17 +-
 .../AppManager/sysconfig/SystemConfig.java    |  17 +-
 .../types/AnyFilterArrayAdapter.java          |  17 +-
 .../AppManager/types/EmptySpan.java           |  17 +-
 .../AppManager/types/ForegroundService.java   |   2 +
 .../AppManager/types/FreshFile.java           |  17 +-
 .../AppManager/types/FullscreenDialog.java    |  17 +-
 .../AppManager/types/HyperlinkTextView.java   |  17 +-
 .../AppManager/types/IconLoaderThread.java    |  17 +-
 .../types/NoFilterArrayAdapter.java           |  17 +-
 .../AppManager/types/NumericSpan.java         |  17 +-
 .../types/PackageChangeReceiver.java          |  17 +-
 .../AppManager/types/PackageSizeInfo.java     |  17 +-
 .../types/RadioGroupGridLayout.java           |  17 +-
 .../types/RecyclerViewWithEmptyView.java      |  17 +-
 .../types/ScrollableDialogBuilder.java        |  17 +-
 .../SearchableMultiChoiceDialogBuilder.java   |  17 +-
 .../types/TextInputDialogBuilder.java         |  17 +-
 .../types/TextInputDropdownDialogBuilder.java |  17 +-
 .../AppManager/types/UserPackagePair.java     |  17 +-
 .../AppManager/uri/UriManager.java            |  17 +-
 .../AppManager/usage/AppUsageActivity.java    |  17 +-
 .../usage/AppUsageDetailsDialogFragment.java  |  17 +-
 .../usage/AppUsageStatsManager.java           |  17 +-
 .../AppManager/usage/PackageUsageInfo.java    |  17 +-
 .../AppManager/usage/UsageUtils.java          |  17 +-
 .../muntashirakon/AppManager/users/Users.java |  17 +-
 .../AppManager/utils/AppPref.java             |  17 +-
 .../AppManager/utils/ArrayUtils.java          |  16 +-
 .../utils/BetterActivityResult.java           |  17 +-
 .../AppManager/utils/ContextUtils.java        |  18 +-
 .../AppManager/utils/DateUtils.java           |   2 +
 .../AppManager/utils/DigestUtils.java         |  17 +-
 .../AppManager/utils/IOUtils.java             |  17 +-
 .../AppManager/utils/JSONUtils.java           |  17 +-
 .../AppManager/utils/KeyStoreUtils.java       |  17 +-
 .../AppManager/utils/LangUtils.java           |  17 +-
 .../AppManager/utils/ListItemCreator.java     |  17 +-
 .../AppManager/utils/MagiskUtils.java         |  17 +-
 .../AppManager/utils/MiuiUtils.java           |  18 +-
 .../utils/MultithreadedExecutor.java          |  17 +-
 .../AppManager/utils/NonNullUtils.java        |  17 +-
 .../AppManager/utils/NotificationUtils.java   |  17 +-
 .../AppManager/utils/PackageUtils.java        |  17 +-
 .../utils/ParcelFileDescriptorUtil.java       |  19 +-
 .../AppManager/utils/PermissionUtils.java     |  17 +-
 .../AppManager/utils/SettingsState.java       |  18 +-
 .../AppManager/utils/SsaidSettings.java       |  17 +-
 .../AppManager/utils/StoragePermission.java   |  17 +-
 .../AppManager/utils/StorageUtils.java        |  17 +-
 .../AppManager/utils/TarUtils.java            |  17 +-
 .../AppManager/utils/UIUtils.java             |  17 +-
 .../AppManager/utils/UiThreadHandler.java     |  18 +-
 .../muntashirakon/AppManager/utils/Utils.java |  17 +-
 .../AppManager/utils/WaitRunnable.java        |  18 +-
 .../muntashirakon/io/AtomicProxyFile.java     |  17 +-
 .../github/muntashirakon/io/FileStatus.java   |  17 +-
 .../io/github/muntashirakon/io/ProxyFile.java |  17 +-
 .../muntashirakon/io/ProxyFileReader.java     |  17 +-
 .../muntashirakon/io/ProxyFileWriter.java     |  17 +-
 .../github/muntashirakon/io/ProxyFiles.java   |  17 +-
 .../muntashirakon/io/ProxyInputStream.java    |  17 +-
 .../muntashirakon/io/ProxyOutputStream.java   |  17 +-
 .../muntashirakon/io/SplitInputStream.java    |  17 +-
 .../muntashirakon/io/SplitOutputStream.java   |  17 +-
 .../compress/archivers/ArchiveEntry.java      |  21 +-
 .../archivers/ArchiveInputStream.java         |  21 +-
 .../archivers/ArchiveOutputStream.java        |  21 +-
 .../archivers/EntryStreamOffsets.java         |  22 +-
 .../archivers/tar/TarArchiveEntry.java        |  22 +-
 .../archivers/tar/TarArchiveInputStream.java  |  19 +-
 .../archivers/tar/TarArchiveOutputStream.java |  21 +-
 .../archivers/tar/TarArchiveSparseEntry.java  |  22 +-
 .../tar/TarArchiveSparseZeroInputStream.java  |  20 +-
 .../archivers/tar/TarArchiveStructSparse.java |  21 +-
 .../compress/archivers/tar/TarConstants.java  |  22 +-
 .../compress/archivers/tar/TarUtils.java      |  22 +-
 .../archivers/zip/CharsetAccessor.java        |  20 +-
 .../archivers/zip/NioZipEncoding.java         |  20 +-
 .../compress/archivers/zip/ZipEncoding.java   |  20 +-
 .../archivers/zip/ZipEncodingHelper.java      |  19 +-
 .../compressors/CompressorInputStream.java    |  21 +-
 .../compressors/CompressorOutputStream.java   |  21 +-
 .../compress/compressors/FileNameUtil.java    |  21 +-
 .../bzip2/BZip2CompressorInputStream.java     |  25 +-
 .../bzip2/BZip2CompressorOutputStream.java    |  21 +-
 .../compressors/bzip2/BZip2Constants.java     |  20 +-
 .../compressors/bzip2/BZip2Utils.java         |  21 +-
 .../compress/compressors/bzip2/BlockSort.java |  21 +-
 .../compress/compressors/bzip2/CRC.java       |  21 +-
 .../compress/compressors/bzip2/Rand.java      |  20 +-
 .../gzip/GzipCompressorInputStream.java       |  21 +-
 .../gzip/GzipCompressorOutputStream.java      |  21 +-
 .../compressors/gzip/GzipParameters.java      |  20 +-
 .../compress/compressors/gzip/GzipUtils.java  |  21 +-
 .../commons/compress/utils/ArchiveUtils.java  |  19 +-
 .../compress/utils/BitInputStream.java        |  21 +-
 .../compress/utils/BoundedInputStream.java    |  20 +-
 .../commons/compress/utils/ByteUtils.java     |  19 +-
 .../commons/compress/utils/CharsetNames.java  |  19 +-
 .../utils/CloseShieldFilterInputStream.java   |  20 +-
 .../compress/utils/CountingInputStream.java   |  21 +-
 .../compress/utils/CountingOutputStream.java  |  21 +-
 .../utils/FixedLengthBlockOutputStream.java   |  21 +-
 .../commons/compress/utils/IOUtils.java       |  21 +-
 .../compress/utils/InputStreamStatistics.java |  19 +-
 .../main/res/anim/fullscreen_dialog_enter.xml |  18 +-
 .../main/res/anim/fullscreen_dialog_exit.xml  |  18 +-
 app/src/main/res/color/item_icon_tint.xml     |  19 +-
 app/src/main/res/color/item_ripple_color.xml  |  18 +-
 app/src/main/res/color/item_text_color.xml    |  18 +-
 app/src/main/res/drawable/border_left.xml     |  17 +-
 .../res/drawable/ic_assignment_black_24dp.xml |   1 +
 .../main/res/drawable/ic_baseline_add_24.xml  |   1 +
 .../res/drawable/ic_baseline_autorenew_24.xml |  18 +-
 .../res/drawable/ic_baseline_clear_24.xml     |   1 +
 .../drawable/ic_baseline_content_copy_24.xml  |  17 -
 .../res/drawable/ic_baseline_get_app_24.xml   |   1 +
 .../drawable/ic_baseline_outlined_flag_24.xml |   1 +
 .../ic_baseline_power_settings_new_24.xml     |   1 +
 .../main/res/drawable/ic_baseline_save_24.xml |   1 +
 .../res/drawable/ic_baseline_security_24.xml  |  18 +-
 .../drawable/ic_baseline_select_all_24.xml    |   1 +
 .../res/drawable/ic_baseline_settings_24.xml  |   1 +
 .../main/res/drawable/ic_baseline_sync_24.xml |   1 +
 .../main/res/drawable/ic_block_black_24dp.xml |   1 +
 .../main/res/drawable/ic_code_black_24dp.xml  |   1 +
 .../res/drawable/ic_data_usage_black_24dp.xml |   1 +
 .../res/drawable/ic_delete_black_24dp.xml     |   1 +
 .../drawable/ic_expand_less_white_24dp.xml    |   1 +
 .../drawable/ic_expand_more_white_24dp.xml    |   1 +
 .../drawable/ic_filter_list_white_24dp.xml    |   1 +
 .../res/drawable/ic_folder_white_24dp.xml     |   1 +
 .../ic_frost_aurorastore_black_24dp.xml       |   1 +
 .../drawable/ic_frost_fdroid_black_24dp.xml   |   1 +
 app/src/main/res/drawable/ic_frost_termux.xml |   1 +
 .../main/res/drawable/ic_image_black_24dp.xml |   1 +
 .../drawable/ic_info_outline_black_24dp.xml   |   1 +
 .../ic_insert_drive_file_white_24dp.xml       |   1 +
 .../ic_keyboard_backspace_black_24dp.xml      |   1 +
 .../res/drawable/ic_launcher_foreground.xml   |   1 +
 .../res/drawable/ic_more_vert_black_24dp.xml  |   1 +
 .../drawable/ic_open_in_new_black_24dp.xml    |   1 +
 .../res/drawable/ic_outline_plus_one_24.xml   |   1 +
 .../main/res/drawable/ic_pause_white_24dp.xml |   1 +
 .../res/drawable/ic_play_arrow_white_24dp.xml |   1 +
 .../res/drawable/ic_record_white_24dp.xml     |   1 +
 .../res/drawable/ic_refresh_black_24dp.xml    |   1 +
 .../res/drawable/ic_restore_black_24dp.xml    |   1 +
 app/src/main/res/drawable/ic_search.xml       |   1 +
 .../main/res/drawable/ic_share_black_24dp.xml |   1 +
 .../main/res/drawable/ic_shortcut_record.xml  |   1 +
 .../main/res/drawable/ic_sort_black_24dp.xml  |   1 +
 .../main/res/drawable/ic_sort_white_24dp.xml  |   1 +
 .../main/res/drawable/ic_spinner_caret.xml    |   2 +-
 .../main/res/drawable/ic_stop_white_24dp.xml  |   1 +
 .../main/res/drawable/ic_tune_black_24dp.xml  |   1 +
 .../drawable/ic_view_agenda_white_24dp.xml    |   1 +
 .../res/drawable/ic_view_list_black_24dp.xml  |   1 +
 .../res/drawable/ic_wrap_text_black_24dp.xml  |   1 +
 .../res/drawable/outlined_stroke_color.xml    |  19 +-
 .../res/drawable/spinner_rounded_border.xml   |  19 +-
 .../main/res/layout/activity_any_viewer.xml   |  18 +-
 .../main/res/layout/activity_app_details.xml  |  18 +-
 .../main/res/layout/activity_app_usage.xml    |  18 +-
 .../main/res/layout/activity_apps_profile.xml |  18 +-
 .../res/layout/activity_class_listing.xml     |  18 +-
 app/src/main/res/layout/activity_help.xml     |  18 +-
 .../main/res/layout/activity_interceptor.xml  |  18 +-
 app/src/main/res/layout/activity_logcat.xml   |  17 +-
 app/src/main/res/layout/activity_main.xml     |  18 +-
 .../res/layout/activity_one_click_ops.xml     |  18 +-
 app/src/main/res/layout/activity_profiles.xml |  18 +-
 .../main/res/layout/activity_running_apps.xml |  18 +-
 app/src/main/res/layout/activity_scanner.xml  |  18 +-
 app/src/main/res/layout/activity_settings.xml |  18 +-
 .../main/res/layout/activity_shared_prefs.xml |  18 +-
 .../main/res/layout/activity_sys_config.xml   |  18 +-
 app/src/main/res/layout/appbar.xml            |  17 +-
 app/src/main/res/layout/dialog_about.xml      |  18 +-
 .../res/layout/dialog_app_usage_details.xml   |  18 +-
 .../main/res/layout/dialog_backup_tasks.xml   |  18 +-
 .../layout/dialog_certificate_generator.xml   |  18 +-
 app/src/main/res/layout/dialog_disclaimer.xml |  18 +-
 .../main/res/layout/dialog_edit_pref_item.xml |  18 +-
 app/src/main/res/layout/dialog_fullscreen.xml |  18 +-
 .../main/res/layout/dialog_icon_picker.xml    |  18 +-
 .../res/layout/dialog_key_pair_importer.xml   |  17 +-
 .../main/res/layout/dialog_list_options.xml   |  18 +-
 .../res/layout/dialog_partial_save_help.xml   |   2 +-
 .../layout/dialog_profile_backup_restore.xml  |  18 +-
 app/src/main/res/layout/dialog_progress.xml   |  18 +-
 .../main/res/layout/dialog_restore_tasks.xml  |  18 +-
 .../layout/dialog_scrollable_text_view.xml    |  18 +-
 .../layout/dialog_searchable_multi_choice.xml |  18 +-
 app/src/main/res/layout/dialog_searchby.xml   |   1 +
 app/src/main/res/layout/dialog_send_log.xml   |   1 +
 .../layout/dialog_settings_import_export.xml  |  18 +-
 app/src/main/res/layout/dialog_shortcut.xml   |  18 +-
 app/src/main/res/layout/dialog_ssaid_info.xml |  19 +-
 app/src/main/res/layout/dialog_text_input.xml |  18 +-
 .../res/layout/dialog_text_input_dropdown.xml |  18 +-
 .../res/layout/dialog_title_with_icon.xml     |   1 +
 app/src/main/res/layout/dialog_whats_new.xml  |  18 +-
 .../main/res/layout/fragment_container.xml    |  18 +-
 app/src/main/res/layout/header_app_usage.xml  |  18 +-
 .../res/layout/header_logcat_add_filter.xml   |  17 +-
 .../res/layout/item_app_details_appop.xml     |  18 +-
 .../main/res/layout/item_app_details_perm.xml |  18 +-
 .../res/layout/item_app_details_primary.xml   |  18 +-
 .../res/layout/item_app_details_secondary.xml |  18 +-
 .../res/layout/item_app_details_tertiary.xml  |  18 +-
 .../main/res/layout/item_app_info_actions.xml |  18 +-
 app/src/main/res/layout/item_app_usage.xml    |  18 +-
 .../res/layout/item_app_usage_details.xml     |  18 +-
 .../res/layout/item_checked_text_view.xml     |  18 +-
 .../res/layout/item_divider_horizontal.xml    |  18 +-
 .../res/layout/item_icon_title_subtitle.xml   |  18 +-
 app/src/main/res/layout/item_logcat.xml       |   1 +
 app/src/main/res/layout/item_main.xml         |  18 +-
 app/src/main/res/layout/item_running_app.xml  |  18 +-
 app/src/main/res/layout/item_shared_pref.xml  |  17 +-
 app/src/main/res/layout/item_sys_config.xml   |  18 +-
 app/src/main/res/layout/item_text_view.xml    |  18 +-
 app/src/main/res/layout/item_title_action.xml |  18 +-
 .../res/layout/item_title_subtitle_inline.xml |  18 +-
 app/src/main/res/layout/pager_app_details.xml |  18 +-
 app/src/main/res/layout/pager_app_info.xml    |  18 +-
 app/src/main/res/layout/widget_recording.xml  |   2 +-
 .../activity_activity_interceptor_actions.xml |  18 +-
 .../res/menu/activity_any_viewer_actions.xml  |  18 +-
 .../res/menu/activity_app_usage_actions.xml   |  18 +-
 .../menu/activity_class_listing_actions.xml   |  18 +-
 .../main/res/menu/activity_logcat_actions.xml |  17 +-
 .../main/res/menu/activity_main_actions.xml   |  19 +-
 .../menu/activity_main_selection_actions.xml  |  18 +-
 .../res/menu/activity_profile_navigation.xml  |  18 +-
 .../res/menu/activity_profiles_actions.xml    |  18 +-
 .../menu/activity_profiles_popup_actions.xml  |  18 +-
 .../menu/activity_running_apps_actions.xml    |  18 +-
 .../activity_running_apps_popup_actions.xml   |  18 +-
 ...ctivity_running_apps_selection_actions.xml |  18 +-
 app/src/main/res/menu/activity_scanner.xml    |  18 +-
 .../menu/activity_shared_prefs_actions.xml    |  17 +-
 .../fragment_app_details_app_ops_actions.xml  |  18 +-
 ...ragment_app_details_components_actions.xml |  18 +-
 ...agment_app_details_permissions_actions.xml |  18 +-
 .../fragment_app_details_refresh_actions.xml  |  18 +-
 .../res/menu/fragment_app_info_actions.xml    |  18 +-
 .../menu/fragment_profile_apps_actions.xml    |  18 +-
 .../main/res/mipmap-anydpi-v26/ic_banner.xml  |   1 +
 .../res/mipmap-anydpi-v26/ic_launcher.xml     |   1 +
 .../mipmap-anydpi-v26/ic_launcher_round.xml   |   1 +
 app/src/main/res/values-ar-rSA/disclaimer.xml |   1 +
 app/src/main/res/values-ar-rSA/strings.xml    |  18 +-
 app/src/main/res/values-ar/disclaimer.xml     |   1 +
 app/src/main/res/values-ar/strings.xml        |   1 +
 app/src/main/res/values-bn-rBD/disclaimer.xml |   1 +
 app/src/main/res/values-bn-rBD/strings.xml    |  18 +-
 app/src/main/res/values-cs-rCZ/strings.xml    |  18 +-
 app/src/main/res/values-cs/disclaimer.xml     |   1 +
 app/src/main/res/values-de/disclaimer.xml     |   1 +
 app/src/main/res/values-de/strings.xml        |  18 +-
 app/src/main/res/values-eo/disclaimer.xml     |   1 +
 app/src/main/res/values-eo/strings.xml        |   1 +
 app/src/main/res/values-es-rES/strings.xml    |  18 +-
 app/src/main/res/values-es/disclaimer.xml     |   1 +
 app/src/main/res/values-fa/disclaimer.xml     |   1 +
 app/src/main/res/values-fa/strings.xml        |   1 +
 app/src/main/res/values-fr/disclaimer.xml     |   1 +
 app/src/main/res/values-fr/strings.xml        |   1 +
 app/src/main/res/values-hi/disclaimer.xml     |   1 +
 app/src/main/res/values-hi/strings.xml        |   1 +
 app/src/main/res/values-hu/disclaimer.xml     |   1 +
 app/src/main/res/values-hu/strings.xml        |   1 +
 app/src/main/res/values-in-rID/disclaimer.xml |   1 +
 app/src/main/res/values-in-rID/strings.xml    |  18 +-
 app/src/main/res/values-it-rIT/disclaimer.xml |   1 +
 app/src/main/res/values-it-rIT/strings.xml    |   1 +
 app/src/main/res/values-ja/disclaimer.xml     |  18 +-
 app/src/main/res/values-ja/strings.xml        |  18 +-
 app/src/main/res/values-ko/disclaimer.xml     |   1 +
 app/src/main/res/values-ko/strings.xml        |   1 +
 app/src/main/res/values-nb-rNO/disclaimer.xml |   1 +
 app/src/main/res/values-nb-rNO/strings.xml    |   1 +
 app/src/main/res/values-night/colors.xml      |  19 +-
 app/src/main/res/values-night/styles.xml      |  18 +-
 app/src/main/res/values-pl/disclaimer.xml     |   1 +
 app/src/main/res/values-pl/strings.xml        |   1 +
 app/src/main/res/values-pt-rBR/disclaimer.xml |   1 +
 app/src/main/res/values-pt-rBR/strings.xml    |  18 +-
 app/src/main/res/values-pt/disclaimer.xml     |   1 +
 app/src/main/res/values-pt/strings.xml        |   1 +
 app/src/main/res/values-ru-rRU/disclaimer.xml |   1 +
 app/src/main/res/values-ru-rRU/strings.xml    |  18 +-
 app/src/main/res/values-si/disclaimer.xml     |   1 +
 app/src/main/res/values-si/strings.xml        |   1 +
 app/src/main/res/values-tr-rTR/disclaimer.xml |   1 +
 app/src/main/res/values-tr-rTR/strings.xml    |  18 +-
 app/src/main/res/values-uk-rUA/strings.xml    |  18 +-
 app/src/main/res/values-uk/disclaimer.xml     |   1 +
 app/src/main/res/values-vi/disclaimer.xml     |   1 +
 app/src/main/res/values-vi/strings.xml        |   1 +
 app/src/main/res/values-zh-rCN/disclaimer.xml |   1 +
 app/src/main/res/values-zh-rCN/strings.xml    |  18 +-
 app/src/main/res/values-zh-rTW/disclaimer.xml |   1 +
 app/src/main/res/values-zh-rTW/strings.xml    |  18 +-
 app/src/main/res/values/arrays.xml            |  18 +-
 app/src/main/res/values/colors.xml            |  18 +-
 app/src/main/res/values/dimens.xml            |  18 +-
 app/src/main/res/values/disclaimer.xml        |  18 +-
 .../main/res/values/ic_banner_background.xml  |   1 +
 .../res/values/ic_launcher_background.xml     |   1 +
 app/src/main/res/values/languages.xml         |  18 +-
 app/src/main/res/values/libs.xml              |  18 +-
 app/src/main/res/values/strings.xml           |  18 +-
 app/src/main/res/values/styles.xml            |  18 +-
 app/src/main/res/values/trackers.xml          |  18 +-
 .../res/xml/preferences_backup_restore.xml    |  19 +-
 .../main/res/xml/preferences_installer.xml    |   2 +-
 .../main/res/xml/preferences_log_viewer.xml   |   2 +-
 app/src/main/res/xml/preferences_main.xml     |  18 +-
 .../res/xml/preferences_profile_config.xml    |  19 +-
 app/src/main/res/xml/preferences_rules.xml    |   2 +-
 .../main/res/xml/preferences_signature.xml    |  19 +-
 app/src/main/res/xml/provider_paths.xml       |  19 +-
 .../main/res/xml/recording_widget_info.xml    |   2 +
 app/src/main/res/xml/shortcuts.xml            |   3 +-
 .../runningapps/ProcessParserTest.java        |  17 +-
 .../AppManager/utils/IOUtilsTest.java         |  17 +-
 .../AppManager/utils/TarUtilsTest.java        |  17 +-
 .../io/SplitInputStreamTest.java              |  17 +-
 .../io/SplitOutputStreamTest.java             |  17 +-
 .../tar/TarArchiveInputStreamTest.java        |   2 +
 .../tar/TarArchiveOutputStreamTest.java       |   2 +
 .../bzip2/BZip2CompressorInputStreamTest.java |   2 +
 .../BZip2CompressorOutputStreamTest.java      |   2 +
 .../gzip/GzipCompressorInputStreamTest.java   |   2 +
 .../gzip/GzipCompressorOutputStreamTest.java  |   2 +
 arts/banner-raw-no-text.svg                   |   1 +
 arts/banner-raw-text.svg                      |   1 +
 arts/ic_launcher.svg                          |   1 +
 arts/ic_launcher_foreground.svg               |   1 +
 arts/ic_launcher_round.svg                    |   1 +
 build.gradle                                  |  17 +-
 common.gradle                                 |  17 +-
 docs/build.gradle                             |  17 +-
 docs/src/main/AndroidManifest.xml             |   2 +-
 hiddenapi/build.gradle                        |  17 +-
 hiddenapi/src/main/AndroidManifest.xml        |  17 +-
 libapkparser/build.gradle                     |  17 +-
 libapkparser/src/main/AndroidManifest.xml     |  18 +-
 .../dongliu/apk/parser/AbstractApkFile.java   |   5 +-
 .../net/dongliu/apk/parser/ApkParser.java     |   5 +-
 .../net/dongliu/apk/parser/ApkParsers.java    |   5 +-
 .../dongliu/apk/parser/ByteArrayApkFile.java  |   5 +-
 .../apk/parser/ByteArrayApkParser.java        |   6 +-
 .../dongliu/apk/parser/bean/AdaptiveIcon.java |   3 +
 .../net/dongliu/apk/parser/bean/ApkMeta.java  |   5 +-
 .../apk/parser/bean/ApkSignStatus.java        |   4 +-
 .../dongliu/apk/parser/bean/ApkSigner.java    |   3 +
 .../dongliu/apk/parser/bean/ApkV2Signer.java  |   3 +
 .../apk/parser/bean/CertificateMeta.java      |  31 +-
 .../dongliu/apk/parser/bean/ColorIcon.java    |   3 +
 .../net/dongliu/apk/parser/bean/DexClass.java |   6 +-
 .../dongliu/apk/parser/bean/GlEsVersion.java  |   5 +-
 .../net/dongliu/apk/parser/bean/Icon.java     |   5 +-
 .../net/dongliu/apk/parser/bean/IconFace.java |   3 +
 .../net/dongliu/apk/parser/bean/IconPath.java |   3 +
 .../dongliu/apk/parser/bean/Permission.java   |   5 +-
 .../dongliu/apk/parser/bean/UseFeature.java   |   5 +-
 .../apk/parser/exception/ParserException.java |   7 +-
 .../apk/parser/parser/AdaptiveIconParser.java |   5 +-
 .../apk/parser/parser/ApkMetaTranslator.java  |   5 +-
 .../apk/parser/parser/ApkSignBlockParser.java |   3 +
 .../apk/parser/parser/AttributeValues.java    |  29 +-
 .../apk/parser/parser/BinaryXmlParser.java    |   5 +-
 .../apk/parser/parser/CertificateMetas.java   |   3 +
 .../apk/parser/parser/CertificateParser.java  |  31 +-
 .../parser/parser/CompositeXmlStreamer.java   |   6 +-
 .../dongliu/apk/parser/parser/DexParser.java  |   5 +-
 .../parser/parser/ResourceTableParser.java    |   4 +-
 .../apk/parser/parser/StringPoolEntry.java    |   3 +
 .../apk/parser/parser/XmlNamespaces.java      |   5 +-
 .../apk/parser/parser/XmlStreamer.java        |   5 +-
 .../apk/parser/parser/XmlTranslator.java      |   5 +-
 .../apk/parser/parser/package-info.java       |   5 -
 .../apk/parser/struct/AndroidConstants.java   |   7 +-
 .../apk/parser/struct/ChunkHeader.java        |   5 +-
 .../dongliu/apk/parser/struct/ChunkType.java  |   5 +-
 .../dongliu/apk/parser/struct/ResValue.java   |   5 +-
 .../apk/parser/struct/ResourceValue.java      |   5 +-
 .../dongliu/apk/parser/struct/StringPool.java |   5 +-
 .../apk/parser/struct/StringPoolHeader.java   |   5 +-
 .../apk/parser/struct/dex/DexClassStruct.java |   6 +-
 .../apk/parser/struct/dex/DexHeader.java      |   5 +-
 .../apk/parser/struct/package-info.java       |   4 -
 .../apk/parser/struct/resource/Densities.java |   3 +
 .../parser/struct/resource/LibraryEntry.java  |   5 +-
 .../parser/struct/resource/LibraryHeader.java |   7 +-
 .../parser/struct/resource/NullHeader.java    |   3 +
 .../parser/struct/resource/PackageHeader.java |   6 +-
 .../struct/resource/ResTableConfig.java       |   5 +-
 .../parser/struct/resource/ResourceEntry.java |   5 +-
 .../struct/resource/ResourceMapEntry.java     |   6 +-
 .../struct/resource/ResourcePackage.java      |   5 +-
 .../parser/struct/resource/ResourceTable.java |   5 +-
 .../struct/resource/ResourceTableHeader.java  |   5 +-
 .../struct/resource/ResourceTableMap.java     |   6 +-
 .../apk/parser/struct/resource/Type.java      |   6 +-
 .../parser/struct/resource/TypeHeader.java    |   6 +-
 .../apk/parser/struct/resource/TypeSpec.java  |   6 +-
 .../struct/resource/TypeSpecHeader.java       |   6 +-
 .../struct/signingv2/ApkSigningBlock.java     |   3 +
 .../apk/parser/struct/signingv2/Digest.java   |   3 +
 .../parser/struct/signingv2/Signature.java    |   3 +
 .../parser/struct/signingv2/SignerBlock.java  |   3 +
 .../apk/parser/struct/xml/Attribute.java      |   5 +-
 .../apk/parser/struct/xml/Attributes.java     |   5 +-
 .../apk/parser/struct/xml/NullHeader.java     |   5 +-
 .../apk/parser/struct/xml/XmlCData.java       |   6 +-
 .../apk/parser/struct/xml/XmlHeader.java      |   5 +-
 .../parser/struct/xml/XmlNamespaceEndTag.java |   6 +-
 .../struct/xml/XmlNamespaceStartTag.java      |   6 +-
 .../apk/parser/struct/xml/XmlNodeEndTag.java  |   6 +-
 .../apk/parser/struct/xml/XmlNodeHeader.java  |   6 +-
 .../parser/struct/xml/XmlNodeStartTag.java    |   6 +-
 .../struct/xml/XmlResourceMapHeader.java      |   6 +-
 .../dongliu/apk/parser/struct/zip/EOCD.java   |   3 +
 .../net/dongliu/apk/parser/utils/Buffers.java |   5 +-
 .../net/dongliu/apk/parser/utils/Inputs.java  |   3 +
 .../net/dongliu/apk/parser/utils/Locales.java |   6 +-
 .../dongliu/apk/parser/utils/ParseUtils.java  |   9 +-
 .../apk/parser/utils/ResourceFetcher.java     |   4 +-
 .../apk/parser/utils/ResourceLoader.java      |  31 +-
 .../net/dongliu/apk/parser/utils/Strings.java |   4 +-
 .../dongliu/apk/parser/utils/Unsigned.java    |   3 +
 .../apk/parser/utils/package-info.java        |   4 -
 .../parser/utils/xml/AggregateTranslator.java |  20 +-
 .../utils/xml/CharSequenceTranslator.java     |  19 +-
 .../parser/utils/xml/CodePointTranslator.java |  19 +-
 .../apk/parser/utils/xml/EntityArrays.java    |  19 +-
 .../parser/utils/xml/LookupTranslator.java    |  19 +-
 .../utils/xml/NumericEntityEscaper.java       |  19 +-
 .../xml/UnicodeUnpairedSurrogateRemover.java  |  21 +-
 .../apk/parser/utils/xml/XmlEscaper.java      |   7 +-
 libopenpgp/build.gradle                       |  17 +-
 libopenpgp/src/main/AndroidManifest.xml       |  18 +-
 .../openintents/openpgp/IOpenPgpService.aidl  |  17 +-
 .../openintents/openpgp/IOpenPgpService2.aidl |  19 +-
 .../openpgp/AutocryptPeerUpdate.java          |  17 +-
 .../openpgp/OpenPgpDecryptionResult.java      |  17 +-
 .../org/openintents/openpgp/OpenPgpError.java |  17 +-
 .../openintents/openpgp/OpenPgpMetadata.java  |  17 +-
 .../openpgp/OpenPgpSignatureResult.java       |  18 +-
 .../openintents/openpgp/util/OpenPgpApi.java  |  18 +-
 .../util/OpenPgpServiceConnection.java        |  17 +-
 .../openpgp/util/OpenPgpUtils.java            |  19 +-
 .../util/ParcelFileDescriptorUtil.java        |  18 +-
 libserver/build.gradle                        |  17 +-
 libserver/src/main/AndroidManifest.xml        |  19 +-
 .../AppManager/server/common/IRootIPC.aidl    |  18 +-
 .../AppManager/server/common/Actions.java     |  18 +-
 .../AppManager/server/common/BaseCaller.java  |  18 +-
 .../AppManager/server/common/Caller.java      |  18 +-
 .../server/common/CallerResult.java           |  18 +-
 .../AppManager/server/common/ClassUtils.java  |  18 +-
 .../AppManager/server/common/ConfigParam.java |  17 +-
 .../AppManager/server/common/Constants.java   |  17 +-
 .../server/common/DataTransmission.java       |  18 +-
 .../AppManager/server/common/FLog.java        |  18 +-
 .../AppManager/server/common/ParamsFixer.java |  18 +-
 .../server/common/ParcelableUtil.java         |  18 +-
 .../server/common/ServerRunInfo.java          |  18 +-
 .../AppManager/server/common/ServerUtils.java |   2 +
 .../AppManager/server/common/Shell.java       |  18 +-
 .../AppManager/server/common/ShellCaller.java |  17 +-
 server/build.gradle                           |  17 +-
 server/src/main/AndroidManifest.xml           |  18 +-
 .../AppManager/server/BroadcastSender.java    |  18 +-
 .../AppManager/server/IPCMain.java            |  20 +-
 .../AppManager/server/LifecycleAgent.java     |  18 +-
 .../AppManager/server/Server.java             |  18 +-
 .../AppManager/server/ServerHandler.java      |  18 +-
 .../AppManager/server/ServerRunner.java       |  18 +-
 settings.gradle                               |   1 +
 733 files changed, 2018 insertions(+), 8667 deletions(-)
 create mode 100644 BUILDING.rst
 create mode 100644 CONTRIBUTING.rst
 create mode 100644 COPYING
 create mode 100644 LICENSES/Apache-2.0
 create mode 100644 LICENSES/BSD-2-Clause
 create mode 100644 LICENSES/BSD-3-Clause
 rename arts/LICENSE => LICENSES/CC-BY-SA-4.0 (96%)
 create mode 100644 LICENSES/GPL-2.0
 rename LICENSE => LICENSES/GPL-3.0 (98%)
 create mode 100644 LICENSES/ISC
 create mode 100644 LICENSES/MIT
 create mode 100644 LICENSES/WTFPL
 delete mode 100644 libapkparser/src/main/java/net/dongliu/apk/parser/parser/package-info.java
 delete mode 100644 libapkparser/src/main/java/net/dongliu/apk/parser/struct/package-info.java
 delete mode 100644 libapkparser/src/main/java/net/dongliu/apk/parser/utils/package-info.java

diff --git a/BUILDING.rst b/BUILDING.rst
new file mode 100644
index 000000000..2aacb8779
--- /dev/null
+++ b/BUILDING.rst
@@ -0,0 +1,91 @@
+.. SPDX-License-Identifier: GPL-3.0-or-later OR CC-BY-SA-4.0
+
+====================
+Building App Manager
+====================
+
+Requirements
+============
+
+* **Hardware:** Any computer with 4GB RAM (8GB recommended)
+* **Operating system:** Linux/macOS (no support for Windows)
+* **Software:** Android Studio, Gradle
+* **Active network connection:** Depending on your development environment,
+  this may cross 10 Gigabytes of data.
+
+macOS
+=====
+
+The following steps are required only if you want to build APKS:
+
+- Install Homebrew::
+
+    /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
+
+- Install bundletool::
+
+    brew install bundletool
+
+Linux|GNU
+=========
+
+- Install the development tools.
+
+  * For Debian/Ubuntu::
+
+      sudo apt-get install build-essential
+
+  * For Fedora/CentOS/RHEL::
+
+      sudo yum groupinstall "Development Tools"
+
+  * For Arch/Artix/Manjaro::
+
+      sudo pacman -S base-devel
+
+- Install `bundletool-all.jar`_ if you want to build APKS, and make sure it is
+  available as ``bundletool`` command.  A quick way would be to create a file
+  ``bundletool`` in ``/usr/local/bin`` directory with the following content::
+
+    #!/usr/bin/env bash
+    exec java -jar "/path/to/bundletool-all.jar" "$@"
+
+  Make sure to replace ``/path/to/bundletool-all.jar`` with the actual path for
+  **bundletool-all.jar**.  Also, make the file executable::
+
+    chmod +x /usr/local/bin/bundletool
+
+
+Clone and Build App Manager
+===========================
+
+1. Clone the repo along with submodules::
+
+     git clone --recurse-submodules https://github.com/MuntashirAkon/AppManager.git
+
+   You can use the `--depth 1` argument if you don't want to clone past
+   commits.
+2. Open the project **AppManager** using Android Studio/IntelliJ IDEA.  The IDE
+   should start syncing automatically.  It will also download all the necessary
+   dependencies automatically provided you have a working network connection.
+3. Build debug version of App Manager from *Menu* > *Build* > *Make Project*,
+   or, from the terminal::
+
+     ./gradlew packageDebugUniversalApk
+
+   The command will generate a universal APK instead of a bundled app.
+
+Create Bundled App
+==================
+
+In order to create a bundled app in APKS format, build Android App Bundle (AAB)
+first.  Then run the following command::
+
+./scripts/aab_to_apks.sh preRelease
+
+Replace ``prePelease`` with ``release`` or ``debug`` based on your
+requirements.  It will ask for KeyStore credentials interactively.
+
+The script above will also generate a universal APK.
+
+.. _bundletool-all.jar: https://github.com/google/bundletool
diff --git a/CONTRIBUTING.rst b/CONTRIBUTING.rst
new file mode 100644
index 000000000..9d4096e44
--- /dev/null
+++ b/CONTRIBUTING.rst
@@ -0,0 +1,62 @@
+.. SPDX-License-Identifier: GPL-3.0-or-later OR CC-BY-SA-4.0
+
+============
+Contributing
+============
+
+You are welcome contribute to App Manager! This doesn't mean that you need
+coding skills.  You can contribute to App Manager by creating helpful issues,
+attending discussions, improving documentations and translations, making icon
+for icon packs, adding unrecognised libraries or ad/tracking signatures,
+reviewing the source code, as well as reporting security vulnerabilities.
+
+Rules
+=====
+
+- If you are going to implement or work on any specific feature, please inform
+  us before doing so. Due to the complex nature of the project, integrating a
+  new feature could be challenging.
+- Your contributions are licensed under ``GPL-3.0-or-later`` by default.
+  Please see related `Linux documentations`_ to see how to add license headers
+  to a file, and remember the following:
+
+  * If the files your are contributing to do not have ``GPL-3.0-or-later``, add
+    it to the existing ``SPDX-License-Identifier`` using ``AND``, e.g.  ::
+
+        SPDX-License-Identifier: Apache-2.0 AND GPL-3.0-or-later
+
+  * If the entire file or Java class is copied from another person or project,
+    you have to add a copyright statement adding the person who wrote it first
+    like this::
+
+        // Copyright 2004 Linus Torvalds
+
+    You can also add other contributors but they are not mandatory.  You do not
+    need to include your name because it can already be available via the
+    version control system.
+  * Do not add the **@author** tag as it is considered a bad practice.
+
+- You have to sign-off your work.  You can do that using the ``--signoff``
+  argument.  If you are not using command line or a software that does not
+  support it, you can add the following line at the end of your commit
+  message::
+
+    Signed-off-by: My Name <my.name@example.com>
+
+  We also support most of the `commit message conventions`_ from Linux.
+
+  App Manager is a legal software and its contributions are protected by
+  copyright laws. Consider using real credentials i.e. real name and email as
+  we may be required to delete your valuable contributions in the event of
+  introducing new license or adding exceptions to the existing license.
+
+**Note:** Repositories located in sites other than GitHub are currently
+considered mirrors and any pull or merge requests submitted there will not be
+accepted.  Instead, you can submit patches (as ``.patch`` files) via email
+attachment.  My email address is muntashirakon [at] riseup [dot] net.  Beware
+that such emails may be publicly accessible in future.  GitHub pull requests
+will be merged manually using the corresponding patches.  As a result, GitHub
+may falsely mark them *closed* instead of *merged*.
+
+.. _Linux documentations: https://github.com/torvalds/linux/blob/master/Documentation/process/license-rules.rst
+.. _commit message conventions: https://git.wiki.kernel.org/index.php/CommitMessageConventions
\ No newline at end of file
diff --git a/COPYING b/COPYING
new file mode 100644
index 000000000..2b89428d0
--- /dev/null
+++ b/COPYING
@@ -0,0 +1,16 @@
+App Manager is provided under:
+
+	SPDX-License-Identifier: GPL-3.0-or-later
+
+Being under the terms of the GNU General Public License version 3 or
+later, according with:
+
+	LICENSES/GPL-3.0
+
+In addition, other licenses may also apply. Please navigate to:
+
+	LICENSES/
+
+to see all the licenses used in this project.
+
+All contributions to the App Manager are subject to this COPYING file.
\ No newline at end of file
diff --git a/LICENSES/Apache-2.0 b/LICENSES/Apache-2.0
new file mode 100644
index 000000000..325c59c97
--- /dev/null
+++ b/LICENSES/Apache-2.0
@@ -0,0 +1,186 @@
+Valid-License-Identifier: Apache-2.0
+SPDX-URL: https://spdx.org/licenses/Apache-2.0.html
+Usage-Guide:
+  To use the Apache License version 2.0 put the following SPDX tag/value
+  pair into a comment according to the placement guidelines in the
+  licensing rules documentation:
+    SPDX-License-Identifier: Apache-2.0
+  Do NOT use this license unless the files are copied from another work
+  under the same license. In such cases, use "AND GPL-3.0-or-later" so
+  that your contributions are under GPL-3.0+ license.
+License-Text:
+
+Apache License
+
+Version 2.0, January 2004
+
+http://www.apache.org/licenses/
+
+TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
+
+1. Definitions.
+
+"License" shall mean the terms and conditions for use, reproduction, and
+distribution as defined by Sections 1 through 9 of this document.
+
+"Licensor" shall mean the copyright owner or entity authorized by the
+copyright owner that is granting the License.
+
+"Legal Entity" shall mean the union of the acting entity and all other
+entities that control, are controlled by, or are under common control with
+that entity. For the purposes of this definition, "control" means (i) the
+power, direct or indirect, to cause the direction or management of such
+entity, whether by contract or otherwise, or (ii) ownership of fifty
+percent (50%) or more of the outstanding shares, or (iii) beneficial
+ownership of such entity.
+
+"You" (or "Your") shall mean an individual or Legal Entity exercising
+permissions granted by this License.
+
+"Source" form shall mean the preferred form for making modifications,
+including but not limited to software source code, documentation source,
+and configuration files.
+
+"Object" form shall mean any form resulting from mechanical transformation
+or translation of a Source form, including but not limited to compiled
+object code, generated documentation, and conversions to other media types.
+
+"Work" shall mean the work of authorship, whether in Source or Object form,
+made available under the License, as indicated by a copyright notice that
+is included in or attached to the work (an example is provided in the
+Appendix below).
+
+"Derivative Works" shall mean any work, whether in Source or Object form,
+that is based on (or derived from) the Work and for which the editorial
+revisions, annotations, elaborations, or other modifications represent, as
+a whole, an original work of authorship. For the purposes of this License,
+Derivative Works shall not include works that remain separable from, or
+merely link (or bind by name) to the interfaces of, the Work and Derivative
+Works thereof.
+
+"Contribution" shall mean any work of authorship, including the original
+version of the Work and any modifications or additions to that Work or
+Derivative Works thereof, that is intentionally submitted to Licensor for
+inclusion in the Work by the copyright owner or by an individual or Legal
+Entity authorized to submit on behalf of the copyright owner. For the
+purposes of this definition, "submitted" means any form of electronic,
+verbal, or written communication sent to the Licensor or its
+representatives, including but not limited to communication on electronic
+mailing lists, source code control systems, and issue tracking systems that
+are managed by, or on behalf of, the Licensor for the purpose of discussing
+and improving the Work, but excluding communication that is conspicuously
+marked or otherwise designated in writing by the copyright owner as "Not a
+Contribution."
+
+"Contributor" shall mean Licensor and any individual or Legal Entity on
+behalf of whom a Contribution has been received by Licensor and
+subsequently incorporated within the Work.
+
+2. Grant of Copyright License. Subject to the terms and conditions of this
+   License, each Contributor hereby grants to You a perpetual, worldwide,
+   non-exclusive, no-charge, royalty-free, irrevocable copyright license to
+   reproduce, prepare Derivative Works of, publicly display, publicly
+   perform, sublicense, and distribute the Work and such Derivative Works
+   in Source or Object form.
+
+3. Grant of Patent License. Subject to the terms and conditions of this
+   License, each Contributor hereby grants to You a perpetual, worldwide,
+   non-exclusive, no-charge, royalty-free, irrevocable (except as stated in
+   this section) patent license to make, have made, use, offer to sell,
+   sell, import, and otherwise transfer the Work, where such license
+   applies only to those patent claims licensable by such Contributor that
+   are necessarily infringed by their Contribution(s) alone or by
+   combination of their Contribution(s) with the Work to which such
+   Contribution(s) was submitted. If You institute patent litigation
+   against any entity (including a cross-claim or counterclaim in a
+   lawsuit) alleging that the Work or a Contribution incorporated within
+   the Work constitutes direct or contributory patent infringement, then
+   any patent licenses granted to You under this License for that Work
+   shall terminate as of the date such litigation is filed.
+
+4. Redistribution. You may reproduce and distribute copies of the Work or
+   Derivative Works thereof in any medium, with or without modifications,
+   and in Source or Object form, provided that You meet the following
+   conditions:
+
+   a. You must give any other recipients of the Work or Derivative Works a
+      copy of this License; and
+
+   b. You must cause any modified files to carry prominent notices stating
+      that You changed the files; and
+
+   c. You must retain, in the Source form of any Derivative Works that You
+      distribute, all copyright, patent, trademark, and attribution notices
+      from the Source form of the Work, excluding those notices that do not
+      pertain to any part of the Derivative Works; and
+
+   d. If the Work includes a "NOTICE" text file as part of its
+      distribution, then any Derivative Works that You distribute must
+      include a readable copy of the attribution notices contained within
+      such NOTICE file, excluding those notices that do not pertain to any
+      part of the Derivative Works, in at least one of the following
+      places: within a NOTICE text file distributed as part of the
+      Derivative Works; within the Source form or documentation, if
+      provided along with the Derivative Works; or, within a display
+      generated by the Derivative Works, if and wherever such third-party
+      notices normally appear. The contents of the NOTICE file are for
+      informational purposes only and do not modify the License. You may
+      add Your own attribution notices within Derivative Works that You
+      distribute, alongside or as an addendum to the NOTICE text from the
+      Work, provided that such additional attribution notices cannot be
+      construed as modifying the License.
+
+    You may add Your own copyright statement to Your modifications and may
+    provide additional or different license terms and conditions for use,
+    reproduction, or distribution of Your modifications, or for any such
+    Derivative Works as a whole, provided Your use, reproduction, and
+    distribution of the Work otherwise complies with the conditions stated
+    in this License.
+
+5. Submission of Contributions. Unless You explicitly state otherwise, any
+   Contribution intentionally submitted for inclusion in the Work by You to
+   the Licensor shall be under the terms and conditions of this License,
+   without any additional terms or conditions. Notwithstanding the above,
+   nothing herein shall supersede or modify the terms of any separate
+   license agreement you may have executed with Licensor regarding such
+   Contributions.
+
+6. Trademarks. This License does not grant permission to use the trade
+   names, trademarks, service marks, or product names of the Licensor,
+   except as required for reasonable and customary use in describing the
+   origin of the Work and reproducing the content of the NOTICE file.
+
+7. Disclaimer of Warranty. Unless required by applicable law or agreed to
+   in writing, Licensor provides the Work (and each Contributor provides
+   its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS
+   OF ANY KIND, either express or implied, including, without limitation,
+   any warranties or conditions of TITLE, NON-INFRINGEMENT,
+   MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely
+   responsible for determining the appropriateness of using or
+   redistributing the Work and assume any risks associated with Your
+   exercise of permissions under this License.
+
+8. Limitation of Liability. In no event and under no legal theory, whether
+   in tort (including negligence), contract, or otherwise, unless required
+   by applicable law (such as deliberate and grossly negligent acts) or
+   agreed to in writing, shall any Contributor be liable to You for
+   damages, including any direct, indirect, special, incidental, or
+   consequential damages of any character arising as a result of this
+   License or out of the use or inability to use the Work (including but
+   not limited to damages for loss of goodwill, work stoppage, computer
+   failure or malfunction, or any and all other commercial damages or
+   losses), even if such Contributor has been advised of the possibility of
+   such damages.
+
+9. Accepting Warranty or Additional Liability. While redistributing the
+   Work or Derivative Works thereof, You may choose to offer, and charge a
+   fee for, acceptance of support, warranty, indemnity, or other liability
+   obligations and/or rights consistent with this License. However, in
+   accepting such obligations, You may act only on Your own behalf and on
+   Your sole responsibility, not on behalf of any other Contributor, and
+   only if You agree to indemnify, defend, and hold each Contributor
+   harmless for any liability incurred by, or claims asserted against, such
+   Contributor by reason of your accepting any such warranty or additional
+   liability.
+
+END OF TERMS AND CONDITIONS
\ No newline at end of file
diff --git a/LICENSES/BSD-2-Clause b/LICENSES/BSD-2-Clause
new file mode 100644
index 000000000..dc5dde0bc
--- /dev/null
+++ b/LICENSES/BSD-2-Clause
@@ -0,0 +1,35 @@
+Valid-License-Identifier: BSD-2-Clause
+SPDX-URL: https://spdx.org/licenses/BSD-2-Clause.html
+Usage-Guide:
+  To use the BSD 2-clause "Simplified" License put the following SPDX
+  tag/value pair into a comment according to the placement guidelines in
+  the licensing rules documentation:
+    SPDX-License-Identifier: BSD-2-Clause
+  Do NOT use this license unless the files are copied from another work
+  under the same license. In such cases, use "AND GPL-3.0-or-later" so
+  that your contributions are under GPL-3.0+ license.
+License-Text:
+
+Copyright (c) <year> <owner> . All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are met:
+
+1. Redistributions of source code must retain the above copyright notice,
+   this list of conditions and the following disclaimer.
+
+2. Redistributions in binary form must reproduce the above copyright
+   notice, this list of conditions and the following disclaimer in the
+   documentation and/or other materials provided with the distribution.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
+LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+POSSIBILITY OF SUCH DAMAGE.
\ No newline at end of file
diff --git a/LICENSES/BSD-3-Clause b/LICENSES/BSD-3-Clause
new file mode 100644
index 000000000..3789c3e4a
--- /dev/null
+++ b/LICENSES/BSD-3-Clause
@@ -0,0 +1,36 @@
+Valid-License-Identifier: BSD-3-Clause
+SPDX-URL: https://spdx.org/licenses/BSD-3-Clause.html
+Usage-Guide:
+  To use the BSD 3-clause "New" or "Revised" License put the following SPDX
+  tag/value pair into a comment according to the placement guidelines in
+  the licensing rules documentation:
+    SPDX-License-Identifier: BSD-3-Clause
+License-Text:
+
+Copyright (c) <year> <owner> . All rights reserved.
+
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are met:
+
+1. Redistributions of source code must retain the above copyright notice,
+   this list of conditions and the following disclaimer.
+
+2. Redistributions in binary form must reproduce the above copyright
+   notice, this list of conditions and the following disclaimer in the
+   documentation and/or other materials provided with the distribution.
+
+3. Neither the name of the copyright holder nor the names of its
+   contributors may be used to endorse or promote products derived from this
+   software without specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
+AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
+IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
+ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
+LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+POSSIBILITY OF SUCH DAMAGE.
\ No newline at end of file
diff --git a/arts/LICENSE b/LICENSES/CC-BY-SA-4.0
similarity index 96%
rename from arts/LICENSE
rename to LICENSES/CC-BY-SA-4.0
index 3b7b82d0d..a2a29bbeb 100644
--- a/arts/LICENSE
+++ b/LICENSES/CC-BY-SA-4.0
@@ -1,4 +1,16 @@
-Attribution-ShareAlike 4.0 International
+Valid-License-Identifier: CC-BY-SA-4.0
+SPDX-URL: https://spdx.org/licenses/CC-BY-SA-4.0
+Usage-Guide:
+  Do NOT use this license for code, but it's acceptable for content like artwork
+  or documentation. When using it for the latter, it's best to use it together
+  GPL-3.0-or-later license using "OR".
+  To use the Creative Commons Attribution-ShareAlike 4.0 International license
+  put the following SPDX tag/value pair into a comment according to the
+  placement guidelines in the licensing rules documentation:
+    SPDX-License-Identifier: CC-BY-SA-4.0
+License-Text:
+
+Creative Commons Attribution-ShareAlike 4.0 International
 
 =======================================================================
 
diff --git a/LICENSES/GPL-2.0 b/LICENSES/GPL-2.0
new file mode 100644
index 000000000..31d9e0bde
--- /dev/null
+++ b/LICENSES/GPL-2.0
@@ -0,0 +1,353 @@
+Valid-License-Identifier: GPL-2.0+
+Valid-License-Identifier: GPL-2.0-or-later
+SPDX-URL: https://spdx.org/licenses/GPL-2.0-or-later.html
+Usage-Guide:
+  To use this license in source code, put one of the following SPDX
+  tag/value pairs into a comment according to the placement
+  guidelines in the licensing rules documentation.
+  For 'GNU General Public License (GPL) version 2 or any later version' use:
+    SPDX-License-Identifier: GPL-2.0+
+  or
+    SPDX-License-Identifier: GPL-2.0-or-later
+License-Text:
+
+		    GNU GENERAL PUBLIC LICENSE
+		       Version 2, June 1991
+
+ Copyright (C) 1989, 1991 Free Software Foundation, Inc.
+                       51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
+ Everyone is permitted to copy and distribute verbatim copies
+ of this license document, but changing it is not allowed.
+
+			    Preamble
+
+  The licenses for most software are designed to take away your
+freedom to share and change it.  By contrast, the GNU General Public
+License is intended to guarantee your freedom to share and change free
+software--to make sure the software is free for all its users.  This
+General Public License applies to most of the Free Software
+Foundation's software and to any other program whose authors commit to
+using it.  (Some other Free Software Foundation software is covered by
+the GNU Library General Public License instead.)  You can apply it to
+your programs, too.
+
+  When we speak of free software, we are referring to freedom, not
+price.  Our General Public Licenses are designed to make sure that you
+have the freedom to distribute copies of free software (and charge for
+this service if you wish), that you receive source code or can get it
+if you want it, that you can change the software or use pieces of it
+in new free programs; and that you know you can do these things.
+
+  To protect your rights, we need to make restrictions that forbid
+anyone to deny you these rights or to ask you to surrender the rights.
+These restrictions translate to certain responsibilities for you if you
+distribute copies of the software, or if you modify it.
+
+  For example, if you distribute copies of such a program, whether
+gratis or for a fee, you must give the recipients all the rights that
+you have.  You must make sure that they, too, receive or can get the
+source code.  And you must show them these terms so they know their
+rights.
+
+  We protect your rights with two steps: (1) copyright the software, and
+(2) offer you this license which gives you legal permission to copy,
+distribute and/or modify the software.
+
+  Also, for each author's protection and ours, we want to make certain
+that everyone understands that there is no warranty for this free
+software.  If the software is modified by someone else and passed on, we
+want its recipients to know that what they have is not the original, so
+that any problems introduced by others will not reflect on the original
+authors' reputations.
+
+  Finally, any free program is threatened constantly by software
+patents.  We wish to avoid the danger that redistributors of a free
+program will individually obtain patent licenses, in effect making the
+program proprietary.  To prevent this, we have made it clear that any
+patent must be licensed for everyone's free use or not licensed at all.
+
+  The precise terms and conditions for copying, distribution and
+modification follow.
+
+		    GNU GENERAL PUBLIC LICENSE
+   TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
+
+  0. This License applies to any program or other work which contains
+a notice placed by the copyright holder saying it may be distributed
+under the terms of this General Public License.  The "Program", below,
+refers to any such program or work, and a "work based on the Program"
+means either the Program or any derivative work under copyright law:
+that is to say, a work containing the Program or a portion of it,
+either verbatim or with modifications and/or translated into another
+language.  (Hereinafter, translation is included without limitation in
+the term "modification".)  Each licensee is addressed as "you".
+
+Activities other than copying, distribution and modification are not
+covered by this License; they are outside its scope.  The act of
+running the Program is not restricted, and the output from the Program
+is covered only if its contents constitute a work based on the
+Program (independent of having been made by running the Program).
+Whether that is true depends on what the Program does.
+
+  1. You may copy and distribute verbatim copies of the Program's
+source code as you receive it, in any medium, provided that you
+conspicuously and appropriately publish on each copy an appropriate
+copyright notice and disclaimer of warranty; keep intact all the
+notices that refer to this License and to the absence of any warranty;
+and give any other recipients of the Program a copy of this License
+along with the Program.
+
+You may charge a fee for the physical act of transferring a copy, and
+you may at your option offer warranty protection in exchange for a fee.
+
+  2. You may modify your copy or copies of the Program or any portion
+of it, thus forming a work based on the Program, and copy and
+distribute such modifications or work under the terms of Section 1
+above, provided that you also meet all of these conditions:
+
+    a) You must cause the modified files to carry prominent notices
+    stating that you changed the files and the date of any change.
+
+    b) You must cause any work that you distribute or publish, that in
+    whole or in part contains or is derived from the Program or any
+    part thereof, to be licensed as a whole at no charge to all third
+    parties under the terms of this License.
+
+    c) If the modified program normally reads commands interactively
+    when run, you must cause it, when started running for such
+    interactive use in the most ordinary way, to print or display an
+    announcement including an appropriate copyright notice and a
+    notice that there is no warranty (or else, saying that you provide
+    a warranty) and that users may redistribute the program under
+    these conditions, and telling the user how to view a copy of this
+    License.  (Exception: if the Program itself is interactive but
+    does not normally print such an announcement, your work based on
+    the Program is not required to print an announcement.)
+
+These requirements apply to the modified work as a whole.  If
+identifiable sections of that work are not derived from the Program,
+and can be reasonably considered independent and separate works in
+themselves, then this License, and its terms, do not apply to those
+sections when you distribute them as separate works.  But when you
+distribute the same sections as part of a whole which is a work based
+on the Program, the distribution of the whole must be on the terms of
+this License, whose permissions for other licensees extend to the
+entire whole, and thus to each and every part regardless of who wrote it.
+
+Thus, it is not the intent of this section to claim rights or contest
+your rights to work written entirely by you; rather, the intent is to
+exercise the right to control the distribution of derivative or
+collective works based on the Program.
+
+In addition, mere aggregation of another work not based on the Program
+with the Program (or with a work based on the Program) on a volume of
+a storage or distribution medium does not bring the other work under
+the scope of this License.
+
+  3. You may copy and distribute the Program (or a work based on it,
+under Section 2) in object code or executable form under the terms of
+Sections 1 and 2 above provided that you also do one of the following:
+
+    a) Accompany it with the complete corresponding machine-readable
+    source code, which must be distributed under the terms of Sections
+    1 and 2 above on a medium customarily used for software interchange; or,
+
+    b) Accompany it with a written offer, valid for at least three
+    years, to give any third party, for a charge no more than your
+    cost of physically performing source distribution, a complete
+    machine-readable copy of the corresponding source code, to be
+    distributed under the terms of Sections 1 and 2 above on a medium
+    customarily used for software interchange; or,
+
+    c) Accompany it with the information you received as to the offer
+    to distribute corresponding source code.  (This alternative is
+    allowed only for noncommercial distribution and only if you
+    received the program in object code or executable form with such
+    an offer, in accord with Subsection b above.)
+
+The source code for a work means the preferred form of the work for
+making modifications to it.  For an executable work, complete source
+code means all the source code for all modules it contains, plus any
+associated interface definition files, plus the scripts used to
+control compilation and installation of the executable.  However, as a
+special exception, the source code distributed need not include
+anything that is normally distributed (in either source or binary
+form) with the major components (compiler, kernel, and so on) of the
+operating system on which the executable runs, unless that component
+itself accompanies the executable.
+
+If distribution of executable or object code is made by offering
+access to copy from a designated place, then offering equivalent
+access to copy the source code from the same place counts as
+distribution of the source code, even though third parties are not
+compelled to copy the source along with the object code.
+
+  4. You may not copy, modify, sublicense, or distribute the Program
+except as expressly provided under this License.  Any attempt
+otherwise to copy, modify, sublicense or distribute the Program is
+void, and will automatically terminate your rights under this License.
+However, parties who have received copies, or rights, from you under
+this License will not have their licenses terminated so long as such
+parties remain in full compliance.
+
+  5. You are not required to accept this License, since you have not
+signed it.  However, nothing else grants you permission to modify or
+distribute the Program or its derivative works.  These actions are
+prohibited by law if you do not accept this License.  Therefore, by
+modifying or distributing the Program (or any work based on the
+Program), you indicate your acceptance of this License to do so, and
+all its terms and conditions for copying, distributing or modifying
+the Program or works based on it.
+
+  6. Each time you redistribute the Program (or any work based on the
+Program), the recipient automatically receives a license from the
+original licensor to copy, distribute or modify the Program subject to
+these terms and conditions.  You may not impose any further
+restrictions on the recipients' exercise of the rights granted herein.
+You are not responsible for enforcing compliance by third parties to
+this License.
+
+  7. If, as a consequence of a court judgment or allegation of patent
+infringement or for any other reason (not limited to patent issues),
+conditions are imposed on you (whether by court order, agreement or
+otherwise) that contradict the conditions of this License, they do not
+excuse you from the conditions of this License.  If you cannot
+distribute so as to satisfy simultaneously your obligations under this
+License and any other pertinent obligations, then as a consequence you
+may not distribute the Program at all.  For example, if a patent
+license would not permit royalty-free redistribution of the Program by
+all those who receive copies directly or indirectly through you, then
+the only way you could satisfy both it and this License would be to
+refrain entirely from distribution of the Program.
+
+If any portion of this section is held invalid or unenforceable under
+any particular circumstance, the balance of the section is intended to
+apply and the section as a whole is intended to apply in other
+circumstances.
+
+It is not the purpose of this section to induce you to infringe any
+patents or other property right claims or to contest validity of any
+such claims; this section has the sole purpose of protecting the
+integrity of the free software distribution system, which is
+implemented by public license practices.  Many people have made
+generous contributions to the wide range of software distributed
+through that system in reliance on consistent application of that
+system; it is up to the author/donor to decide if he or she is willing
+to distribute software through any other system and a licensee cannot
+impose that choice.
+
+This section is intended to make thoroughly clear what is believed to
+be a consequence of the rest of this License.
+
+  8. If the distribution and/or use of the Program is restricted in
+certain countries either by patents or by copyrighted interfaces, the
+original copyright holder who places the Program under this License
+may add an explicit geographical distribution limitation excluding
+those countries, so that distribution is permitted only in or among
+countries not thus excluded.  In such case, this License incorporates
+the limitation as if written in the body of this License.
+
+  9. The Free Software Foundation may publish revised and/or new versions
+of the General Public License from time to time.  Such new versions will
+be similar in spirit to the present version, but may differ in detail to
+address new problems or concerns.
+
+Each version is given a distinguishing version number.  If the Program
+specifies a version number of this License which applies to it and "any
+later version", you have the option of following the terms and conditions
+either of that version or of any later version published by the Free
+Software Foundation.  If the Program does not specify a version number of
+this License, you may choose any version ever published by the Free Software
+Foundation.
+
+  10. If you wish to incorporate parts of the Program into other free
+programs whose distribution conditions are different, write to the author
+to ask for permission.  For software which is copyrighted by the Free
+Software Foundation, write to the Free Software Foundation; we sometimes
+make exceptions for this.  Our decision will be guided by the two goals
+of preserving the free status of all derivatives of our free software and
+of promoting the sharing and reuse of software generally.
+
+			    NO WARRANTY
+
+  11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
+FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW.  EXCEPT WHEN
+OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
+PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
+OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.  THE ENTIRE RISK AS
+TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU.  SHOULD THE
+PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
+REPAIR OR CORRECTION.
+
+  12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
+WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
+REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
+INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
+OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
+TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
+YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
+PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
+POSSIBILITY OF SUCH DAMAGES.
+
+		     END OF TERMS AND CONDITIONS
+
+	    How to Apply These Terms to Your New Programs
+
+  If you develop a new program, and you want it to be of the greatest
+possible use to the public, the best way to achieve this is to make it
+free software which everyone can redistribute and change under these terms.
+
+  To do so, attach the following notices to the program.  It is safest
+to attach them to the start of each source file to most effectively
+convey the exclusion of warranty; and each file should have at least
+the "copyright" line and a pointer to where the full notice is found.
+
+    <one line to give the program's name and a brief idea of what it does.>
+    Copyright (C) <year>  <name of author>
+
+    This program is free software; you can redistribute it and/or modify
+    it under the terms of the GNU General Public License as published by
+    the Free Software Foundation; either version 2 of the License, or
+    (at your option) any later version.
+
+    This program is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+    GNU General Public License for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with this program; if not, write to the Free Software
+    Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
+
+
+Also add information on how to contact you by electronic and paper mail.
+
+If the program is interactive, make it output a short notice like this
+when it starts in an interactive mode:
+
+    Gnomovision version 69, Copyright (C) year name of author
+    Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
+    This is free software, and you are welcome to redistribute it
+    under certain conditions; type `show c' for details.
+
+The hypothetical commands `show w' and `show c' should show the appropriate
+parts of the General Public License.  Of course, the commands you use may
+be called something other than `show w' and `show c'; they could even be
+mouse-clicks or menu items--whatever suits your program.
+
+You should also get your employer (if you work as a programmer) or your
+school, if any, to sign a "copyright disclaimer" for the program, if
+necessary.  Here is a sample; alter the names:
+
+  Yoyodyne, Inc., hereby disclaims all copyright interest in the program
+  `Gnomovision' (which makes passes at compilers) written by James Hacker.
+
+  <signature of Ty Coon>, 1 April 1989
+  Ty Coon, President of Vice
+
+This General Public License does not permit incorporating your program into
+proprietary programs.  If your program is a subroutine library, you may
+consider it more useful to permit linking proprietary applications with the
+library.  If this is what you want to do, use the GNU Library General
+Public License instead of this License.
\ No newline at end of file
diff --git a/LICENSE b/LICENSES/GPL-3.0
similarity index 98%
rename from LICENSE
rename to LICENSES/GPL-3.0
index f288702d2..b7b2bd95e 100644
--- a/LICENSE
+++ b/LICENSES/GPL-3.0
@@ -1,3 +1,16 @@
+Valid-License-Identifier: GPL-3.0+
+Valid-License-Identifier: GPL-3.0-or-later
+SPDX-URL: https://spdx.org/licenses/GPL-3.0-or-later.html
+Usage-Guide:
+  To use this license in source code, put one of the following SPDX
+  tag/value pairs into a comment according to the placement
+  guidelines in the licensing rules documentation.
+  For 'GNU General Public License (GPL) version 3 or any later version' use:
+    SPDX-License-Identifier: GPL-3.0+
+  or
+    SPDX-License-Identifier: GPL-3.0-or-later
+License-Text:
+
                     GNU GENERAL PUBLIC LICENSE
                        Version 3, 29 June 2007
 
@@ -671,4 +684,4 @@ into proprietary programs.  If your program is a subroutine library, you
 may consider it more useful to permit linking proprietary applications with
 the library.  If this is what you want to do, use the GNU Lesser General
 Public License instead of this License.  But first, please read
-<https://www.gnu.org/licenses/why-not-lgpl.html>.
+<https://www.gnu.org/licenses/why-not-lgpl.html>.
\ No newline at end of file
diff --git a/LICENSES/ISC b/LICENSES/ISC
new file mode 100644
index 000000000..8d2a990cd
--- /dev/null
+++ b/LICENSES/ISC
@@ -0,0 +1,27 @@
+Valid-License-Identifier: ISC
+SPDX-URL: https://spdx.org/licenses/ISC.html
+Usage-Guide:
+  To use the ISC License put the following SPDX tag/value pair into a
+  comment according to the placement guidelines in the licensing rules
+  documentation:
+    SPDX-License-Identifier: ISC
+  Do NOT use this license unless the files are copied from another work
+  under the same license. In such cases, use "AND GPL-3.0-or-later" so
+  that your contributions are under GPL-3.0+ license.
+License-Text:
+
+ISC License
+
+Copyright (c) <year> <copyright holders>
+
+Permission to use, copy, modify, and/or distribute this software for any
+purpose with or without fee is hereby granted, provided that the above
+copyright notice and this permission notice appear in all copies.
+
+THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
+WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
+MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY
+SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
+WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION
+OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN
+CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
\ No newline at end of file
diff --git a/LICENSES/MIT b/LICENSES/MIT
new file mode 100644
index 000000000..2827cab61
--- /dev/null
+++ b/LICENSES/MIT
@@ -0,0 +1,33 @@
+Valid-License-Identifier: MIT
+SPDX-URL: https://spdx.org/licenses/MIT.html
+Usage-Guide:
+  To use the MIT License put the following SPDX tag/value pair into a
+  comment according to the placement guidelines in the licensing rules
+  documentation:
+    SPDX-License-Identifier: MIT
+  Do NOT use this license unless the files are copied from another work
+  under the same license. In such cases, use "AND GPL-3.0-or-later" so
+  that your contributions are under GPL-3.0+ license.
+License-Text:
+
+MIT License
+
+Copyright (c) <year> <copyright holders>
+
+Permission is hereby granted, free of charge, to any person obtaining a
+copy of this software and associated documentation files (the "Software"),
+to deal in the Software without restriction, including without limitation
+the rights to use, copy, modify, merge, publish, distribute, sublicense,
+and/or sell copies of the Software, and to permit persons to whom the
+Software is furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in
+all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+DEALINGS IN THE SOFTWARE.
\ No newline at end of file
diff --git a/LICENSES/WTFPL b/LICENSES/WTFPL
new file mode 100644
index 000000000..ed641ca63
--- /dev/null
+++ b/LICENSES/WTFPL
@@ -0,0 +1,25 @@
+Valid-License-Identifier: WTFPL
+SPDX-URL: https://spdx.org/licenses/WTFPL.html
+Usage-Guide:
+  To use the WTFPL put the following SPDX tag/value pair into a
+  comment according to the placement guidelines in the licensing rules
+  documentation:
+    SPDX-License-Identifier: WTFPL
+  Do NOT use this license unless the files are copied from another work
+  under the same license. In such cases, use "AND GPL-3.0-or-later" so
+  that your contributions are under GPL-3.0+ license.
+License-Text:
+
+            DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE
+                    Version 2, December 2004
+
+ Copyright (C) 2004 Sam Hocevar <sam@hocevar.net>
+
+ Everyone is permitted to copy and distribute verbatim or modified
+ copies of this license document, and changing it is allowed as long
+ as the name is changed.
+
+            DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE
+   TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
+
+  0. You just DO WHAT THE FUCK YOU WANT TO.
diff --git a/README.md b/README.md
index 6b9ab332d..5caaa41a5 100644
--- a/README.md
+++ b/README.md
@@ -1,3 +1,5 @@
+<!-- SPDX-License-Identifier: GPL-3.0-or-later OR CC-BY-SA-4.0 -->
+
 <p align="center">
   <img src="docs/raw/images/icon.png" alt="App Manager Logo" height="150">
 </p>
@@ -97,74 +99,10 @@ Help translate [the app strings](https://hosted.weblate.org/engage/app-manager/)
 <img src="fastlane/metadata/android/en-US/images/phoneScreenshots/1.png" height="500dp" /><img src="fastlane/metadata/android/en-US/images/phoneScreenshots/3.png" height="500dp" /><img src="fastlane/metadata/android/en-US/images/phoneScreenshots/5.png" height="500dp" /><img src="fastlane/metadata/android/en-US/images/phoneScreenshots/13.png" height="500dp" /><img src="fastlane/metadata/android/en-US/images/phoneScreenshots/7.png" height="500dp" /><img src="fastlane/metadata/android/en-US/images/phoneScreenshots/9.png" height="500dp" />
 
 ## Build Instructions
-* **System Requirements:** Any computer with 4GB RAM (8GB recommended)
-* **Operating System:** Linux/macOS (no support for Windows)
-* **Software:** Android Studio, Gradle
-* Active internet connection
-
-### macOS
-The following steps are required only if you want to build APKS:
-- Install Homebrew:
-  ```bash
-  /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
-  ```
-- Install `bundletool`
-  ```bash
-  brew install bundletool
-  ```
-
-### Linux|GNU
-- Install the development tools.
-  For Debian/Ubuntu:
-  ```bash
-  sudo apt-get install build-essential
-  ```
-  For Fedora/CentOS/RHEL:
-  ```bash
-  sudo yum groupinstall "Development Tools"
-  ```
-  For Arch/Artix/Manjaro:
-  ```bash
-  sudo pacman -S base-devel
-  ```
-- Install [**bundletool-all.jar**](https://github.com/google/bundletool) if you want to build APKS, and make sure it is available as `bundletool` command. A quick way would be to create a file `bundletool` in `/usr/local/bin` directory with the following content:
-  ```bash
-  #!/usr/bin/env bash
-  exec java -jar "/path/to/bundletool-all.jar" "$@"
-  ```
-  Make sure to replace `/path/to/bundletool-all.jar` with the actual path for **bundletool-all.jar**. Also, make the file executable:
-  ```bash
-  chmod +x /usr/local/bin/bundletool
-  ```
-
-### Clone and Build App Manager
-1. Clone the repo along with submodules:
-    ```bash
-    git clone --recurse-submodules https://github.com/MuntashirAkon/AppManager.git
-    ```
-   You can use the `--depth 1` argument if you don't want to clone past commits.
-2. Open the project **AppManager** using Android Studio/IntelliJ IDEA. The IDE should start syncing automatically. It will also download all the necessary dependencies automatically provided you have the Internet connection.
-3. Build debug version of App Manager from _Menu_ > _Build_ > _Make Project_, or, from the terminal:
-    ```
-    ./gradlew packageDebugUniversalApk
-    ```
-   The command will generate a universal APK instead of a bundled app.
-
-### Create Bundled App
-In order to create a bundled app in APKS format, build Android App Bundle (AAB) first. Then run the following command:
-```bash
-./scripts/aab_to_apks.sh preRelease
-```
-Replace `prePelease` with `release` or `debug` based on your requirements. It will ask for keystore credentials interactively.
-
-The script above will also generate a universal APK.
+See [BUILDING.rst](BUILDING.rst)
 
 ## Contributing
-You are welcome contribute to App Manager! This doesn't mean that you need coding skills. You can help App Manager by creating helpful issues, attending discussions, improving documentations and translations, making icon for icon packs, adding unrecognised libraries or ad/tracking signatures, reviewing the source code, as well as reporting security vulnerabilities. If you are going to contribute to AM with your coding skills, please read the following:
-- If you're going to implement or work on any specific feature, please inform me before doing so. Due to the complex nature of the project, integrating a new feature could be challenging.
-- You're absolutely welcome to fix issues or mistakes, but App Manager's code base changes a lot almost every day. Therefore, if you are requested to make changes in your pull request but can't address them within 2 (two) days, your pull request may be closed depending on the importance of the request. This instruction will be removed once the code base is stable.
-
-**Note:** Repositories located in sites other than GitHub are currently considered mirrors and PR/MR submitted there will not be accepted. Instead, you can submit patches (as `.patch` files) via email attachment. My email address is muntashirakon [at] riseup [dot] net. Beware that such emails may be publicly accessible in future. GitHub PRs will be merged manually using the corresponding patches. As a result, GitHub may falsely mark them _closed_ instead of _merged_. Make sure to sign-off your commits.
+See [CONTRIBUTING.rst](CONTRIBUTING.rst)
 
 ## Donation and Funding
 **App Manager doesn't support any donations directly.** However, if you like my projects (App Manager being one of them), you can buy me a coffee by sending an anonymous donation to one of the following **Bitcoin** addresses:
@@ -175,6 +113,8 @@ You are welcome contribute to App Manager! This doesn't mean that you need codin
 ```
 By sending me BTC, you agree that you will not share the transaction info in public i.e. the transaction will remain anonymous, nor will you use it as a leverage to prioritise your requested features. I accept feature requests without any donations, and they are prioritised according to my preferences.
 
+You can also donate me using Open Collective: https://opencollective.com/muntashir
+
 **App Manager is open for funding/grants.** If you are an organisation interested in funding it you can contact me directly at muntashirakon [at] riseup [dot] net (FINGERPRINT: `7bad37c2981e41f8f6abea7f58f0b4f26c346fce`).
 
 ## Credits and Libraries
diff --git a/app/build.gradle b/app/build.gradle
index a2d1f1262..d60369010 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: Apache-2.0 AND GPL-3.0-or-later
 
 apply plugin: 'com.android.application'
 
diff --git a/app/src/debug/res/xml/shortcuts.xml b/app/src/debug/res/xml/shortcuts.xml
index 2fe3b6d88..710887785 100644
--- a/app/src/debug/res/xml/shortcuts.xml
+++ b/app/src/debug/res/xml/shortcuts.xml
@@ -1,4 +1,5 @@
-<?xml version="1.0" encoding="utf-8"?>
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
+<!-- Copyright 2012 Nolan Lawson -->
 <shortcuts xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:tools="http://schemas.android.com/tools"
     tools:targetApi="n_mr1">
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index d7405670e..975bb3cad 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -1,21 +1,4 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: Apache-2.0 AND GPL-3.0-or-later -->
 <manifest xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:tools="http://schemas.android.com/tools"
     package="io.github.muntashirakon.AppManager"
diff --git a/app/src/main/aidl/io/github/muntashirakon/AppManager/IAMService.aidl b/app/src/main/aidl/io/github/muntashirakon/AppManager/IAMService.aidl
index a646af928..2059f8f66 100644
--- a/app/src/main/aidl/io/github/muntashirakon/AppManager/IAMService.aidl
+++ b/app/src/main/aidl/io/github/muntashirakon/AppManager/IAMService.aidl
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager;
 
diff --git a/app/src/main/aidl/io/github/muntashirakon/AppManager/IRemoteFile.aidl b/app/src/main/aidl/io/github/muntashirakon/AppManager/IRemoteFile.aidl
index 1264510c7..af8ba170f 100644
--- a/app/src/main/aidl/io/github/muntashirakon/AppManager/IRemoteFile.aidl
+++ b/app/src/main/aidl/io/github/muntashirakon/AppManager/IRemoteFile.aidl
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager;
 
diff --git a/app/src/main/aidl/io/github/muntashirakon/AppManager/IRemoteFileReader.aidl b/app/src/main/aidl/io/github/muntashirakon/AppManager/IRemoteFileReader.aidl
index 8a99606bf..6d391b990 100644
--- a/app/src/main/aidl/io/github/muntashirakon/AppManager/IRemoteFileReader.aidl
+++ b/app/src/main/aidl/io/github/muntashirakon/AppManager/IRemoteFileReader.aidl
@@ -1,19 +1,4 @@
-/*
- * Copyright (c) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager;
 
diff --git a/app/src/main/aidl/io/github/muntashirakon/AppManager/IRemoteFileWriter.aidl b/app/src/main/aidl/io/github/muntashirakon/AppManager/IRemoteFileWriter.aidl
index 077fd6ff1..8fc6658a3 100644
--- a/app/src/main/aidl/io/github/muntashirakon/AppManager/IRemoteFileWriter.aidl
+++ b/app/src/main/aidl/io/github/muntashirakon/AppManager/IRemoteFileWriter.aidl
@@ -1,19 +1,4 @@
-/*
- * Copyright (c) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager;
 
diff --git a/app/src/main/aidl/io/github/muntashirakon/AppManager/IRemoteProcess.aidl b/app/src/main/aidl/io/github/muntashirakon/AppManager/IRemoteProcess.aidl
index ace4fef81..0eca02fc3 100644
--- a/app/src/main/aidl/io/github/muntashirakon/AppManager/IRemoteProcess.aidl
+++ b/app/src/main/aidl/io/github/muntashirakon/AppManager/IRemoteProcess.aidl
@@ -1,22 +1,8 @@
-/*
- * Copyright 2020 Rikka
- * Copyright 2020 Muntashir Al-Islam
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
+// SPDX-License-Identifier: Apache-2.0 AND GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager;
 
+// Copyright 2020 Rikka
 interface IRemoteProcess {
     ParcelFileDescriptor getOutputStream();
     ParcelFileDescriptor getInputStream();
diff --git a/app/src/main/aidl/io/github/muntashirakon/AppManager/IRemoteShell.aidl b/app/src/main/aidl/io/github/muntashirakon/AppManager/IRemoteShell.aidl
index f55aec0b3..1662b9cd2 100644
--- a/app/src/main/aidl/io/github/muntashirakon/AppManager/IRemoteShell.aidl
+++ b/app/src/main/aidl/io/github/muntashirakon/AppManager/IRemoteShell.aidl
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager;
 
diff --git a/app/src/main/aidl/io/github/muntashirakon/AppManager/IShellResult.aidl b/app/src/main/aidl/io/github/muntashirakon/AppManager/IShellResult.aidl
index a348d68e8..153e27fe5 100644
--- a/app/src/main/aidl/io/github/muntashirakon/AppManager/IShellResult.aidl
+++ b/app/src/main/aidl/io/github/muntashirakon/AppManager/IShellResult.aidl
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager;
 
diff --git a/app/src/main/aidl/io/github/muntashirakon/AppManager/ipc/ps/ProcessEntry.aidl b/app/src/main/aidl/io/github/muntashirakon/AppManager/ipc/ps/ProcessEntry.aidl
index f2aa810f6..8fbf3f4fc 100644
--- a/app/src/main/aidl/io/github/muntashirakon/AppManager/ipc/ps/ProcessEntry.aidl
+++ b/app/src/main/aidl/io/github/muntashirakon/AppManager/ipc/ps/ProcessEntry.aidl
@@ -1,19 +1,4 @@
-/*
- * Copyright (c) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.ipc.ps;
 
diff --git a/app/src/main/aidl/io/github/muntashirakon/AppManager/ipc/ps/ProcessUsers.aidl b/app/src/main/aidl/io/github/muntashirakon/AppManager/ipc/ps/ProcessUsers.aidl
index 82e0f8249..4b8698520 100644
--- a/app/src/main/aidl/io/github/muntashirakon/AppManager/ipc/ps/ProcessUsers.aidl
+++ b/app/src/main/aidl/io/github/muntashirakon/AppManager/ipc/ps/ProcessUsers.aidl
@@ -1,19 +1,4 @@
-/*
- * Copyright (c) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.ipc.ps;
 
diff --git a/app/src/main/aidl/io/github/muntashirakon/io/FileStatus.aidl b/app/src/main/aidl/io/github/muntashirakon/io/FileStatus.aidl
index 77aa50df8..d3fc5721c 100644
--- a/app/src/main/aidl/io/github/muntashirakon/io/FileStatus.aidl
+++ b/app/src/main/aidl/io/github/muntashirakon/io/FileStatus.aidl
@@ -1,19 +1,4 @@
-/*
- * Copyright (c) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.io;
 
diff --git a/app/src/main/java/aosp/libcore/util/EmptyArray.java b/app/src/main/java/aosp/libcore/util/EmptyArray.java
index 4d5de04cf..9dcef79cc 100644
--- a/app/src/main/java/aosp/libcore/util/EmptyArray.java
+++ b/app/src/main/java/aosp/libcore/util/EmptyArray.java
@@ -1,23 +1,8 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- * Copyright (C) 2006 The Android Open Source Project
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: Apache-2.0
 
 package aosp.libcore.util;
 
+// Copyright 2006 The Android Open Source Project
 public final class EmptyArray {
     private EmptyArray() {}
 
diff --git a/app/src/main/java/aosp/libcore/util/HexEncoding.java b/app/src/main/java/aosp/libcore/util/HexEncoding.java
index 7324dbdf9..43d40ba35 100644
--- a/app/src/main/java/aosp/libcore/util/HexEncoding.java
+++ b/app/src/main/java/aosp/libcore/util/HexEncoding.java
@@ -1,26 +1,11 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- * Copyright (C) 2006 The Android Open Source Project
- *                            
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *                            
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *                            
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: Apache-2.0
 
 package aosp.libcore.util;
 
 /**
  * Hexadecimal encoding where each byte is represented by two hexadecimal digits.
  */
+// Copyright 2006 The Android Open Source Project
 public class HexEncoding {
 
     private static final char[] LOWER_CASE_DIGITS = {
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/AppManager.java b/app/src/main/java/io/github/muntashirakon/AppManager/AppManager.java
index 9b36c42d1..352aec0ce 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/AppManager.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/AppManager.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/BaseActivity.java b/app/src/main/java/io/github/muntashirakon/AppManager/BaseActivity.java
index ac49a1e1f..8b9616188 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/BaseActivity.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/BaseActivity.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/StaticDataset.java b/app/src/main/java/io/github/muntashirakon/AppManager/StaticDataset.java
index 7dd846611..fccecc86f 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/StaticDataset.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/StaticDataset.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/adb/AdbAuthenticationFailedException.java b/app/src/main/java/io/github/muntashirakon/AppManager/adb/AdbAuthenticationFailedException.java
index c04997ba0..31e88b618 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/adb/AdbAuthenticationFailedException.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/adb/AdbAuthenticationFailedException.java
@@ -1,20 +1,4 @@
-/*
- * Copyright (c) 2021 Muntashir Al-Islam
- * Copyright (c) 2020 Sam Palmer
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: BSD-3-Clause
 
 package io.github.muntashirakon.AppManager.adb;
 
@@ -25,6 +9,7 @@ package io.github.muntashirakon.AppManager.adb;
  * <p>
  * This is an unchecked exception for backwards-compatibility.
  */
+// Copyright 2020 Sam Palmer
 class AdbAuthenticationFailedException extends RuntimeException {
     public AdbAuthenticationFailedException() {
         super("Initial authentication attempt rejected by peer");
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/adb/AdbConnection.java b/app/src/main/java/io/github/muntashirakon/AppManager/adb/AdbConnection.java
index 245e1da18..acfbd0b18 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/adb/AdbConnection.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/adb/AdbConnection.java
@@ -1,22 +1,4 @@
-/*
- * Copyright (c) 2021 Muntashir Al-Islam
- * Copyright (c) 2020 Sam Palmer
- * Copyright (c) 2016 Anton Tananaev
- * Copyright (c) 2013 Cameron Gutman
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: BSD-3-Clause AND GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.adb;
 
@@ -46,6 +28,7 @@ import io.github.muntashirakon.AppManager.logs.Log;
 /**
  * This class represents an ADB connection.
  */
+// Copyright 2013 Cameron Gutman
 public class AdbConnection implements Closeable {
     public static final String TAG = AdbConnection.class.getSimpleName();
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/adb/AdbConnectionManager.java b/app/src/main/java/io/github/muntashirakon/AppManager/adb/AdbConnectionManager.java
index 14365c292..5c5617b8c 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/adb/AdbConnectionManager.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/adb/AdbConnectionManager.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: MIT AND GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.adb;
 
@@ -25,6 +10,7 @@ import io.github.muntashirakon.AppManager.crypto.ks.KeyPair;
 import io.github.muntashirakon.AppManager.crypto.ks.KeyStoreManager;
 import io.github.muntashirakon.AppManager.crypto.ks.KeyStoreUtils;
 
+// Copyright 2017 Zheng Li
 public class AdbConnectionManager {
     public static final String TAG = AdbConnectionManager.class.getSimpleName();
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/adb/AdbCrypto.java b/app/src/main/java/io/github/muntashirakon/AppManager/adb/AdbCrypto.java
index 9c4768258..9da90239c 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/adb/AdbCrypto.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/adb/AdbCrypto.java
@@ -1,21 +1,4 @@
-/*
- * Copyright (c) 2021 Muntashir Al-Islam
- * Copyright (c) 2016 Anton Tananaev
- * Copyright (c) 2013 Cameron Gutman
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: BSD-3-Clause AND GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.adb;
 
@@ -34,6 +17,7 @@ import javax.crypto.Cipher;
 
 import io.github.muntashirakon.AppManager.crypto.ks.KeyPair;
 
+// Copyright 2013 Cameron Gutman
 class AdbCrypto {
     /**
      * The ADB RSA key length in bits
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/adb/AdbProtocol.java b/app/src/main/java/io/github/muntashirakon/AppManager/adb/AdbProtocol.java
index bdc12e905..f20d52899 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/adb/AdbProtocol.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/adb/AdbProtocol.java
@@ -1,21 +1,4 @@
-/*
- * Copyright (c) 2021 Muntashir Al-Islam
- * Copyright (c) 2016 Anton Tananaev
- * Copyright (c) 2013 Cameron Gutman
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: BSD-3-Clause AND GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.adb;
 
@@ -33,6 +16,7 @@ import java.nio.charset.StandardCharsets;
 /**
  * This class provides useful functions and fields for ADB protocol details.
  */
+// Copyright 2013 Cameron Gutman
 class AdbProtocol {
     /**
      * The length of the ADB message header
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/adb/AdbShell.java b/app/src/main/java/io/github/muntashirakon/AppManager/adb/AdbShell.java
index d6c29f0dd..130e5d9b8 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/adb/AdbShell.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/adb/AdbShell.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.adb;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/adb/AdbStream.java b/app/src/main/java/io/github/muntashirakon/AppManager/adb/AdbStream.java
index 7d4524f82..4248c731c 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/adb/AdbStream.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/adb/AdbStream.java
@@ -1,22 +1,4 @@
-/*
- * Copyright (c) 2021 Muntashir Al-Islam
- * Copyright (c) 2020 Sam Palmer
- * Copyright (c) 2016 Anton Tananaev
- * Copyright (c) 2013 Cameron Gutman
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: BSD-3-Clause AND GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.adb;
 
@@ -29,9 +11,8 @@ import java.util.concurrent.atomic.AtomicBoolean;
 
 /**
  * This class abstracts the underlying ADB streams
- *
- * @author Cameron Gutman
  */
+// Copyright 2013 Cameron Gutman
 public class AdbStream implements Closeable {
 
     /**
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/adb/AdbUtils.java b/app/src/main/java/io/github/muntashirakon/AppManager/adb/AdbUtils.java
index eef41909c..e61af82cf 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/adb/AdbUtils.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/adb/AdbUtils.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (c) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.adb;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/adb/LineReader.java b/app/src/main/java/io/github/muntashirakon/AppManager/adb/LineReader.java
index 311484176..3c769a577 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/adb/LineReader.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/adb/LineReader.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: MIT AND GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.adb;
 
@@ -22,6 +7,7 @@ import java.io.IOException;
 import java.nio.ByteBuffer;
 import java.util.Stack;
 
+// Copyright 2017 Zheng Li
 public class LineReader implements Closeable {
     private static final int CR = 13;
     private static final int LF = 10;
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/apk/AndroidBinXmlParser.java b/app/src/main/java/io/github/muntashirakon/AppManager/apk/AndroidBinXmlParser.java
index 8295d52c2..852c8dbdc 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/apk/AndroidBinXmlParser.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/apk/AndroidBinXmlParser.java
@@ -1,20 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- * Copyright (C) 2016 The Android Open Source Project
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: Apache-2.0 AND GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.apk;
 
@@ -40,6 +24,7 @@ import androidx.annotation.Nullable;
  * event can be obtained via an assortment of getters, for example, {@link #getName()} or
  * {@link #getAttributeNameResourceId(int)}.
  */
+// Copyright 2016 The Android Open Source Project
 @SuppressWarnings("unused")
 public class AndroidBinXmlParser {
     @IntDef({
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/apk/ApkFile.java b/app/src/main/java/io/github/muntashirakon/AppManager/apk/ApkFile.java
index b66dcdedb..45a09eb9c 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/apk/ApkFile.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/apk/ApkFile.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.apk;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/apk/ApkUtils.java b/app/src/main/java/io/github/muntashirakon/AppManager/apk/ApkUtils.java
index 51893c118..505353406 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/apk/ApkUtils.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/apk/ApkUtils.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.apk;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/apk/installer/AMPackageInstaller.java b/app/src/main/java/io/github/muntashirakon/AppManager/apk/installer/AMPackageInstaller.java
index 7172a9f8c..f779fa996 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/apk/installer/AMPackageInstaller.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/apk/installer/AMPackageInstaller.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.apk.installer;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/apk/installer/PackageInstallerActivity.java b/app/src/main/java/io/github/muntashirakon/AppManager/apk/installer/PackageInstallerActivity.java
index 5c7b6c546..f82008eba 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/apk/installer/PackageInstallerActivity.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/apk/installer/PackageInstallerActivity.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.apk.installer;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/apk/installer/PackageInstallerBroadcastReceiver.java b/app/src/main/java/io/github/muntashirakon/AppManager/apk/installer/PackageInstallerBroadcastReceiver.java
index 824a39806..cdee00f2e 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/apk/installer/PackageInstallerBroadcastReceiver.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/apk/installer/PackageInstallerBroadcastReceiver.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.apk.installer;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/apk/installer/PackageInstallerCompat.java b/app/src/main/java/io/github/muntashirakon/AppManager/apk/installer/PackageInstallerCompat.java
index b6c6cf26f..6dea80b6a 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/apk/installer/PackageInstallerCompat.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/apk/installer/PackageInstallerCompat.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.apk.installer;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/apk/installer/PackageInstallerService.java b/app/src/main/java/io/github/muntashirakon/AppManager/apk/installer/PackageInstallerService.java
index 26e0320dd..fcbcb6ee6 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/apk/installer/PackageInstallerService.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/apk/installer/PackageInstallerService.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.apk.installer;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/apk/installer/PackageInstallerUtils.java b/app/src/main/java/io/github/muntashirakon/AppManager/apk/installer/PackageInstallerUtils.java
index e6f5603fc..a30c62d74 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/apk/installer/PackageInstallerUtils.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/apk/installer/PackageInstallerUtils.java
@@ -1,20 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- * Copyright (C) 2020 xz-dev
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.apk.installer;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/apk/installer/PackageInstallerViewModel.java b/app/src/main/java/io/github/muntashirakon/AppManager/apk/installer/PackageInstallerViewModel.java
index 43fd6d427..638a815ac 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/apk/installer/PackageInstallerViewModel.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/apk/installer/PackageInstallerViewModel.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (c) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.apk.installer;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/apk/signing/SigSchemes.java b/app/src/main/java/io/github/muntashirakon/AppManager/apk/signing/SigSchemes.java
index 1e85d9a52..917570972 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/apk/signing/SigSchemes.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/apk/signing/SigSchemes.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.apk.signing;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/apk/signing/Signer.java b/app/src/main/java/io/github/muntashirakon/AppManager/apk/signing/Signer.java
index 4c467c518..31cc8d488 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/apk/signing/Signer.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/apk/signing/Signer.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.apk.signing;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/apk/splitapk/ApksMetadata.java b/app/src/main/java/io/github/muntashirakon/AppManager/apk/splitapk/ApksMetadata.java
index a17945fa0..fe31219a1 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/apk/splitapk/ApksMetadata.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/apk/splitapk/ApksMetadata.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.apk.splitapk;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/apk/splitapk/SplitApkChooser.java b/app/src/main/java/io/github/muntashirakon/AppManager/apk/splitapk/SplitApkChooser.java
index 02e53da43..ba8f467df 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/apk/splitapk/SplitApkChooser.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/apk/splitapk/SplitApkChooser.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.apk.splitapk;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/apk/splitapk/SplitApkExporter.java b/app/src/main/java/io/github/muntashirakon/AppManager/apk/splitapk/SplitApkExporter.java
index 4e98b2787..2cbf44720 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/apk/splitapk/SplitApkExporter.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/apk/splitapk/SplitApkExporter.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.apk.splitapk;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/apk/whatsnew/ApkWhatsNewFinder.java b/app/src/main/java/io/github/muntashirakon/AppManager/apk/whatsnew/ApkWhatsNewFinder.java
index 093f92862..cb70ab6ed 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/apk/whatsnew/ApkWhatsNewFinder.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/apk/whatsnew/ApkWhatsNewFinder.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.apk.whatsnew;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/apk/whatsnew/WhatsNewDialogFragment.java b/app/src/main/java/io/github/muntashirakon/AppManager/apk/whatsnew/WhatsNewDialogFragment.java
index ca1529501..f5aba5fb7 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/apk/whatsnew/WhatsNewDialogFragment.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/apk/whatsnew/WhatsNewDialogFragment.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.apk.whatsnew;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/appops/AppOpsManager.java b/app/src/main/java/io/github/muntashirakon/AppManager/appops/AppOpsManager.java
index c3842f18c..2373b379c 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/appops/AppOpsManager.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/appops/AppOpsManager.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: Apache-2.0 AND GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.appops;
 
@@ -39,6 +24,7 @@ import io.github.muntashirakon.AppManager.utils.ArrayUtils;
  * <p>This API is not generally intended for third party application developers; most
  * features are only available to system applications.
  */
+// Copyright 2016 The Android Open Source Project
 @SuppressWarnings("unused")
 public class AppOpsManager {
     @SuppressLint("NewApi")
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/appops/AppOpsService.java b/app/src/main/java/io/github/muntashirakon/AppManager/appops/AppOpsService.java
index 4e04ec5ad..be90bc319 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/appops/AppOpsService.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/appops/AppOpsService.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.appops;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/appops/AppOpsUtils.java b/app/src/main/java/io/github/muntashirakon/AppManager/appops/AppOpsUtils.java
index 359fad954..c367470de 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/appops/AppOpsUtils.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/appops/AppOpsUtils.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (c) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.appops;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/appops/OpEntry.java b/app/src/main/java/io/github/muntashirakon/AppManager/appops/OpEntry.java
index c8694d13e..952eb4f3d 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/appops/OpEntry.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/appops/OpEntry.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: Apache-2.0 AND GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.appops;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/appops/PackageOps.java b/app/src/main/java/io/github/muntashirakon/AppManager/appops/PackageOps.java
index 45dda711b..10701dbc5 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/appops/PackageOps.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/appops/PackageOps.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: Apache-2.0 AND GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.appops;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/appops/reflector/OpEntryConverter.java b/app/src/main/java/io/github/muntashirakon/AppManager/appops/reflector/OpEntryConverter.java
index 55f34c119..ef483fe41 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/appops/reflector/OpEntryConverter.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/appops/reflector/OpEntryConverter.java
@@ -1,3 +1,5 @@
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 package io.github.muntashirakon.AppManager.appops.reflector;
 
 import android.os.Build;
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/appops/reflector/PackageOpsConverter.java b/app/src/main/java/io/github/muntashirakon/AppManager/appops/reflector/PackageOpsConverter.java
index e647ebb9c..6646cad51 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/appops/reflector/PackageOpsConverter.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/appops/reflector/PackageOpsConverter.java
@@ -1,3 +1,5 @@
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 package io.github.muntashirakon.AppManager.appops.reflector;
 
 import android.os.Build;
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/appops/reflector/ReflectUtils.java b/app/src/main/java/io/github/muntashirakon/AppManager/appops/reflector/ReflectUtils.java
index fab8223fb..f0594f556 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/appops/reflector/ReflectUtils.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/appops/reflector/ReflectUtils.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: MIT AND GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.appops.reflector;
 
@@ -29,6 +14,7 @@ import io.github.muntashirakon.AppManager.appops.OpEntry;
 import io.github.muntashirakon.AppManager.appops.PackageOps;
 import io.github.muntashirakon.AppManager.utils.ArrayUtils;
 
+// Copyright 2017 Zheng Li
 @SuppressWarnings("rawtypes")
 public class ReflectUtils {
     private static final Map<String, Field> sFieldCache = new HashMap<>();
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/backup/BackupDialogFragment.java b/app/src/main/java/io/github/muntashirakon/AppManager/backup/BackupDialogFragment.java
index aef0808c0..a85e2da12 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/backup/BackupDialogFragment.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/backup/BackupDialogFragment.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.backup;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/backup/BackupException.java b/app/src/main/java/io/github/muntashirakon/AppManager/backup/BackupException.java
index 2e2a6635c..ca0d1326b 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/backup/BackupException.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/backup/BackupException.java
@@ -1,3 +1,5 @@
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 package io.github.muntashirakon.AppManager.backup;
 
 import androidx.annotation.NonNull;
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/backup/BackupFiles.java b/app/src/main/java/io/github/muntashirakon/AppManager/backup/BackupFiles.java
index ac0e3778a..dfdfe0d81 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/backup/BackupFiles.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/backup/BackupFiles.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.backup;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/backup/BackupFlags.java b/app/src/main/java/io/github/muntashirakon/AppManager/backup/BackupFlags.java
index 426b154cf..8e1e49d3a 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/backup/BackupFlags.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/backup/BackupFlags.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.backup;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/backup/BackupManager.java b/app/src/main/java/io/github/muntashirakon/AppManager/backup/BackupManager.java
index 55d750334..21192930f 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/backup/BackupManager.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/backup/BackupManager.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.backup;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/backup/BackupOp.java b/app/src/main/java/io/github/muntashirakon/AppManager/backup/BackupOp.java
index e69987c74..7ccab825c 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/backup/BackupOp.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/backup/BackupOp.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.backup;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/backup/BackupUtils.java b/app/src/main/java/io/github/muntashirakon/AppManager/backup/BackupUtils.java
index d53feea2d..e7750e0ee 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/backup/BackupUtils.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/backup/BackupUtils.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.backup;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/backup/CryptoUtils.java b/app/src/main/java/io/github/muntashirakon/AppManager/backup/CryptoUtils.java
index f5c1b8318..ebb9d5fe1 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/backup/CryptoUtils.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/backup/CryptoUtils.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.backup;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/backup/MetadataManager.java b/app/src/main/java/io/github/muntashirakon/AppManager/backup/MetadataManager.java
index 2e799504a..8bb73168f 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/backup/MetadataManager.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/backup/MetadataManager.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.backup;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/backup/RestoreOp.java b/app/src/main/java/io/github/muntashirakon/AppManager/backup/RestoreOp.java
index 0ea7d10aa..b11f4c0d8 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/backup/RestoreOp.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/backup/RestoreOp.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.backup;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/backup/VerifyOp.java b/app/src/main/java/io/github/muntashirakon/AppManager/backup/VerifyOp.java
index 398d2ea84..04acb69ef 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/backup/VerifyOp.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/backup/VerifyOp.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (c) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.backup;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/batchops/BatchOpsManager.java b/app/src/main/java/io/github/muntashirakon/AppManager/batchops/BatchOpsManager.java
index f3750dede..780bd9443 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/batchops/BatchOpsManager.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/batchops/BatchOpsManager.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.batchops;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/batchops/BatchOpsService.java b/app/src/main/java/io/github/muntashirakon/AppManager/batchops/BatchOpsService.java
index 31b1b2e5d..85d23a7db 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/batchops/BatchOpsService.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/batchops/BatchOpsService.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.batchops;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/crypto/AESCrypto.java b/app/src/main/java/io/github/muntashirakon/AppManager/crypto/AESCrypto.java
index bb817d8af..53f85a4d4 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/crypto/AESCrypto.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/crypto/AESCrypto.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.crypto;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/crypto/AuthenticationActivity.java b/app/src/main/java/io/github/muntashirakon/AppManager/crypto/AuthenticationActivity.java
index 2b55efb99..b1ebf919b 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/crypto/AuthenticationActivity.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/crypto/AuthenticationActivity.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (c) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.crypto;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/crypto/Crypto.java b/app/src/main/java/io/github/muntashirakon/AppManager/crypto/Crypto.java
index 5f5f4d461..5986d5906 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/crypto/Crypto.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/crypto/Crypto.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.crypto;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/crypto/CryptoException.java b/app/src/main/java/io/github/muntashirakon/AppManager/crypto/CryptoException.java
index 05a376fc7..75d54f89f 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/crypto/CryptoException.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/crypto/CryptoException.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.crypto;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/crypto/DummyCrypto.java b/app/src/main/java/io/github/muntashirakon/AppManager/crypto/DummyCrypto.java
index 139d541ee..b78c6f749 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/crypto/DummyCrypto.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/crypto/DummyCrypto.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.crypto;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/crypto/OpenPGPCrypto.java b/app/src/main/java/io/github/muntashirakon/AppManager/crypto/OpenPGPCrypto.java
index 4ff6e1dad..2a3b78947 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/crypto/OpenPGPCrypto.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/crypto/OpenPGPCrypto.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: MIT AND GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.crypto;
 
@@ -60,6 +45,7 @@ import io.github.muntashirakon.io.ProxyFile;
 import io.github.muntashirakon.io.ProxyInputStream;
 import io.github.muntashirakon.io.ProxyOutputStream;
 
+// Copyright 2018 jensstein
 public class OpenPGPCrypto implements Crypto {
     public static final String TAG = "OpenPGPCrypto";
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/crypto/OpenPGPCryptoActivity.java b/app/src/main/java/io/github/muntashirakon/AppManager/crypto/OpenPGPCryptoActivity.java
index 57a160245..0f7a75ff4 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/crypto/OpenPGPCryptoActivity.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/crypto/OpenPGPCryptoActivity.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.crypto;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/crypto/RSACrypto.java b/app/src/main/java/io/github/muntashirakon/AppManager/crypto/RSACrypto.java
index da9deea87..e28c9a2cc 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/crypto/RSACrypto.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/crypto/RSACrypto.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (c) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.crypto;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/crypto/ks/CompatUtil.java b/app/src/main/java/io/github/muntashirakon/AppManager/crypto/ks/CompatUtil.java
index 746a992f5..c0d85664e 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/crypto/ks/CompatUtil.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/crypto/ks/CompatUtil.java
@@ -1,20 +1,4 @@
-/*
- * Copyright (c) 2021 Muntashir Al-Islam
- * Copyright (c) 2018 New Vector Ltd
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: Apache-2.0
 
 package io.github.muntashirakon.AppManager.crypto.ks;
 
@@ -63,6 +47,7 @@ import javax.security.auth.x500.X500Principal;
 
 import io.github.muntashirakon.AppManager.logs.Log;
 
+// Copyright 2018 New Vector Ltd
 public class CompatUtil {
     private static final String TAG = CompatUtil.class.getSimpleName();
     private static final String ANDROID_KEY_STORE_PROVIDER = "AndroidKeyStore";
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/crypto/ks/KeyPair.java b/app/src/main/java/io/github/muntashirakon/AppManager/crypto/ks/KeyPair.java
index 2f6661f77..df101e6a6 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/crypto/ks/KeyPair.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/crypto/ks/KeyPair.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (c) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.crypto.ks;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/crypto/ks/KeyStoreActivity.java b/app/src/main/java/io/github/muntashirakon/AppManager/crypto/ks/KeyStoreActivity.java
index 47a97a46d..4ea9586ba 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/crypto/ks/KeyStoreActivity.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/crypto/ks/KeyStoreActivity.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.crypto.ks;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/crypto/ks/KeyStoreManager.java b/app/src/main/java/io/github/muntashirakon/AppManager/crypto/ks/KeyStoreManager.java
index 923e30572..a9e29a72a 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/crypto/ks/KeyStoreManager.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/crypto/ks/KeyStoreManager.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.crypto.ks;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/crypto/ks/KeyStoreUtils.java b/app/src/main/java/io/github/muntashirakon/AppManager/crypto/ks/KeyStoreUtils.java
index 2f215a7eb..0a126b6ce 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/crypto/ks/KeyStoreUtils.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/crypto/ks/KeyStoreUtils.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (c) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.crypto.ks;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/crypto/ks/SecretKeyAndVersion.java b/app/src/main/java/io/github/muntashirakon/AppManager/crypto/ks/SecretKeyAndVersion.java
index 740d34c03..b5b061451 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/crypto/ks/SecretKeyAndVersion.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/crypto/ks/SecretKeyAndVersion.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (c) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: Apache-2.0
 
 package io.github.muntashirakon.AppManager.crypto.ks;
 
@@ -24,6 +9,7 @@ import javax.crypto.SecretKey;
 /**
  * Tuple which contains the secret key and the version of Android when the key has been generated
  */
+// Copyright 2018 New Vector Ltd
 public class SecretKeyAndVersion extends Pair<SecretKey, Integer> {
     /**
      * @param secretKey                                The key
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/crypto/ks/SecretKeyCompat.java b/app/src/main/java/io/github/muntashirakon/AppManager/crypto/ks/SecretKeyCompat.java
index 83471d495..0bdd865da 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/crypto/ks/SecretKeyCompat.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/crypto/ks/SecretKeyCompat.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (c) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.crypto.ks;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/db/AMDatabase.java b/app/src/main/java/io/github/muntashirakon/AppManager/db/AMDatabase.java
index 1fd4d4bc6..b76eb5ae7 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/db/AMDatabase.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/db/AMDatabase.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (c) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.db;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/db/dao/AppDao.java b/app/src/main/java/io/github/muntashirakon/AppManager/db/dao/AppDao.java
index 45c6dfd1f..2574e9a54 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/db/dao/AppDao.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/db/dao/AppDao.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (c) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.db.dao;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/db/dao/FileHashDao.java b/app/src/main/java/io/github/muntashirakon/AppManager/db/dao/FileHashDao.java
index 21d2b813b..983da23a9 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/db/dao/FileHashDao.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/db/dao/FileHashDao.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (c) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.db.dao;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/db/dao/LogFilterDao.java b/app/src/main/java/io/github/muntashirakon/AppManager/db/dao/LogFilterDao.java
index 3a3091210..0bf8ebe3f 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/db/dao/LogFilterDao.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/db/dao/LogFilterDao.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (c) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.db.dao;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/db/entity/App.java b/app/src/main/java/io/github/muntashirakon/AppManager/db/entity/App.java
index f2173a8e0..bccd3830f 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/db/entity/App.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/db/entity/App.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (c) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.db.entity;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/db/entity/FileHash.java b/app/src/main/java/io/github/muntashirakon/AppManager/db/entity/FileHash.java
index 1c92b9bba..9e50a2d61 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/db/entity/FileHash.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/db/entity/FileHash.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (c) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.db.entity;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/db/entity/LogFilter.java b/app/src/main/java/io/github/muntashirakon/AppManager/db/entity/LogFilter.java
index 72631f8b4..c001c4284 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/db/entity/LogFilter.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/db/entity/LogFilter.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (c) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.db.entity;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/details/AppDetailsActivity.java b/app/src/main/java/io/github/muntashirakon/AppManager/details/AppDetailsActivity.java
index 73066ce42..0dcc16331 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/details/AppDetailsActivity.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/details/AppDetailsActivity.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.details;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/details/AppDetailsFragment.java b/app/src/main/java/io/github/muntashirakon/AppManager/details/AppDetailsFragment.java
index 248cf1c4e..684f7feca 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/details/AppDetailsFragment.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/details/AppDetailsFragment.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: Apache-2.0 AND GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.details;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/details/AppDetailsFragmentViewModel.java b/app/src/main/java/io/github/muntashirakon/AppManager/details/AppDetailsFragmentViewModel.java
index e0dd2f36d..1f171e82f 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/details/AppDetailsFragmentViewModel.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/details/AppDetailsFragmentViewModel.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.details;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/details/AppDetailsViewModel.java b/app/src/main/java/io/github/muntashirakon/AppManager/details/AppDetailsViewModel.java
index b8ef5f621..20bf7eb76 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/details/AppDetailsViewModel.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/details/AppDetailsViewModel.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.details;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/details/EditShortcutDialogFragment.java b/app/src/main/java/io/github/muntashirakon/AppManager/details/EditShortcutDialogFragment.java
index b1ad0ceee..afed174f6 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/details/EditShortcutDialogFragment.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/details/EditShortcutDialogFragment.java
@@ -1,24 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
-
-// This is a modified version of ShortcutEditDialogFragment.java taken
-// from https://github.com/butzist/ActivityLauncher/commit/dfb7fe271dae9379b5453bbb6e88f30a1adc94a9
-// and was authored by Adam M. Szalkowski with ISC License.
-// All derivative works are licensed under GPLv3.0.
+// SPDX-License-Identifier: ISC AND GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.details;
 
@@ -47,6 +27,7 @@ import androidx.fragment.app.DialogFragment;
 import androidx.fragment.app.FragmentActivity;
 import io.github.muntashirakon.AppManager.R;
 
+// Copyright 2017 Adam M. Szalkowski
 public class EditShortcutDialogFragment extends DialogFragment {
     static final String ARG_ACTIVITY_INFO = "activityInfo";
     static final String TAG = "EditShortcutDialogFragment";
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/details/IconPickerDialogFragment.java b/app/src/main/java/io/github/muntashirakon/AppManager/details/IconPickerDialogFragment.java
index 8034b4d6e..2106ebcba 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/details/IconPickerDialogFragment.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/details/IconPickerDialogFragment.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: ISC AND GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.details;
 
@@ -45,6 +30,7 @@ import androidx.fragment.app.DialogFragment;
 import androidx.fragment.app.FragmentActivity;
 import io.github.muntashirakon.AppManager.R;
 
+// Copyright 2017 Adam M. Szalkowski
 public class IconPickerDialogFragment extends DialogFragment {
     public static final String TAG = "IconPickerDialogFragment";
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/details/LauncherIconCreator.java b/app/src/main/java/io/github/muntashirakon/AppManager/details/LauncherIconCreator.java
index 6ba8837fa..c7d59f4a9 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/details/LauncherIconCreator.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/details/LauncherIconCreator.java
@@ -1,24 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
-
-// This is a modified version of LauncherIconCreator.java taken
-// from https://github.com/butzist/ActivityLauncher/commit/dfb7fe271dae9379b5453bbb6e88f30a1adc94a9
-// and was authored by Adam M. Szalkowski with ISC License.
-// All derivative works are licensed under GPLv3.0.
+// SPDX-License-Identifier: ISC AND GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.details;
 
@@ -39,14 +19,15 @@ import com.google.android.material.dialog.MaterialAlertDialogBuilder;
 
 import io.github.muntashirakon.AppManager.R;
 
+// Copyright 2017 Adam M. Szalkowski
 public class LauncherIconCreator {
     /**
      * Create launcher icon.
      *
-     * @param context                  Activity context
-     * @param packageItemInfo          App package name
-     * @param name             Name/Label of the app
-     * @param icon             App icon
+     * @param context         Activity context
+     * @param packageItemInfo App package name
+     * @param name            Name/Label of the app
+     * @param icon            App icon
      */
     public static void createLauncherIcon(@NonNull Context context, @NonNull ActivityInfo packageItemInfo,
                                           @NonNull String name, @NonNull Drawable icon) {
@@ -56,9 +37,9 @@ public class LauncherIconCreator {
     /**
      * Create launcher icon.
      *
-     * @param context                  Activity context
-     * @param name             Name/Label of the app
-     * @param icon             App icon
+     * @param context Activity context
+     * @param name    Name/Label of the app
+     * @param icon    App icon
      */
     public static void createLauncherIcon(@NonNull Context context, @NonNull String name, @NonNull Drawable icon,
                                           @NonNull Intent intent) {
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/details/ManifestViewerActivity.java b/app/src/main/java/io/github/muntashirakon/AppManager/details/ManifestViewerActivity.java
index bc771d97b..be46cb6bd 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/details/ManifestViewerActivity.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/details/ManifestViewerActivity.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.details;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/details/info/AppInfoFragment.java b/app/src/main/java/io/github/muntashirakon/AppManager/details/info/AppInfoFragment.java
index 7a7c9665e..0a9625d3e 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/details/info/AppInfoFragment.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/details/info/AppInfoFragment.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.details.info;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/details/info/AppInfoRecyclerAdapter.java b/app/src/main/java/io/github/muntashirakon/AppManager/details/info/AppInfoRecyclerAdapter.java
index 363b86c7d..c43d037e0 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/details/info/AppInfoRecyclerAdapter.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/details/info/AppInfoRecyclerAdapter.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.details.info;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/details/info/AppInfoViewModel.java b/app/src/main/java/io/github/muntashirakon/AppManager/details/info/AppInfoViewModel.java
index 4ce0c4b36..f64877390 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/details/info/AppInfoViewModel.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/details/info/AppInfoViewModel.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (c) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.details.info;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/details/info/ListItem.java b/app/src/main/java/io/github/muntashirakon/AppManager/details/info/ListItem.java
index 8bb296f93..f29efc550 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/details/info/ListItem.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/details/info/ListItem.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.details.info;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/intercept/ActivityInterceptor.java b/app/src/main/java/io/github/muntashirakon/AppManager/intercept/ActivityInterceptor.java
index 576dc0655..2cf35ce04 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/intercept/ActivityInterceptor.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/intercept/ActivityInterceptor.java
@@ -1,20 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- * Copyright (C) 2012-2014 Intrications
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: Apache-2.0 AND GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.intercept;
 
@@ -70,6 +54,7 @@ import io.github.muntashirakon.AppManager.types.IconLoaderThread;
 import io.github.muntashirakon.AppManager.types.TextInputDropdownDialogBuilder;
 import io.github.muntashirakon.AppManager.utils.PackageUtils;
 
+// Copyright 2012 Intrications
 public class ActivityInterceptor extends BaseActivity {
     public static final String TAG = ActivityInterceptor.class.getSimpleName();
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/intercept/AddIntentExtraFragment.java b/app/src/main/java/io/github/muntashirakon/AppManager/intercept/AddIntentExtraFragment.java
index e8365b465..5acdd5604 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/intercept/AddIntentExtraFragment.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/intercept/AddIntentExtraFragment.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.intercept;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/intercept/HistoryEditText.java b/app/src/main/java/io/github/muntashirakon/AppManager/intercept/HistoryEditText.java
index 9b63068dd..b626c49f4 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/intercept/HistoryEditText.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/intercept/HistoryEditText.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: Apache-2.0 AND GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.intercept;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/intercept/IntentCompat.java b/app/src/main/java/io/github/muntashirakon/AppManager/intercept/IntentCompat.java
index 5aa79e476..4fa53687d 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/intercept/IntentCompat.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/intercept/IntentCompat.java
@@ -1,3 +1,5 @@
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 package io.github.muntashirakon.AppManager.intercept;
 
 import android.content.ComponentName;
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/ipc/AMService.java b/app/src/main/java/io/github/muntashirakon/AppManager/ipc/AMService.java
index 533f24db7..40b1fb7a8 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/ipc/AMService.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/ipc/AMService.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.ipc;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/ipc/Container.java b/app/src/main/java/io/github/muntashirakon/AppManager/ipc/Container.java
index 71ec88d2d..8e762c0f3 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/ipc/Container.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/ipc/Container.java
@@ -1,22 +1,8 @@
-/*
- * Copyright 2020 John "topjohnwu" Wu
- * Copyright 2020 Muntashir Al-Islam
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
+// SPDX-License-Identifier: Apache-2.0
 
 package io.github.muntashirakon.AppManager.ipc;
 
+// Copyright 2020 John "topjohnwu" Wu
 class Container<T> {
     public T obj;
 }
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/ipc/HiddenAPIs.java b/app/src/main/java/io/github/muntashirakon/AppManager/ipc/HiddenAPIs.java
index 0f2695fc7..876d5f7f3 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/ipc/HiddenAPIs.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/ipc/HiddenAPIs.java
@@ -1,19 +1,4 @@
-/*
- * Copyright 2020 John "topjohnwu" Wu
- * Copyright 2020 Muntashir Al-Islam
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
+// SPDX-License-Identifier: Apache-2.0
 
 package io.github.muntashirakon.AppManager.ipc;
 
@@ -29,6 +14,7 @@ import java.lang.reflect.Method;
  * These methods should only be accessed in the root process, since under normal circumstances
  * accessing these internal APIs through reflection will be blocked.
  */
+// Copyright 2020 John "topjohnwu" Wu
 class HiddenAPIs {
     // Set this flag to silence AMS's complaints
     @SuppressWarnings("JavaReflectionMemberAccess")
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/ipc/IPCClient.java b/app/src/main/java/io/github/muntashirakon/AppManager/ipc/IPCClient.java
index 06e01fd2d..5bb28f603 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/ipc/IPCClient.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/ipc/IPCClient.java
@@ -1,19 +1,4 @@
-/*
- * Copyright 2020 John "topjohnwu" Wu
- * Copyright 2020 Muntashir Al-Islam
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
+// SPDX-License-Identifier: Apache-2.0 AND GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.ipc;
 
@@ -56,6 +41,7 @@ import static io.github.muntashirakon.AppManager.ipc.RootService.serialExecutor;
 import static io.github.muntashirakon.AppManager.server.common.ServerUtils.CMDLINE_STOP_SERVER;
 import static io.github.muntashirakon.AppManager.utils.PackageUtils.PACKAGE_STAGING_DIRECTORY;
 
+// Copyright 2020 John "topjohnwu" Wu
 class IPCClient implements IBinder.DeathRecipient, Closeable {
     static final String INTENT_DEBUG_KEY = "debug";
     static final String INTENT_EXTRA_KEY = "binder_bundle";
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/ipc/IPCServer.java b/app/src/main/java/io/github/muntashirakon/AppManager/ipc/IPCServer.java
index ae175330d..253a7d8fb 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/ipc/IPCServer.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/ipc/IPCServer.java
@@ -1,19 +1,4 @@
-/*
- * Copyright 2020 John "topjohnwu" Wu
- * Copyright 2020 Muntashir Al-Islam
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
+// SPDX-License-Identifier: Apache-2.0 AND GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.ipc;
 
@@ -47,6 +32,7 @@ import static io.github.muntashirakon.AppManager.ipc.IPCClient.INTENT_EXTRA_KEY;
 import static io.github.muntashirakon.AppManager.ipc.RootService.TAG;
 import static io.github.muntashirakon.AppManager.server.common.ServerUtils.getServiceName;
 
+// Copyright 2020 John "topjohnwu" Wu
 class IPCServer extends IRootIPC.Stub implements IBinder.DeathRecipient {
 
     private final ComponentName mName;
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/ipc/IPCUtils.java b/app/src/main/java/io/github/muntashirakon/AppManager/ipc/IPCUtils.java
index 1618f4d97..4de3c8dba 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/ipc/IPCUtils.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/ipc/IPCUtils.java
@@ -1,3 +1,5 @@
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 package io.github.muntashirakon.AppManager.ipc;
 
 import android.content.ComponentName;
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/ipc/ProxyBinder.java b/app/src/main/java/io/github/muntashirakon/AppManager/ipc/ProxyBinder.java
index f106d8a04..49003acdd 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/ipc/ProxyBinder.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/ipc/ProxyBinder.java
@@ -1,20 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- * Copyright (C) 2020 Rikka
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: Apache-2.0 AND GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.ipc;
 
@@ -35,6 +19,7 @@ import io.github.muntashirakon.AppManager.server.common.IRootIPC;
 import io.github.muntashirakon.AppManager.servermanager.LocalServer;
 import io.github.muntashirakon.AppManager.utils.AppPref;
 
+// Copyright 2020 Rikka
 public class ProxyBinder implements IBinder {
     public static final int PROXY_BINDER_TRANSACT_CODE = 2;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/ipc/RemoteFileImpl.java b/app/src/main/java/io/github/muntashirakon/AppManager/ipc/RemoteFileImpl.java
index 2c8a92e42..2577e1714 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/ipc/RemoteFileImpl.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/ipc/RemoteFileImpl.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.ipc;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/ipc/RemoteFileReaderImpl.java b/app/src/main/java/io/github/muntashirakon/AppManager/ipc/RemoteFileReaderImpl.java
index 3c67d3c05..5f18aeaa9 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/ipc/RemoteFileReaderImpl.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/ipc/RemoteFileReaderImpl.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (c) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.ipc;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/ipc/RemoteFileWriterImpl.java b/app/src/main/java/io/github/muntashirakon/AppManager/ipc/RemoteFileWriterImpl.java
index c03a7217b..60296fade 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/ipc/RemoteFileWriterImpl.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/ipc/RemoteFileWriterImpl.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (c) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.ipc;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/ipc/RemoteProcess.java b/app/src/main/java/io/github/muntashirakon/AppManager/ipc/RemoteProcess.java
index 56c8bda74..4ab7944ac 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/ipc/RemoteProcess.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/ipc/RemoteProcess.java
@@ -1,19 +1,4 @@
-/*
- * Copyright 2020 Rikka
- * Copyright 2020 Muntashir Al-Islam
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
+// SPDX-License-Identifier: Apache-2.0
 
 package io.github.muntashirakon.AppManager.ipc;
 
@@ -29,6 +14,7 @@ import java.util.concurrent.TimeUnit;
 
 import io.github.muntashirakon.AppManager.IRemoteProcess;
 
+// Copyright 2020 Rikka
 public class RemoteProcess extends Process implements Parcelable {
     private final IRemoteProcess mRemote;
     private OutputStream os;
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/ipc/RemoteProcessImpl.java b/app/src/main/java/io/github/muntashirakon/AppManager/ipc/RemoteProcessImpl.java
index 6a76a23e7..f2cdaf3e5 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/ipc/RemoteProcessImpl.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/ipc/RemoteProcessImpl.java
@@ -1,19 +1,4 @@
-/*
- * Copyright 2020 Rikka
- * Copyright 2020 Muntashir Al-Islam
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
+// SPDX-License-Identifier: Apache-2.0
 
 package io.github.muntashirakon.AppManager.ipc;
 
@@ -27,6 +12,7 @@ import java.util.concurrent.TimeUnit;
 import io.github.muntashirakon.AppManager.IRemoteProcess;
 import io.github.muntashirakon.AppManager.utils.ParcelFileDescriptorUtil;
 
+// Copyright 2020 Rikka
 class RemoteProcessImpl extends IRemoteProcess.Stub {
     private final Process process;
     private ParcelFileDescriptor in;
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/ipc/RemoteShellImpl.java b/app/src/main/java/io/github/muntashirakon/AppManager/ipc/RemoteShellImpl.java
index 6860f0b98..48b6d93b5 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/ipc/RemoteShellImpl.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/ipc/RemoteShellImpl.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.ipc;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/ipc/RootService.java b/app/src/main/java/io/github/muntashirakon/AppManager/ipc/RootService.java
index 63b75beb7..59cd8f3a9 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/ipc/RootService.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/ipc/RootService.java
@@ -1,19 +1,4 @@
-/*
- * Copyright 2020 John "topjohnwu" Wu
- * Copyright 2020 Muntashir Al-Islam
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
+// SPDX-License-Identifier: Apache-2.0 AND GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.ipc;
 
@@ -76,6 +61,7 @@ import io.github.muntashirakon.AppManager.utils.UiThreadHandler;
  * @see <a href="https://developer.android.com/guide/components/bound-services">Bound services</a>
  * @see <a href="https://developer.android.com/guide/components/aidl">Android Interface Definition Language (AIDL)</a>
  */
+// Copyright 2020 John "topjohnwu" Wu
 public abstract class RootService extends ContextWrapper {
 
     static final String TAG = "IPC";
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/ipc/SerialExecutorService.java b/app/src/main/java/io/github/muntashirakon/AppManager/ipc/SerialExecutorService.java
index 9ab8e816d..590ae7209 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/ipc/SerialExecutorService.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/ipc/SerialExecutorService.java
@@ -1,19 +1,4 @@
-/*
- * Copyright 2020 John "topjohnwu" Wu
- * Copyright 2020 Muntashir Al-Islam
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
+// SPDX-License-Identifier: Apache-2.0 AND GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.ipc;
 
@@ -30,6 +15,7 @@ import java.util.concurrent.TimeoutException;
 
 import static com.topjohnwu.superuser.Shell.EXECUTOR;
 
+// Copyright 2020 John "topjohnwu" Wu
 public class SerialExecutorService extends AbstractExecutorService implements Callable<Void> {
     private boolean isShutdown = false;
     private final ArrayDeque<Runnable> mTasks = new ArrayDeque<>();
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/ipc/package.html b/app/src/main/java/io/github/muntashirakon/AppManager/ipc/package.html
index 07de11bdc..6cd1032e1 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/ipc/package.html
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/ipc/package.html
@@ -1,19 +1,4 @@
-<!--
-  ~ Copyright (c) 2021 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 
 <p>
     Java classes except IPCUtils and RemoteProcess defined in the package must be executed via IPC. Main app can only access them.
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/ipc/ps/ProcessEntry.java b/app/src/main/java/io/github/muntashirakon/AppManager/ipc/ps/ProcessEntry.java
index dce44a35a..dc664072f 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/ipc/ps/ProcessEntry.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/ipc/ps/ProcessEntry.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (c) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.ipc.ps;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/ipc/ps/ProcessUsers.java b/app/src/main/java/io/github/muntashirakon/AppManager/ipc/ps/ProcessUsers.java
index 8d67cb311..5c0772b23 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/ipc/ps/ProcessUsers.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/ipc/ps/ProcessUsers.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (c) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.ipc.ps;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/ipc/ps/Ps.java b/app/src/main/java/io/github/muntashirakon/AppManager/ipc/ps/Ps.java
index b2cc5597f..c00c88c72 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/ipc/ps/Ps.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/ipc/ps/Ps.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (c) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.ipc.ps;
 
@@ -29,8 +14,6 @@ import java.util.Arrays;
 /**
  * This is a generic Java-way of parsing processes from /proc. This is a work in progress and by no means perfect. To
  * create this class, I extensively followed the documentation located at https://www.kernel.org/doc/Documentation/filesystems/proc.txt.
- *
- * @author Muntashir Al-Islam
  */
 public class Ps {
     /**
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/logcat/CrazyLoggerService.java b/app/src/main/java/io/github/muntashirakon/AppManager/logcat/CrazyLoggerService.java
index 180f48da0..007e55647 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/logcat/CrazyLoggerService.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/logcat/CrazyLoggerService.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (c) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: WTFPL AND GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.logcat;
 
@@ -25,6 +10,7 @@ import java.util.Random;
 
 import io.github.muntashirakon.AppManager.types.ForegroundService;
 
+// Copyright 2012 Nolan Lawson
 public class CrazyLoggerService extends ForegroundService {
     public static final String TAG = CrazyLoggerService.class.getSimpleName();
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/logcat/LogFilterAdapter.java b/app/src/main/java/io/github/muntashirakon/AppManager/logcat/LogFilterAdapter.java
index 23162e63d..1139fe66c 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/logcat/LogFilterAdapter.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/logcat/LogFilterAdapter.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (c) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: WTFPL AND GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.logcat;
 
@@ -34,6 +19,7 @@ import io.github.muntashirakon.AppManager.AppManager;
 import io.github.muntashirakon.AppManager.R;
 import io.github.muntashirakon.AppManager.db.entity.LogFilter;
 
+// Copyright 2012 Nolan Lawson
 public class LogFilterAdapter extends ArrayAdapter<LogFilter> {
     LayoutInflater layoutInflater;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/logcat/LogViewerActivity.java b/app/src/main/java/io/github/muntashirakon/AppManager/logcat/LogViewerActivity.java
index 86b453381..78931f9cc 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/logcat/LogViewerActivity.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/logcat/LogViewerActivity.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (c) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: WTFPL AND GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.logcat;
 
@@ -110,6 +95,7 @@ import me.zhanghai.android.fastscroll.FastScrollerBuilder;
 import static io.github.muntashirakon.AppManager.logcat.LogViewerRecyclerAdapter.ViewHolder.CONTEXT_MENU_COPY_ID;
 import static io.github.muntashirakon.AppManager.logcat.LogViewerRecyclerAdapter.ViewHolder.CONTEXT_MENU_FILTER_ID;
 
+// Copyright 2012 Nolan Lawson
 public class LogViewerActivity extends BaseActivity implements FilterListener,
         LogViewerRecyclerAdapter.ViewHolder.OnClickListener {
     public static final String TAG = LogViewerActivity.class.getSimpleName();
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/logcat/LogViewerRecyclerAdapter.java b/app/src/main/java/io/github/muntashirakon/AppManager/logcat/LogViewerRecyclerAdapter.java
index 194e652c0..0166380ab 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/logcat/LogViewerRecyclerAdapter.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/logcat/LogViewerRecyclerAdapter.java
@@ -1,20 +1,4 @@
-/*
- * Copyright (c) 2021 Muntashir Al-Islam
- * Copyright (C) 2006 The Android Open Source Project
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: WTFPL AND GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.logcat;
 
@@ -47,6 +31,7 @@ import io.github.muntashirakon.AppManager.logs.Log;
 import io.github.muntashirakon.AppManager.utils.AppPref;
 import io.github.muntashirakon.AppManager.utils.UIUtils;
 
+// Copyright 2012 Nolan Lawson
 public class LogViewerRecyclerAdapter extends RecyclerView.Adapter<LogViewerRecyclerAdapter.ViewHolder>
         implements Filterable {
     public static final String TAG = LogViewerRecyclerAdapter.class.getSimpleName();
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/logcat/LogcatRecordingService.java b/app/src/main/java/io/github/muntashirakon/AppManager/logcat/LogcatRecordingService.java
index 7d828e815..7df04b53f 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/logcat/LogcatRecordingService.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/logcat/LogcatRecordingService.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (c) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: WTFPL AND GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.logcat;
 
@@ -49,9 +34,8 @@ import io.github.muntashirakon.AppManager.utils.NotificationUtils;
 
 /**
  * Reads logs.
- *
- * @author nolan
  */
+// Copyright 2012 Nolan Lawson
 public class LogcatRecordingService extends ForegroundService {
     public static final String TAG = LogcatRecordingService.class.getSimpleName();
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/logcat/RecordLogDialogActivity.java b/app/src/main/java/io/github/muntashirakon/AppManager/logcat/RecordLogDialogActivity.java
index ec5d5a8a3..eb4368ff0 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/logcat/RecordLogDialogActivity.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/logcat/RecordLogDialogActivity.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (c) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: WTFPL AND GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.logcat;
 
@@ -21,6 +6,7 @@ import android.os.Bundle;
 
 import io.github.muntashirakon.AppManager.BaseActivity;
 
+// Copyright 2012 Nolan Lawson
 public class RecordLogDialogActivity extends BaseActivity {
     public static final String EXTRA_QUERY_SUGGESTIONS = "suggestions";
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/logcat/RecordLogDialogFragment.java b/app/src/main/java/io/github/muntashirakon/AppManager/logcat/RecordLogDialogFragment.java
index 550ee0058..629d30ba7 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/logcat/RecordLogDialogFragment.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/logcat/RecordLogDialogFragment.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (c) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: WTFPL AND GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.logcat;
 
@@ -40,6 +25,7 @@ import io.github.muntashirakon.AppManager.types.TextInputDialogBuilder;
 import io.github.muntashirakon.AppManager.types.TextInputDropdownDialogBuilder;
 import io.github.muntashirakon.AppManager.utils.AppPref;
 
+// Copyright 2012 Nolan Lawson
 public class RecordLogDialogFragment extends DialogFragment {
     public static final String TAG = "RecordLogDialogFragment";
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/logcat/RecordingWidgetProvider.java b/app/src/main/java/io/github/muntashirakon/AppManager/logcat/RecordingWidgetProvider.java
index 68f1cc249..e569de84e 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/logcat/RecordingWidgetProvider.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/logcat/RecordingWidgetProvider.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (c) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: WTFPL AND GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.logcat;
 
@@ -33,6 +18,7 @@ import java.util.Arrays;
 import io.github.muntashirakon.AppManager.BuildConfig;
 import io.github.muntashirakon.AppManager.logs.Log;
 
+// Copyright 2012 Nolan Lawson
 public class RecordingWidgetProvider extends AppWidgetProvider {
     public static final String TAG = RecordingWidgetProvider.class.getSimpleName();
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/logcat/helper/BuildHelper.java b/app/src/main/java/io/github/muntashirakon/AppManager/logcat/helper/BuildHelper.java
index b0381fe4d..5167d22dc 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/logcat/helper/BuildHelper.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/logcat/helper/BuildHelper.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (c) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: WTFPL AND GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.logcat.helper;
 
@@ -29,6 +14,7 @@ import java.util.Map.Entry;
 import java.util.SortedMap;
 import java.util.TreeMap;
 
+// Copyright 2012 Nolan Lawson
 public class BuildHelper {
     // From android.os.Build
     private static final List<String> BUILD_FIELDS = Arrays.asList(
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/logcat/helper/LogcatHelper.java b/app/src/main/java/io/github/muntashirakon/AppManager/logcat/helper/LogcatHelper.java
index a312b9158..641a4c00a 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/logcat/helper/LogcatHelper.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/logcat/helper/LogcatHelper.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (c) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: WTFPL AND GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.logcat.helper;
 
@@ -31,6 +16,7 @@ import java.util.List;
 import io.github.muntashirakon.AppManager.logs.Log;
 import io.github.muntashirakon.AppManager.servermanager.ProcessCompat;
 
+// Copyright 2012 Nolan Lawson
 public class LogcatHelper {
     public static final String TAG = LogcatHelper.class.getSimpleName();
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/logcat/helper/PreferenceHelper.java b/app/src/main/java/io/github/muntashirakon/AppManager/logcat/helper/PreferenceHelper.java
index 7b581c421..4e040a5f2 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/logcat/helper/PreferenceHelper.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/logcat/helper/PreferenceHelper.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (c) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: WTFPL AND GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.logcat.helper;
 
@@ -30,6 +15,7 @@ import java.util.List;
 import io.github.muntashirakon.AppManager.R;
 import io.github.muntashirakon.AppManager.utils.AppPref;
 
+// Copyright 2012 Nolan Lawson
 public class PreferenceHelper {
     private static final String WIDGET_EXISTS_PREFIX = "widget_";
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/logcat/helper/SaveLogHelper.java b/app/src/main/java/io/github/muntashirakon/AppManager/logcat/helper/SaveLogHelper.java
index 071d9b763..3fa2177ea 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/logcat/helper/SaveLogHelper.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/logcat/helper/SaveLogHelper.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (c) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: WTFPL AND GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.logcat.helper;
 
@@ -58,6 +43,7 @@ import io.github.muntashirakon.io.ProxyFile;
 import io.github.muntashirakon.io.ProxyInputStream;
 import io.github.muntashirakon.io.ProxyOutputStream;
 
+// Copyright 2012 Nolan Lawson
 public class SaveLogHelper {
     public static final String TAG = SaveLogHelper.class.getSimpleName();
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/logcat/helper/ServiceHelper.java b/app/src/main/java/io/github/muntashirakon/AppManager/logcat/helper/ServiceHelper.java
index 9082ceebe..fa7c903fc 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/logcat/helper/ServiceHelper.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/logcat/helper/ServiceHelper.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (c) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: WTFPL AND GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.logcat.helper;
 
@@ -29,6 +14,7 @@ import io.github.muntashirakon.AppManager.logcat.LogcatRecordingService;
 import io.github.muntashirakon.AppManager.logcat.reader.LogcatReaderLoader;
 import io.github.muntashirakon.AppManager.logs.Log;
 
+// Copyright 2012 Nolan Lawson
 public class ServiceHelper {
     public static final String TAG = ServiceHelper.class.getSimpleName();
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/logcat/helper/WidgetHelper.java b/app/src/main/java/io/github/muntashirakon/AppManager/logcat/helper/WidgetHelper.java
index 5a4b5c7c3..740f85a0c 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/logcat/helper/WidgetHelper.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/logcat/helper/WidgetHelper.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (c) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: WTFPL AND GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.logcat.helper;
 
@@ -34,6 +19,7 @@ import io.github.muntashirakon.AppManager.logcat.RecordingWidgetProvider;
 import io.github.muntashirakon.AppManager.R;
 import io.github.muntashirakon.AppManager.logs.Log;
 
+// Copyright 2012 Nolan Lawson
 public class WidgetHelper {
     public static void updateWidgets(Context context) {
         int[] appWidgetIds = findAppWidgetIds(context);
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/logcat/reader/AbsLogcatReader.java b/app/src/main/java/io/github/muntashirakon/AppManager/logcat/reader/AbsLogcatReader.java
index d6619781e..a3c272477 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/logcat/reader/AbsLogcatReader.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/logcat/reader/AbsLogcatReader.java
@@ -1,23 +1,9 @@
-/*
- * Copyright (c) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: WTFPL AND GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.logcat.reader;
 
 
+// Copyright 2012 Nolan Lawson
 public abstract class AbsLogcatReader implements LogcatReader {
     protected boolean recordingMode;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/logcat/reader/LogcatReader.java b/app/src/main/java/io/github/muntashirakon/AppManager/logcat/reader/LogcatReader.java
index ce032f96b..6f2bbddae 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/logcat/reader/LogcatReader.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/logcat/reader/LogcatReader.java
@@ -1,25 +1,11 @@
-/*
- * Copyright (c) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: WTFPL AND GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.logcat.reader;
 
 import java.io.IOException;
 import java.util.List;
 
+// Copyright 2012 Nolan Lawson
 public interface LogcatReader {
     /**
      * Read a single log line, ala {@link java.io.BufferedReader#readLine()}.
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/logcat/reader/LogcatReaderLoader.java b/app/src/main/java/io/github/muntashirakon/AppManager/logcat/reader/LogcatReaderLoader.java
index 4c98c9f28..cfa3eeafe 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/logcat/reader/LogcatReaderLoader.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/logcat/reader/LogcatReaderLoader.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (c) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: WTFPL AND GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.logcat.reader;
 
@@ -31,6 +16,7 @@ import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
 
+// Copyright 2012 Nolan Lawson
 public class LogcatReaderLoader implements Parcelable {
     private final Map<Integer, String> lastLines;
     private final boolean recordingMode;
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/logcat/reader/MultipleLogcatReader.java b/app/src/main/java/io/github/muntashirakon/AppManager/logcat/reader/MultipleLogcatReader.java
index 62f314622..311b3bf33 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/logcat/reader/MultipleLogcatReader.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/logcat/reader/MultipleLogcatReader.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (c) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: WTFPL AND GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.logcat.reader;
 
@@ -31,9 +16,8 @@ import io.github.muntashirakon.AppManager.logs.Log;
 
 /**
  * Combines multiple buffered readers into a single reader that merges all input synchronously.
- *
- * @author nolan
  */
+// Copyright 2012 Nolan Lawson
 public class MultipleLogcatReader extends AbsLogcatReader {
     public static final String TAG = MultipleLogcatReader.class.getSimpleName();
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/logcat/reader/ScrubberUtils.java b/app/src/main/java/io/github/muntashirakon/AppManager/logcat/reader/ScrubberUtils.java
index dba16d848..2254d4eba 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/logcat/reader/ScrubberUtils.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/logcat/reader/ScrubberUtils.java
@@ -1,25 +1,10 @@
-/*
- * Copyright (c) 2021 Muntashir Al-Islam
- * Copyright (C) 2014 The CyanogenMod Project
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: Apache-2.0 AND GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.logcat.reader;
 
 import java.util.regex.Pattern;
 
+// Copyright 2014 CyanogenMod Project
 public class ScrubberUtils {
     private static final Pattern EMAIL_PATTERN = Pattern.compile("[a-zA-Z0-9_]+(?:\\.[A-Za-z0-9!#$%&'*+/=?^_`{|}~-]+)*(@|%40)(?!([a-zA-Z0-9]*\\.[a-zA-Z0-9]*\\.[a-zA-Z0-9]*\\.))(?:[A-Za-z0-9](?:[a-zA-Z0-9-]*[A-Za-z0-9])?\\.)+[a-zA-Z](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?");
     private static final Pattern PHONE_NUMBER_PATTERN = Pattern.compile("^(?:(?:\\+?1\\s*(?:[.-]\\s*)?)?(?:\\(\\s*([2-9]1[02-9]|[2-9][02-8]1|[2-9][02-8][02-9])\\s*\\)|([2-9]1[02-9]|[2-9][02-8]1|[2-9][02-8][02-9]))\\s*(?:[.-]\\s*)?)?([2-9]1[02-9]|[2-9][02-9]1|[2-9][02-9]{2})\\s*(?:[.-]\\s*)?([0-9]{4})(?:\\s*(?:#|x\\.?|ext\\.?|extension)\\s*(\\d+))?$");
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/logcat/reader/SingleLogcatReader.java b/app/src/main/java/io/github/muntashirakon/AppManager/logcat/reader/SingleLogcatReader.java
index e8d8bd407..fc4697f75 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/logcat/reader/SingleLogcatReader.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/logcat/reader/SingleLogcatReader.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (c) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: WTFPL AND GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.logcat.reader;
 
@@ -29,6 +14,7 @@ import java.util.List;
 
 import io.github.muntashirakon.AppManager.logs.Log;
 
+// Copyright 2012 Nolan Lawson
 public class SingleLogcatReader extends AbsLogcatReader {
     private final Process logcatProcess;
     private final BufferedReader bufferedReader;
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/logcat/struct/LogLine.java b/app/src/main/java/io/github/muntashirakon/AppManager/logcat/struct/LogLine.java
index e59b5dc6e..c3d8b5e8e 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/logcat/struct/LogLine.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/logcat/struct/LogLine.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (c) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: WTFPL AND GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.logcat.struct;
 
@@ -26,6 +11,7 @@ import java.util.regex.Matcher;
 import java.util.regex.Pattern;
 
 
+// Copyright 2012 Nolan Lawson
 public class LogLine {
     public static final int LOG_FATAL = 15;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/logcat/struct/SavedLog.java b/app/src/main/java/io/github/muntashirakon/AppManager/logcat/struct/SavedLog.java
index 4e0c4fc36..e09b422d1 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/logcat/struct/SavedLog.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/logcat/struct/SavedLog.java
@@ -1,24 +1,10 @@
-/*
- * Copyright (c) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: WTFPL AND GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.logcat.struct;
 
 import java.util.List;
 
+// Copyright 2012 Nolan Lawson
 public class SavedLog {
     private final List<String> logLines;
     private final boolean truncated;
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/logcat/struct/SearchCriteria.java b/app/src/main/java/io/github/muntashirakon/AppManager/logcat/struct/SearchCriteria.java
index d2c3e856e..3e0b3ae3f 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/logcat/struct/SearchCriteria.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/logcat/struct/SearchCriteria.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (c) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: WTFPL AND GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.logcat.struct;
 
@@ -26,6 +11,7 @@ import java.util.Objects;
 import java.util.regex.Matcher;
 import java.util.regex.Pattern;
 
+// Copyright 2012 Nolan Lawson
 public class SearchCriteria {
     public static final String PID_KEYWORD = "pid:";
     public static final String TAG_KEYWORD = "tag:";
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/logcat/struct/SendLogDetails.java b/app/src/main/java/io/github/muntashirakon/AppManager/logcat/struct/SendLogDetails.java
index 039e9b0fb..ec328bd8d 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/logcat/struct/SendLogDetails.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/logcat/struct/SendLogDetails.java
@@ -1,24 +1,10 @@
-/*
- * Copyright (c) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: WTFPL AND GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.logcat.struct;
 
 import java.io.File;
 
+// Copyright 2012 Nolan Lawson
 public class SendLogDetails {
     private String subject;
     private String body;
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/logs/Log.java b/app/src/main/java/io/github/muntashirakon/AppManager/logs/Log.java
index dcfe8bbc4..cd39f2c62 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/logs/Log.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/logs/Log.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.logs;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/main/ApplicationItem.java b/app/src/main/java/io/github/muntashirakon/AppManager/main/ApplicationItem.java
index e7a55505d..e543c81d0 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/main/ApplicationItem.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/main/ApplicationItem.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.main;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/main/ListOptions.java b/app/src/main/java/io/github/muntashirakon/AppManager/main/ListOptions.java
index 53a8f65c8..f6a1b12af 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/main/ListOptions.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/main/ListOptions.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (c) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.main;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/main/MainActivity.java b/app/src/main/java/io/github/muntashirakon/AppManager/main/MainActivity.java
index 69a349a53..40debee2d 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/main/MainActivity.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/main/MainActivity.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: Apache-2.0 AND GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.main;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/main/MainRecyclerAdapter.java b/app/src/main/java/io/github/muntashirakon/AppManager/main/MainRecyclerAdapter.java
index 58f0bbd48..fccd4856d 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/main/MainRecyclerAdapter.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/main/MainRecyclerAdapter.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.main;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/main/MainViewModel.java b/app/src/main/java/io/github/muntashirakon/AppManager/main/MainViewModel.java
index 9d902919a..87b8d6608 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/main/MainViewModel.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/main/MainViewModel.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.main;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/misc/AMExceptionHandler.java b/app/src/main/java/io/github/muntashirakon/AppManager/misc/AMExceptionHandler.java
index 5cb8c4876..45268f3e5 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/misc/AMExceptionHandler.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/misc/AMExceptionHandler.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.misc;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/misc/AlertDialogActivity.java b/app/src/main/java/io/github/muntashirakon/AppManager/misc/AlertDialogActivity.java
index f1e7a54af..e7cf8f9be 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/misc/AlertDialogActivity.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/misc/AlertDialogActivity.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.misc;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/misc/DeviceInfo.java b/app/src/main/java/io/github/muntashirakon/AppManager/misc/DeviceInfo.java
index cdd038036..a259626f7 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/misc/DeviceInfo.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/misc/DeviceInfo.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.misc;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/misc/HelpActivity.java b/app/src/main/java/io/github/muntashirakon/AppManager/misc/HelpActivity.java
index 8bb9bee8a..65675f69f 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/misc/HelpActivity.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/misc/HelpActivity.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.misc;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/misc/OsEnvironment.java b/app/src/main/java/io/github/muntashirakon/AppManager/misc/OsEnvironment.java
index db10da7e5..5d07839c4 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/misc/OsEnvironment.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/misc/OsEnvironment.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: Apache-2.0 AND GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.misc;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/misc/SystemProperties.java b/app/src/main/java/io/github/muntashirakon/AppManager/misc/SystemProperties.java
index c74d165a8..4b7aaa2b8 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/misc/SystemProperties.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/misc/SystemProperties.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.misc;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/misc/VMRuntime.java b/app/src/main/java/io/github/muntashirakon/AppManager/misc/VMRuntime.java
index ce2b80df2..7951c749c 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/misc/VMRuntime.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/misc/VMRuntime.java
@@ -1,18 +1,4 @@
-/*
- * Copyright 2015 Google, Inc.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
+// SPDX-License-Identifier: Apache-2.0
 
 package io.github.muntashirakon.AppManager.misc;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/oneclickops/AppOpCount.java b/app/src/main/java/io/github/muntashirakon/AppManager/oneclickops/AppOpCount.java
index 1e73297eb..801a588f7 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/oneclickops/AppOpCount.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/oneclickops/AppOpCount.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.oneclickops;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/oneclickops/BackupTasksDialogFragment.java b/app/src/main/java/io/github/muntashirakon/AppManager/oneclickops/BackupTasksDialogFragment.java
index a5d067695..f3eeb948f 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/oneclickops/BackupTasksDialogFragment.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/oneclickops/BackupTasksDialogFragment.java
@@ -1,3 +1,5 @@
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 package io.github.muntashirakon.AppManager.oneclickops;
 
 import android.annotation.SuppressLint;
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/oneclickops/ItemCount.java b/app/src/main/java/io/github/muntashirakon/AppManager/oneclickops/ItemCount.java
index c29258361..9e59a34fd 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/oneclickops/ItemCount.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/oneclickops/ItemCount.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.oneclickops;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/oneclickops/OneClickOpsActivity.java b/app/src/main/java/io/github/muntashirakon/AppManager/oneclickops/OneClickOpsActivity.java
index 958165086..bb5a4e0f1 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/oneclickops/OneClickOpsActivity.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/oneclickops/OneClickOpsActivity.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.oneclickops;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/oneclickops/RestoreTasksDialogFragment.java b/app/src/main/java/io/github/muntashirakon/AppManager/oneclickops/RestoreTasksDialogFragment.java
index 8b4878084..decc7f523 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/oneclickops/RestoreTasksDialogFragment.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/oneclickops/RestoreTasksDialogFragment.java
@@ -1,3 +1,5 @@
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 package io.github.muntashirakon.AppManager.oneclickops;
 
 import android.annotation.SuppressLint;
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/profiles/AppsFragment.java b/app/src/main/java/io/github/muntashirakon/AppManager/profiles/AppsFragment.java
index a8e4924ee..293d54f18 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/profiles/AppsFragment.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/profiles/AppsFragment.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.profiles;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/profiles/AppsProfileActivity.java b/app/src/main/java/io/github/muntashirakon/AppManager/profiles/AppsProfileActivity.java
index 1473adb37..c2699dc9c 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/profiles/AppsProfileActivity.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/profiles/AppsProfileActivity.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.profiles;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/profiles/ConfFragment.java b/app/src/main/java/io/github/muntashirakon/AppManager/profiles/ConfFragment.java
index db98dfd0e..94eccab12 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/profiles/ConfFragment.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/profiles/ConfFragment.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.profiles;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/profiles/ConfPreferences.java b/app/src/main/java/io/github/muntashirakon/AppManager/profiles/ConfPreferences.java
index 28c0959a2..5d46a0f13 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/profiles/ConfPreferences.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/profiles/ConfPreferences.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.profiles;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/profiles/ProfileApplierService.java b/app/src/main/java/io/github/muntashirakon/AppManager/profiles/ProfileApplierService.java
index f9d96f689..255d67a11 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/profiles/ProfileApplierService.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/profiles/ProfileApplierService.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.profiles;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/profiles/ProfileManager.java b/app/src/main/java/io/github/muntashirakon/AppManager/profiles/ProfileManager.java
index 24c8bee64..aca3203a1 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/profiles/ProfileManager.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/profiles/ProfileManager.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.profiles;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/profiles/ProfileMetaManager.java b/app/src/main/java/io/github/muntashirakon/AppManager/profiles/ProfileMetaManager.java
index d8ee84e03..b918ba62b 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/profiles/ProfileMetaManager.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/profiles/ProfileMetaManager.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.profiles;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/profiles/ProfileViewModel.java b/app/src/main/java/io/github/muntashirakon/AppManager/profiles/ProfileViewModel.java
index c8bc008e6..ba6934192 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/profiles/ProfileViewModel.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/profiles/ProfileViewModel.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.profiles;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/profiles/ProfilesActivity.java b/app/src/main/java/io/github/muntashirakon/AppManager/profiles/ProfilesActivity.java
index d22280877..8c54abc66 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/profiles/ProfilesActivity.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/profiles/ProfilesActivity.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.profiles;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/profiles/ProfilesViewModel.java b/app/src/main/java/io/github/muntashirakon/AppManager/profiles/ProfilesViewModel.java
index b9a986846..9d0faa90b 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/profiles/ProfilesViewModel.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/profiles/ProfilesViewModel.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.profiles;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/rules/PseudoRules.java b/app/src/main/java/io/github/muntashirakon/AppManager/rules/PseudoRules.java
index 5aa2bc6ec..c287bce2f 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/rules/PseudoRules.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/rules/PseudoRules.java
@@ -1,3 +1,5 @@
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 package io.github.muntashirakon.AppManager.rules;
 
 import android.content.Context;
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/rules/RulesExporter.java b/app/src/main/java/io/github/muntashirakon/AppManager/rules/RulesExporter.java
index 516217a79..c00014089 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/rules/RulesExporter.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/rules/RulesExporter.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.rules;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/rules/RulesImporter.java b/app/src/main/java/io/github/muntashirakon/AppManager/rules/RulesImporter.java
index cc0a0fa1b..5018f5d54 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/rules/RulesImporter.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/rules/RulesImporter.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.rules;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/rules/RulesStorageManager.java b/app/src/main/java/io/github/muntashirakon/AppManager/rules/RulesStorageManager.java
index dfff7ed55..3a267b337 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/rules/RulesStorageManager.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/rules/RulesStorageManager.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.rules;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/rules/RulesTypeSelectionDialogFragment.java b/app/src/main/java/io/github/muntashirakon/AppManager/rules/RulesTypeSelectionDialogFragment.java
index fa0000065..0b3fd5bab 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/rules/RulesTypeSelectionDialogFragment.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/rules/RulesTypeSelectionDialogFragment.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.rules;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/rules/compontents/ComponentUtils.java b/app/src/main/java/io/github/muntashirakon/AppManager/rules/compontents/ComponentUtils.java
index b796f3931..a8586881b 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/rules/compontents/ComponentUtils.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/rules/compontents/ComponentUtils.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.rules.compontents;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/rules/compontents/ComponentsBlocker.java b/app/src/main/java/io/github/muntashirakon/AppManager/rules/compontents/ComponentsBlocker.java
index 85a5ffc9d..e2910ebf5 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/rules/compontents/ComponentsBlocker.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/rules/compontents/ComponentsBlocker.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.rules.compontents;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/rules/compontents/ExternalComponentsImporter.java b/app/src/main/java/io/github/muntashirakon/AppManager/rules/compontents/ExternalComponentsImporter.java
index 580155753..7803ab283 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/rules/compontents/ExternalComponentsImporter.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/rules/compontents/ExternalComponentsImporter.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.rules.compontents;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/runner/AdbShellRunner.java b/app/src/main/java/io/github/muntashirakon/AppManager/runner/AdbShellRunner.java
index d12ba32c9..9a1856918 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/runner/AdbShellRunner.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/runner/AdbShellRunner.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.runner;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/runner/RootShellRunner.java b/app/src/main/java/io/github/muntashirakon/AppManager/runner/RootShellRunner.java
index ed5e0b91e..6be91b9da 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/runner/RootShellRunner.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/runner/RootShellRunner.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.runner;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/runner/Runner.java b/app/src/main/java/io/github/muntashirakon/AppManager/runner/Runner.java
index 0e579f889..3acaee5b9 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/runner/Runner.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/runner/Runner.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.runner;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/runner/RunnerUtils.java b/app/src/main/java/io/github/muntashirakon/AppManager/runner/RunnerUtils.java
index dd2b8bc8c..7bc4a7da4 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/runner/RunnerUtils.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/runner/RunnerUtils.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.runner;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/runner/UserShellRunner.java b/app/src/main/java/io/github/muntashirakon/AppManager/runner/UserShellRunner.java
index bbb7ec2e7..3f6326916 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/runner/UserShellRunner.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/runner/UserShellRunner.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.runner;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/runningapps/AppProcessItem.java b/app/src/main/java/io/github/muntashirakon/AppManager/runningapps/AppProcessItem.java
index 818517531..f1cadb2e6 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/runningapps/AppProcessItem.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/runningapps/AppProcessItem.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.runningapps;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/runningapps/ProcessItem.java b/app/src/main/java/io/github/muntashirakon/AppManager/runningapps/ProcessItem.java
index ed68a64a2..b27697905 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/runningapps/ProcessItem.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/runningapps/ProcessItem.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.runningapps;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/runningapps/ProcessParser.java b/app/src/main/java/io/github/muntashirakon/AppManager/runningapps/ProcessParser.java
index 6fe718a6e..9eae5c002 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/runningapps/ProcessParser.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/runningapps/ProcessParser.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.runningapps;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/runningapps/RunningAppsActivity.java b/app/src/main/java/io/github/muntashirakon/AppManager/runningapps/RunningAppsActivity.java
index 1f0c590cf..219f2ca2e 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/runningapps/RunningAppsActivity.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/runningapps/RunningAppsActivity.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.runningapps;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/runningapps/RunningAppsAdapter.java b/app/src/main/java/io/github/muntashirakon/AppManager/runningapps/RunningAppsAdapter.java
index 0e715ee85..ab7c129ac 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/runningapps/RunningAppsAdapter.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/runningapps/RunningAppsAdapter.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.runningapps;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/runningapps/RunningAppsViewModel.java b/app/src/main/java/io/github/muntashirakon/AppManager/runningapps/RunningAppsViewModel.java
index a1d5cf09a..2fb1f8ffd 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/runningapps/RunningAppsViewModel.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/runningapps/RunningAppsViewModel.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.runningapps;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/scanner/ClassListingActivity.java b/app/src/main/java/io/github/muntashirakon/AppManager/scanner/ClassListingActivity.java
index 294b8d1cd..e894e579d 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/scanner/ClassListingActivity.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/scanner/ClassListingActivity.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: Apache-2.0 AND GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.scanner;
 
@@ -39,6 +24,7 @@ import java.util.Collections;
 import java.util.List;
 import java.util.Locale;
 
+// Copyright 2015 Google, Inc.
 public class ClassListingActivity extends BaseActivity implements SearchView.OnQueryTextListener {
     public static final String EXTRA_APP_NAME = "EXTRA_APP_NAME";
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/scanner/ClassViewerActivity.java b/app/src/main/java/io/github/muntashirakon/AppManager/scanner/ClassViewerActivity.java
index 2fac44ec3..75fb1d390 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/scanner/ClassViewerActivity.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/scanner/ClassViewerActivity.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: Apache-2.0 AND GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.scanner;
 
@@ -44,6 +29,7 @@ import androidx.core.content.ContextCompat;
 import io.github.muntashirakon.AppManager.BaseActivity;
 import io.github.muntashirakon.AppManager.R;
 
+// Copyright 2015 Google, Inc.
 public class ClassViewerActivity extends BaseActivity {
     public static final String EXTRA_APP_NAME = "app_name";
     public static final String EXTRA_CLASS_NAME = "class_name";
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/scanner/DexClasses.java b/app/src/main/java/io/github/muntashirakon/AppManager/scanner/DexClasses.java
index ee517bc62..7c55166dd 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/scanner/DexClasses.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/scanner/DexClasses.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.scanner;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/scanner/ScannerActivity.java b/app/src/main/java/io/github/muntashirakon/AppManager/scanner/ScannerActivity.java
index d34e374b9..a27aa8fc7 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/scanner/ScannerActivity.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/scanner/ScannerActivity.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: Apache-2.0 AND GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.scanner;
 
@@ -80,6 +65,7 @@ import io.github.muntashirakon.AppManager.utils.UIUtils;
 import static io.github.muntashirakon.AppManager.utils.UIUtils.getPrimaryText;
 import static io.github.muntashirakon.AppManager.utils.UIUtils.getSmallerText;
 
+// Copyright 2015 Google, Inc.
 public class ScannerActivity extends BaseActivity {
     public static final String EXTRA_IS_EXTERNAL = "is_external";
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/scanner/ScannerViewModel.java b/app/src/main/java/io/github/muntashirakon/AppManager/scanner/ScannerViewModel.java
index 4233bc8a3..92080f366 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/scanner/ScannerViewModel.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/scanner/ScannerViewModel.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.scanner;
 
@@ -22,6 +7,7 @@ import android.app.Application;
 import androidx.annotation.NonNull;
 import androidx.lifecycle.AndroidViewModel;
 
+
 public class ScannerViewModel extends AndroidViewModel {
 
     public ScannerViewModel(@NonNull Application application) {
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/scanner/reflector/ClassTypeAlgorithm.java b/app/src/main/java/io/github/muntashirakon/AppManager/scanner/reflector/ClassTypeAlgorithm.java
index e73e5feeb..0035fd53b 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/scanner/reflector/ClassTypeAlgorithm.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/scanner/reflector/ClassTypeAlgorithm.java
@@ -1,18 +1,4 @@
-/*
- * Copyright 2015 Google, Inc.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
+// SPDX-License-Identifier: Apache-2.0 AND GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.scanner.reflector;
 
@@ -20,6 +6,7 @@ import java.util.Hashtable;
 
 import androidx.annotation.NonNull;
 
+// Copyright 2015 Google, Inc.
 class ClassTypeAlgorithm {
     private ClassTypeAlgorithm() {}
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/scanner/reflector/Reflector.java b/app/src/main/java/io/github/muntashirakon/AppManager/scanner/reflector/Reflector.java
index 7ee4903e2..0e680bebb 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/scanner/reflector/Reflector.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/scanner/reflector/Reflector.java
@@ -1,18 +1,4 @@
-/*
- * Copyright 2015 Google, Inc.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
+// SPDX-License-Identifier: Apache-2.0 AND GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.scanner.reflector;
 
@@ -29,6 +15,7 @@ import java.util.Set;
 
 import androidx.annotation.NonNull;
 
+// Copyright 2015 Google, Inc.
 @SuppressWarnings("rawtypes")
 public class Reflector {
     private final Class clazz;
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/servermanager/ActivityManagerCompat.java b/app/src/main/java/io/github/muntashirakon/AppManager/servermanager/ActivityManagerCompat.java
index 59802311b..2aac4843e 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/servermanager/ActivityManagerCompat.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/servermanager/ActivityManagerCompat.java
@@ -1,3 +1,5 @@
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 package io.github.muntashirakon.AppManager.servermanager;
 
 import android.annotation.UserIdInt;
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/servermanager/ApiSupporter.java b/app/src/main/java/io/github/muntashirakon/AppManager/servermanager/ApiSupporter.java
index 2443f256b..268970df8 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/servermanager/ApiSupporter.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/servermanager/ApiSupporter.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: MIT AND GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.servermanager;
 
@@ -21,6 +6,7 @@ import io.github.muntashirakon.AppManager.server.common.CallerResult;
 import io.github.muntashirakon.AppManager.server.common.Shell;
 import io.github.muntashirakon.AppManager.server.common.ShellCaller;
 
+// Copyright 2018 Zheng Li
 public final class ApiSupporter {
 
     private ApiSupporter() {
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/servermanager/AppOpsConfigProvider.java b/app/src/main/java/io/github/muntashirakon/AppManager/servermanager/AppOpsConfigProvider.java
index cc9d756ae..df94b3b77 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/servermanager/AppOpsConfigProvider.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/servermanager/AppOpsConfigProvider.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: MIT
 
 package io.github.muntashirakon.AppManager.servermanager;
 
@@ -31,6 +16,7 @@ import io.github.muntashirakon.AppManager.BuildConfig;
 import io.github.muntashirakon.AppManager.users.Users;
 import io.github.muntashirakon.AppManager.utils.ContextUtils;
 
+// Copyright 2017 Zheng Li
 public class AppOpsConfigProvider extends ContentProvider {
     private static final UriMatcher uriMatcher;
     private static final String AUTHORITY = BuildConfig.APPLICATION_ID + ".provider.local";
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/servermanager/ApplicationInfoCompat.java b/app/src/main/java/io/github/muntashirakon/AppManager/servermanager/ApplicationInfoCompat.java
index 009d0550b..24f003fe7 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/servermanager/ApplicationInfoCompat.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/servermanager/ApplicationInfoCompat.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (c) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.servermanager;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/servermanager/AssetsUtils.java b/app/src/main/java/io/github/muntashirakon/AppManager/servermanager/AssetsUtils.java
index 6d43f19dc..4cbd043a6 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/servermanager/AssetsUtils.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/servermanager/AssetsUtils.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: MIT AND GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.servermanager;
 
@@ -37,6 +22,7 @@ import io.github.muntashirakon.AppManager.server.common.Constants;
 import io.github.muntashirakon.AppManager.utils.IOUtils;
 import io.github.muntashirakon.AppManager.utils.Utils;
 
+// Copyright 2016 Zheng Li
 @SuppressWarnings("ResultOfMethodCallIgnored")
 class AssetsUtils {
     public static void copyFile(@NonNull Context context, String fileName, File destFile, boolean force) {
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/servermanager/LocalServer.java b/app/src/main/java/io/github/muntashirakon/AppManager/servermanager/LocalServer.java
index a13c6606d..a683cf53b 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/servermanager/LocalServer.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/servermanager/LocalServer.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: MIT AND GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.servermanager;
 
@@ -39,6 +24,7 @@ import java.io.IOException;
 import java.net.ServerSocket;
 import java.net.SocketTimeoutException;
 
+// Copyright 2016 Zheng Li
 public class LocalServer {
     @GuardedBy("lockObject")
     private static final Object lockObject = new Object();
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/servermanager/LocalServerManager.java b/app/src/main/java/io/github/muntashirakon/AppManager/servermanager/LocalServerManager.java
index 69eb43c0e..ae2ea64b9 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/servermanager/LocalServerManager.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/servermanager/LocalServerManager.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: MIT AND GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.servermanager;
 
@@ -42,6 +27,7 @@ import io.github.muntashirakon.AppManager.server.common.DataTransmission;
 import io.github.muntashirakon.AppManager.server.common.ParcelableUtil;
 import io.github.muntashirakon.AppManager.utils.AppPref;
 
+// Copyright 2016 Zheng Li
 class LocalServerManager {
     private static final String TAG = "LocalServerManager";
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/servermanager/NetworkPolicyManagerCompat.java b/app/src/main/java/io/github/muntashirakon/AppManager/servermanager/NetworkPolicyManagerCompat.java
index cadee123a..d20cbd803 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/servermanager/NetworkPolicyManagerCompat.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/servermanager/NetworkPolicyManagerCompat.java
@@ -1,3 +1,5 @@
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 package io.github.muntashirakon.AppManager.servermanager;
 
 import android.content.Context;
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/servermanager/PackageManagerCompat.java b/app/src/main/java/io/github/muntashirakon/AppManager/servermanager/PackageManagerCompat.java
index eeee4840a..5dfd79a40 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/servermanager/PackageManagerCompat.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/servermanager/PackageManagerCompat.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.servermanager;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/servermanager/PermissionCompat.java b/app/src/main/java/io/github/muntashirakon/AppManager/servermanager/PermissionCompat.java
index 44855bac8..e8d1a969d 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/servermanager/PermissionCompat.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/servermanager/PermissionCompat.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (c) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.servermanager;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/servermanager/ProcessCompat.java b/app/src/main/java/io/github/muntashirakon/AppManager/servermanager/ProcessCompat.java
index d1b540e58..981671d60 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/servermanager/ProcessCompat.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/servermanager/ProcessCompat.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (c) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.servermanager;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/servermanager/ServerConfig.java b/app/src/main/java/io/github/muntashirakon/AppManager/servermanager/ServerConfig.java
index bf9025500..980f2726e 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/servermanager/ServerConfig.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/servermanager/ServerConfig.java
@@ -1,3 +1,5 @@
+// SPDX-License-Identifier: MIT AND GPL-3.0-or-later
+
 package io.github.muntashirakon.AppManager.servermanager;
 
 import android.content.Context;
@@ -13,6 +15,7 @@ import java.net.Inet4Address;
 import io.github.muntashirakon.AppManager.AppManager;
 import io.github.muntashirakon.AppManager.utils.IOUtils;
 
+// Copyright 2016 Zheng Li
 public class ServerConfig {
     public static final int DEFAULT_ADB_PORT = 5555;
     static String SOCKET_PATH = "am_socket";
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/servermanager/ServerStatusChangeReceiver.java b/app/src/main/java/io/github/muntashirakon/AppManager/servermanager/ServerStatusChangeReceiver.java
index 6f76bcbf9..bd980fb42 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/servermanager/ServerStatusChangeReceiver.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/servermanager/ServerStatusChangeReceiver.java
@@ -1,3 +1,5 @@
+// SPDX-License-Identifier: MIT
+
 package io.github.muntashirakon.AppManager.servermanager;
 
 import android.content.BroadcastReceiver;
@@ -8,6 +10,7 @@ import androidx.annotation.NonNull;
 import io.github.muntashirakon.AppManager.logs.Log;
 import io.github.muntashirakon.AppManager.server.common.Actions;
 
+// Copyright 2016 Zheng Li
 public class ServerStatusChangeReceiver extends BroadcastReceiver {
     private static final String TAG = "ServerStatusChangeRecei";
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/settings/ApkSigningPreferences.java b/app/src/main/java/io/github/muntashirakon/AppManager/settings/ApkSigningPreferences.java
index 9ec8786ad..079530099 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/settings/ApkSigningPreferences.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/settings/ApkSigningPreferences.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.settings;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/settings/BackupRestorePreferences.java b/app/src/main/java/io/github/muntashirakon/AppManager/settings/BackupRestorePreferences.java
index 88da81234..afd26d1e9 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/settings/BackupRestorePreferences.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/settings/BackupRestorePreferences.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.settings;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/settings/FeatureController.java b/app/src/main/java/io/github/muntashirakon/AppManager/settings/FeatureController.java
index 870e801eb..be0557fff 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/settings/FeatureController.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/settings/FeatureController.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (c) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.settings;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/settings/ImportExportRulesDialogFragment.java b/app/src/main/java/io/github/muntashirakon/AppManager/settings/ImportExportRulesDialogFragment.java
index bddd3e486..80a308340 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/settings/ImportExportRulesDialogFragment.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/settings/ImportExportRulesDialogFragment.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.settings;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/settings/InstallerPreferences.java b/app/src/main/java/io/github/muntashirakon/AppManager/settings/InstallerPreferences.java
index 587da2534..817fea0fd 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/settings/InstallerPreferences.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/settings/InstallerPreferences.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (c) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.settings;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/settings/LogViewerPreferences.java b/app/src/main/java/io/github/muntashirakon/AppManager/settings/LogViewerPreferences.java
index fc6a16e38..47a96dab3 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/settings/LogViewerPreferences.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/settings/LogViewerPreferences.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (c) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.settings;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/settings/MainPreferences.java b/app/src/main/java/io/github/muntashirakon/AppManager/settings/MainPreferences.java
index 11a7a4ad6..2e5a748cf 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/settings/MainPreferences.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/settings/MainPreferences.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.settings;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/settings/RulesPreferences.java b/app/src/main/java/io/github/muntashirakon/AppManager/settings/RulesPreferences.java
index 1214fccc7..56f8e3bc3 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/settings/RulesPreferences.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/settings/RulesPreferences.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (c) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.settings;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/settings/SettingsActivity.java b/app/src/main/java/io/github/muntashirakon/AppManager/settings/SettingsActivity.java
index c8e09891a..d224b14b7 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/settings/SettingsActivity.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/settings/SettingsActivity.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.settings;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/settings/SettingsDataStore.java b/app/src/main/java/io/github/muntashirakon/AppManager/settings/SettingsDataStore.java
index ce8c06f80..56df2944a 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/settings/SettingsDataStore.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/settings/SettingsDataStore.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.settings;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/settings/crypto/AESCryptoSelectionDialogFragment.java b/app/src/main/java/io/github/muntashirakon/AppManager/settings/crypto/AESCryptoSelectionDialogFragment.java
index f09fd6fea..b2af181c2 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/settings/crypto/AESCryptoSelectionDialogFragment.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/settings/crypto/AESCryptoSelectionDialogFragment.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (c) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.settings.crypto;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/settings/crypto/ImportExportKeyStoreDialogFragment.java b/app/src/main/java/io/github/muntashirakon/AppManager/settings/crypto/ImportExportKeyStoreDialogFragment.java
index de6b4a6ae..38258717d 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/settings/crypto/ImportExportKeyStoreDialogFragment.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/settings/crypto/ImportExportKeyStoreDialogFragment.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (c) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.settings.crypto;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/settings/crypto/KeyPairGeneratorDialogFragment.java b/app/src/main/java/io/github/muntashirakon/AppManager/settings/crypto/KeyPairGeneratorDialogFragment.java
index ba0b8ffae..465dbb8da 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/settings/crypto/KeyPairGeneratorDialogFragment.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/settings/crypto/KeyPairGeneratorDialogFragment.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (c) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.settings.crypto;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/settings/crypto/KeyPairImporterDialogFragment.java b/app/src/main/java/io/github/muntashirakon/AppManager/settings/crypto/KeyPairImporterDialogFragment.java
index 0fbb0bbfb..e00b136de 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/settings/crypto/KeyPairImporterDialogFragment.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/settings/crypto/KeyPairImporterDialogFragment.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (c) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.settings.crypto;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/settings/crypto/OpenPgpKeySelectionDialogFragment.java b/app/src/main/java/io/github/muntashirakon/AppManager/settings/crypto/OpenPgpKeySelectionDialogFragment.java
index 9cdfaeaf7..1630a39aa 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/settings/crypto/OpenPgpKeySelectionDialogFragment.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/settings/crypto/OpenPgpKeySelectionDialogFragment.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (c) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.settings.crypto;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/settings/crypto/RSACryptoSelectionDialogFragment.java b/app/src/main/java/io/github/muntashirakon/AppManager/settings/crypto/RSACryptoSelectionDialogFragment.java
index cd1bb1b5b..cbf71c355 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/settings/crypto/RSACryptoSelectionDialogFragment.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/settings/crypto/RSACryptoSelectionDialogFragment.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (c) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.settings.crypto;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/sharedpref/EditPrefItemFragment.java b/app/src/main/java/io/github/muntashirakon/AppManager/sharedpref/EditPrefItemFragment.java
index 8b862cd40..44188a5b2 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/sharedpref/EditPrefItemFragment.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/sharedpref/EditPrefItemFragment.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.sharedpref;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/sharedpref/SharedPrefsActivity.java b/app/src/main/java/io/github/muntashirakon/AppManager/sharedpref/SharedPrefsActivity.java
index c5bd71557..0d3819268 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/sharedpref/SharedPrefsActivity.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/sharedpref/SharedPrefsActivity.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.sharedpref;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/sysconfig/SysConfigActivity.java b/app/src/main/java/io/github/muntashirakon/AppManager/sysconfig/SysConfigActivity.java
index 6740d5ccc..2be28b091 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/sysconfig/SysConfigActivity.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/sysconfig/SysConfigActivity.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.sysconfig;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/sysconfig/SysConfigInfo.java b/app/src/main/java/io/github/muntashirakon/AppManager/sysconfig/SysConfigInfo.java
index 6a7d73e3a..072facf34 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/sysconfig/SysConfigInfo.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/sysconfig/SysConfigInfo.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.sysconfig;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/sysconfig/SysConfigType.java b/app/src/main/java/io/github/muntashirakon/AppManager/sysconfig/SysConfigType.java
index 42917c688..35813c412 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/sysconfig/SysConfigType.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/sysconfig/SysConfigType.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.sysconfig;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/sysconfig/SysConfigWrapper.java b/app/src/main/java/io/github/muntashirakon/AppManager/sysconfig/SysConfigWrapper.java
index d829dd716..66572ba15 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/sysconfig/SysConfigWrapper.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/sysconfig/SysConfigWrapper.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation: break; either version 3 of the License: break; or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful: break;
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not: break; see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.sysconfig;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/sysconfig/SystemConfig.java b/app/src/main/java/io/github/muntashirakon/AppManager/sysconfig/SystemConfig.java
index 230f40bf1..a8ac60066 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/sysconfig/SystemConfig.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/sysconfig/SystemConfig.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: Apache-2.0 AND GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.sysconfig;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/types/AnyFilterArrayAdapter.java b/app/src/main/java/io/github/muntashirakon/AppManager/types/AnyFilterArrayAdapter.java
index 814dba109..d4964c323 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/types/AnyFilterArrayAdapter.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/types/AnyFilterArrayAdapter.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.types;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/types/EmptySpan.java b/app/src/main/java/io/github/muntashirakon/AppManager/types/EmptySpan.java
index 9e3253c42..5753bc2c0 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/types/EmptySpan.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/types/EmptySpan.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.types;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/types/ForegroundService.java b/app/src/main/java/io/github/muntashirakon/AppManager/types/ForegroundService.java
index 75400124b..a1363e359 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/types/ForegroundService.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/types/ForegroundService.java
@@ -1,3 +1,4 @@
+// SPDX-License-Identifier: GPL-3.0-or-later
 package io.github.muntashirakon.AppManager.types;
 
 import android.app.Service;
@@ -15,6 +16,7 @@ import androidx.annotation.Nullable;
 
 public abstract class ForegroundService extends Service {
     private final String name;
+    @SuppressWarnings("FieldCanBeLocal")
     private Looper serviceLooper;
     private ServiceHandler serviceHandler;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/types/FreshFile.java b/app/src/main/java/io/github/muntashirakon/AppManager/types/FreshFile.java
index 757ef4eb0..c8c28d2f0 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/types/FreshFile.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/types/FreshFile.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.types;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/types/FullscreenDialog.java b/app/src/main/java/io/github/muntashirakon/AppManager/types/FullscreenDialog.java
index 153788ef1..97e7085ea 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/types/FullscreenDialog.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/types/FullscreenDialog.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.types;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/types/HyperlinkTextView.java b/app/src/main/java/io/github/muntashirakon/AppManager/types/HyperlinkTextView.java
index 6245cfe5b..820ec7222 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/types/HyperlinkTextView.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/types/HyperlinkTextView.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later OR Apache-2.0
 
 package io.github.muntashirakon.AppManager.types;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/types/IconLoaderThread.java b/app/src/main/java/io/github/muntashirakon/AppManager/types/IconLoaderThread.java
index 0905dcdad..fb630e570 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/types/IconLoaderThread.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/types/IconLoaderThread.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.types;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/types/NoFilterArrayAdapter.java b/app/src/main/java/io/github/muntashirakon/AppManager/types/NoFilterArrayAdapter.java
index de2c7397c..50d2fa8c8 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/types/NoFilterArrayAdapter.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/types/NoFilterArrayAdapter.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.types;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/types/NumericSpan.java b/app/src/main/java/io/github/muntashirakon/AppManager/types/NumericSpan.java
index 3f2600fd8..e595dae8a 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/types/NumericSpan.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/types/NumericSpan.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.types;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/types/PackageChangeReceiver.java b/app/src/main/java/io/github/muntashirakon/AppManager/types/PackageChangeReceiver.java
index bf2a84a43..13c1c0531 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/types/PackageChangeReceiver.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/types/PackageChangeReceiver.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.types;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/types/PackageSizeInfo.java b/app/src/main/java/io/github/muntashirakon/AppManager/types/PackageSizeInfo.java
index 0f10fb24d..3b78b33f8 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/types/PackageSizeInfo.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/types/PackageSizeInfo.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (c) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.types;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/types/RadioGroupGridLayout.java b/app/src/main/java/io/github/muntashirakon/AppManager/types/RadioGroupGridLayout.java
index fc727e72b..65d0bee86 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/types/RadioGroupGridLayout.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/types/RadioGroupGridLayout.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (c) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.types;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/types/RecyclerViewWithEmptyView.java b/app/src/main/java/io/github/muntashirakon/AppManager/types/RecyclerViewWithEmptyView.java
index 728a79632..f456938b4 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/types/RecyclerViewWithEmptyView.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/types/RecyclerViewWithEmptyView.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.types;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/types/ScrollableDialogBuilder.java b/app/src/main/java/io/github/muntashirakon/AppManager/types/ScrollableDialogBuilder.java
index bbaae565e..55f5144d6 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/types/ScrollableDialogBuilder.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/types/ScrollableDialogBuilder.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *                            
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *                            
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *                            
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.types;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/types/SearchableMultiChoiceDialogBuilder.java b/app/src/main/java/io/github/muntashirakon/AppManager/types/SearchableMultiChoiceDialogBuilder.java
index 096f1712c..80e88c18a 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/types/SearchableMultiChoiceDialogBuilder.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/types/SearchableMultiChoiceDialogBuilder.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.types;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/types/TextInputDialogBuilder.java b/app/src/main/java/io/github/muntashirakon/AppManager/types/TextInputDialogBuilder.java
index e29591724..4fc5872f9 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/types/TextInputDialogBuilder.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/types/TextInputDialogBuilder.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.types;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/types/TextInputDropdownDialogBuilder.java b/app/src/main/java/io/github/muntashirakon/AppManager/types/TextInputDropdownDialogBuilder.java
index d383c2f5a..decbf4673 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/types/TextInputDropdownDialogBuilder.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/types/TextInputDropdownDialogBuilder.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *                            
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *                            
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *                            
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.types;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/types/UserPackagePair.java b/app/src/main/java/io/github/muntashirakon/AppManager/types/UserPackagePair.java
index 861675c50..23357bba4 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/types/UserPackagePair.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/types/UserPackagePair.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.types;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/uri/UriManager.java b/app/src/main/java/io/github/muntashirakon/AppManager/uri/UriManager.java
index 17c4b833f..bd75b6705 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/uri/UriManager.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/uri/UriManager.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: Apache-2.0 AND GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.uri;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/usage/AppUsageActivity.java b/app/src/main/java/io/github/muntashirakon/AppManager/usage/AppUsageActivity.java
index 9cc328602..e9d1895c5 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/usage/AppUsageActivity.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/usage/AppUsageActivity.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.usage;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/usage/AppUsageDetailsDialogFragment.java b/app/src/main/java/io/github/muntashirakon/AppManager/usage/AppUsageDetailsDialogFragment.java
index ddf3f9e02..869c8a0f4 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/usage/AppUsageDetailsDialogFragment.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/usage/AppUsageDetailsDialogFragment.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.usage;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/usage/AppUsageStatsManager.java b/app/src/main/java/io/github/muntashirakon/AppManager/usage/AppUsageStatsManager.java
index 19440b3f2..6453a5a24 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/usage/AppUsageStatsManager.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/usage/AppUsageStatsManager.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.usage;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/usage/PackageUsageInfo.java b/app/src/main/java/io/github/muntashirakon/AppManager/usage/PackageUsageInfo.java
index 84e3aa6ee..2cca8d90e 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/usage/PackageUsageInfo.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/usage/PackageUsageInfo.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (c) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.usage;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/usage/UsageUtils.java b/app/src/main/java/io/github/muntashirakon/AppManager/usage/UsageUtils.java
index 9bb18316c..cad7f5ebc 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/usage/UsageUtils.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/usage/UsageUtils.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.usage;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/users/Users.java b/app/src/main/java/io/github/muntashirakon/AppManager/users/Users.java
index 2ad3b5e61..3c393df91 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/users/Users.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/users/Users.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (c) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.users;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/utils/AppPref.java b/app/src/main/java/io/github/muntashirakon/AppManager/utils/AppPref.java
index c0f63c5ab..eb6cc2c79 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/utils/AppPref.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/utils/AppPref.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.utils;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/utils/ArrayUtils.java b/app/src/main/java/io/github/muntashirakon/AppManager/utils/ArrayUtils.java
index 012565a6a..88e68cfa4 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/utils/ArrayUtils.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/utils/ArrayUtils.java
@@ -1,18 +1,4 @@
-/*
- * Copyright (C) 2006 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
+// SPDX-License-Identifier: Apache-2.0
 
 package io.github.muntashirakon.AppManager.utils;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/utils/BetterActivityResult.java b/app/src/main/java/io/github/muntashirakon/AppManager/utils/BetterActivityResult.java
index a77b8a4df..cb1a5f566 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/utils/BetterActivityResult.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/utils/BetterActivityResult.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later OR Apache-2.0
 
 package io.github.muntashirakon.AppManager.utils;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/utils/ContextUtils.java b/app/src/main/java/io/github/muntashirakon/AppManager/utils/ContextUtils.java
index 457142a00..037422e65 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/utils/ContextUtils.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/utils/ContextUtils.java
@@ -1,19 +1,4 @@
-/*
- * Copyright 2020 John "topjohnwu" Wu
- * Copyright 2020 Muntashir Al-Islam
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
+// SPDX-License-Identifier: Apache-2.0 AND GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.utils;
 
@@ -26,6 +11,7 @@ import com.topjohnwu.superuser.internal.UiThreadHandler;
 
 import io.github.muntashirakon.AppManager.logs.Log;
 
+// Copyright 2020 John "topjohnwu" Wu
 public final class ContextUtils {
 
     @SuppressLint("StaticFieldLeak")
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/utils/DateUtils.java b/app/src/main/java/io/github/muntashirakon/AppManager/utils/DateUtils.java
index 76c1c1cb8..86f67cfe6 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/utils/DateUtils.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/utils/DateUtils.java
@@ -1,3 +1,5 @@
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 package io.github.muntashirakon.AppManager.utils;
 
 import java.text.DateFormat;
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/utils/DigestUtils.java b/app/src/main/java/io/github/muntashirakon/AppManager/utils/DigestUtils.java
index 250cb1c50..1c6ad3ec0 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/utils/DigestUtils.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/utils/DigestUtils.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.utils;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/utils/IOUtils.java b/app/src/main/java/io/github/muntashirakon/AppManager/utils/IOUtils.java
index d5bcf0e18..91c6701db 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/utils/IOUtils.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/utils/IOUtils.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.utils;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/utils/JSONUtils.java b/app/src/main/java/io/github/muntashirakon/AppManager/utils/JSONUtils.java
index 14bf9700c..4f98c6a67 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/utils/JSONUtils.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/utils/JSONUtils.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.utils;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/utils/KeyStoreUtils.java b/app/src/main/java/io/github/muntashirakon/AppManager/utils/KeyStoreUtils.java
index a7fadb9cd..0345d5241 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/utils/KeyStoreUtils.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/utils/KeyStoreUtils.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.utils;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/utils/LangUtils.java b/app/src/main/java/io/github/muntashirakon/AppManager/utils/LangUtils.java
index dee8930f4..99faae00d 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/utils/LangUtils.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/utils/LangUtils.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later OR Apache-2.0
 
 package io.github.muntashirakon.AppManager.utils;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/utils/ListItemCreator.java b/app/src/main/java/io/github/muntashirakon/AppManager/utils/ListItemCreator.java
index 81a597e4f..dde143380 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/utils/ListItemCreator.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/utils/ListItemCreator.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.utils;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/utils/MagiskUtils.java b/app/src/main/java/io/github/muntashirakon/AppManager/utils/MagiskUtils.java
index 7ca4be519..8255aa940 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/utils/MagiskUtils.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/utils/MagiskUtils.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.utils;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/utils/MiuiUtils.java b/app/src/main/java/io/github/muntashirakon/AppManager/utils/MiuiUtils.java
index aa43446e8..275decc11 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/utils/MiuiUtils.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/utils/MiuiUtils.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.utils;
 
@@ -25,6 +10,7 @@ import android.text.TextUtils;
 import androidx.annotation.NonNull;
 import io.github.muntashirakon.AppManager.misc.SystemProperties;
 
+// Copyright 2020 Aefyr
 public class MiuiUtils {
 
     public static boolean isMiui() {
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/utils/MultithreadedExecutor.java b/app/src/main/java/io/github/muntashirakon/AppManager/utils/MultithreadedExecutor.java
index f97fe4bd1..13d6312fd 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/utils/MultithreadedExecutor.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/utils/MultithreadedExecutor.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (c) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.utils;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/utils/NonNullUtils.java b/app/src/main/java/io/github/muntashirakon/AppManager/utils/NonNullUtils.java
index 5094412bc..bfd1e27a2 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/utils/NonNullUtils.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/utils/NonNullUtils.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (c) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.utils;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/utils/NotificationUtils.java b/app/src/main/java/io/github/muntashirakon/AppManager/utils/NotificationUtils.java
index 9c8c92dd4..de47762f3 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/utils/NotificationUtils.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/utils/NotificationUtils.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.utils;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/utils/PackageUtils.java b/app/src/main/java/io/github/muntashirakon/AppManager/utils/PackageUtils.java
index 016c13c0f..7579067be 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/utils/PackageUtils.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/utils/PackageUtils.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.utils;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/utils/ParcelFileDescriptorUtil.java b/app/src/main/java/io/github/muntashirakon/AppManager/utils/ParcelFileDescriptorUtil.java
index 4c92ce6cc..0479a01e9 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/utils/ParcelFileDescriptorUtil.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/utils/ParcelFileDescriptorUtil.java
@@ -1,20 +1,4 @@
-/*
- * Copyright (C) 2014-2015 Dominik Schürmann <dominik@dominikschuermann.de>
- * Copyright (C) 2013 Florian Schmaus <flo@geekplace.eu>
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
+// SPDX-License-Identifier: Apache-2.0
 
 package io.github.muntashirakon.AppManager.utils;
 
@@ -27,6 +11,7 @@ import java.io.OutputStream;
 
 import androidx.annotation.NonNull;
 
+// Copyright 2013 Florian Schmaus
 public class ParcelFileDescriptorUtil {
 
     @NonNull
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/utils/PermissionUtils.java b/app/src/main/java/io/github/muntashirakon/AppManager/utils/PermissionUtils.java
index e752a6680..2eac7ee2e 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/utils/PermissionUtils.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/utils/PermissionUtils.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.utils;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/utils/SettingsState.java b/app/src/main/java/io/github/muntashirakon/AppManager/utils/SettingsState.java
index bba5f8c1b..85d2a8b16 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/utils/SettingsState.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/utils/SettingsState.java
@@ -1,23 +1,7 @@
-/*
- * Copyright (c) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: Apache-2.0 AND GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.utils;
 
-import android.content.Context;
 import android.os.*;
 import android.text.TextUtils;
 import android.util.ArrayMap;
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/utils/SsaidSettings.java b/app/src/main/java/io/github/muntashirakon/AppManager/utils/SsaidSettings.java
index d1b870932..c1a00027b 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/utils/SsaidSettings.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/utils/SsaidSettings.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (c) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: Apache-2.0 AND GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.utils;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/utils/StoragePermission.java b/app/src/main/java/io/github/muntashirakon/AppManager/utils/StoragePermission.java
index 9dda6cbfd..13593965d 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/utils/StoragePermission.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/utils/StoragePermission.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.utils;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/utils/StorageUtils.java b/app/src/main/java/io/github/muntashirakon/AppManager/utils/StorageUtils.java
index 4f45a8db2..9ae8e7d2d 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/utils/StorageUtils.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/utils/StorageUtils.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.utils;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/utils/TarUtils.java b/app/src/main/java/io/github/muntashirakon/AppManager/utils/TarUtils.java
index 6f0e17382..332919ac5 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/utils/TarUtils.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/utils/TarUtils.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (c) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.utils;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/utils/UIUtils.java b/app/src/main/java/io/github/muntashirakon/AppManager/utils/UIUtils.java
index 3e217b848..b1c6dd446 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/utils/UIUtils.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/utils/UIUtils.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.utils;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/utils/UiThreadHandler.java b/app/src/main/java/io/github/muntashirakon/AppManager/utils/UiThreadHandler.java
index b7ce30998..c9b4cd4df 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/utils/UiThreadHandler.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/utils/UiThreadHandler.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (c) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: Apache-2.0
 
 package io.github.muntashirakon.AppManager.utils;
 
@@ -24,6 +9,7 @@ import com.topjohnwu.superuser.ShellUtils;
 
 import java.util.concurrent.Executor;
 
+// Copyright 2020 John "topjohnwu" Wu
 public final class UiThreadHandler {
     public static final Handler handler = new Handler(Looper.getMainLooper());
     public static final Executor executor = UiThreadHandler::run;
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/utils/Utils.java b/app/src/main/java/io/github/muntashirakon/AppManager/utils/Utils.java
index 28e6e73b8..20837ad1f 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/utils/Utils.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/utils/Utils.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.utils;
 
diff --git a/app/src/main/java/io/github/muntashirakon/AppManager/utils/WaitRunnable.java b/app/src/main/java/io/github/muntashirakon/AppManager/utils/WaitRunnable.java
index f237d3348..a31ee3c78 100644
--- a/app/src/main/java/io/github/muntashirakon/AppManager/utils/WaitRunnable.java
+++ b/app/src/main/java/io/github/muntashirakon/AppManager/utils/WaitRunnable.java
@@ -1,24 +1,10 @@
-/*
- * Copyright (c) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: Apache-2.0
 
 package io.github.muntashirakon.AppManager.utils;
 
 import androidx.annotation.NonNull;
 
+// Copyright 2020 John "topjohnwu" Wu
 public final class WaitRunnable implements Runnable {
 
     private Runnable r;
diff --git a/app/src/main/java/io/github/muntashirakon/io/AtomicProxyFile.java b/app/src/main/java/io/github/muntashirakon/io/AtomicProxyFile.java
index c6609e035..65c29c736 100644
--- a/app/src/main/java/io/github/muntashirakon/io/AtomicProxyFile.java
+++ b/app/src/main/java/io/github/muntashirakon/io/AtomicProxyFile.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (c) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.io;
 
diff --git a/app/src/main/java/io/github/muntashirakon/io/FileStatus.java b/app/src/main/java/io/github/muntashirakon/io/FileStatus.java
index 5ffb80aa4..c429c518a 100644
--- a/app/src/main/java/io/github/muntashirakon/io/FileStatus.java
+++ b/app/src/main/java/io/github/muntashirakon/io/FileStatus.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (c) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.io;
 
diff --git a/app/src/main/java/io/github/muntashirakon/io/ProxyFile.java b/app/src/main/java/io/github/muntashirakon/io/ProxyFile.java
index 10dac9916..810306a60 100644
--- a/app/src/main/java/io/github/muntashirakon/io/ProxyFile.java
+++ b/app/src/main/java/io/github/muntashirakon/io/ProxyFile.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.io;
 
diff --git a/app/src/main/java/io/github/muntashirakon/io/ProxyFileReader.java b/app/src/main/java/io/github/muntashirakon/io/ProxyFileReader.java
index e1a311d80..0b45c4e98 100644
--- a/app/src/main/java/io/github/muntashirakon/io/ProxyFileReader.java
+++ b/app/src/main/java/io/github/muntashirakon/io/ProxyFileReader.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.io;
 
diff --git a/app/src/main/java/io/github/muntashirakon/io/ProxyFileWriter.java b/app/src/main/java/io/github/muntashirakon/io/ProxyFileWriter.java
index c9d0b393e..1d6a0e103 100644
--- a/app/src/main/java/io/github/muntashirakon/io/ProxyFileWriter.java
+++ b/app/src/main/java/io/github/muntashirakon/io/ProxyFileWriter.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.io;
 
diff --git a/app/src/main/java/io/github/muntashirakon/io/ProxyFiles.java b/app/src/main/java/io/github/muntashirakon/io/ProxyFiles.java
index 6f38aae00..a5e548ad3 100644
--- a/app/src/main/java/io/github/muntashirakon/io/ProxyFiles.java
+++ b/app/src/main/java/io/github/muntashirakon/io/ProxyFiles.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (c) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.io;
 
diff --git a/app/src/main/java/io/github/muntashirakon/io/ProxyInputStream.java b/app/src/main/java/io/github/muntashirakon/io/ProxyInputStream.java
index 9023a0379..665dcae2a 100644
--- a/app/src/main/java/io/github/muntashirakon/io/ProxyInputStream.java
+++ b/app/src/main/java/io/github/muntashirakon/io/ProxyInputStream.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.io;
 
diff --git a/app/src/main/java/io/github/muntashirakon/io/ProxyOutputStream.java b/app/src/main/java/io/github/muntashirakon/io/ProxyOutputStream.java
index a719b2ff2..d2ef64f23 100644
--- a/app/src/main/java/io/github/muntashirakon/io/ProxyOutputStream.java
+++ b/app/src/main/java/io/github/muntashirakon/io/ProxyOutputStream.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.io;
 
diff --git a/app/src/main/java/io/github/muntashirakon/io/SplitInputStream.java b/app/src/main/java/io/github/muntashirakon/io/SplitInputStream.java
index 721b4e7ff..3e3893aab 100644
--- a/app/src/main/java/io/github/muntashirakon/io/SplitInputStream.java
+++ b/app/src/main/java/io/github/muntashirakon/io/SplitInputStream.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (c) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.io;
 
diff --git a/app/src/main/java/io/github/muntashirakon/io/SplitOutputStream.java b/app/src/main/java/io/github/muntashirakon/io/SplitOutputStream.java
index 96a3d0abf..8bfa13de1 100644
--- a/app/src/main/java/io/github/muntashirakon/io/SplitOutputStream.java
+++ b/app/src/main/java/io/github/muntashirakon/io/SplitOutputStream.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (c) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.io;
 
diff --git a/app/src/main/java/org/apache/commons/compress/archivers/ArchiveEntry.java b/app/src/main/java/org/apache/commons/compress/archivers/ArchiveEntry.java
index d5fa746a6..3d5f5823f 100644
--- a/app/src/main/java/org/apache/commons/compress/archivers/ArchiveEntry.java
+++ b/app/src/main/java/org/apache/commons/compress/archivers/ArchiveEntry.java
@@ -1,21 +1,5 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
+// SPDX-License-Identifier: Apache-2.0
+
 package org.apache.commons.compress.archivers;
 
 import java.util.Date;
@@ -23,6 +7,7 @@ import java.util.Date;
 /**
  * Represents an entry of an archive.
  */
+// Copyright 2008 Torsten Curdt
 public interface ArchiveEntry {
 
     /**
diff --git a/app/src/main/java/org/apache/commons/compress/archivers/ArchiveInputStream.java b/app/src/main/java/org/apache/commons/compress/archivers/ArchiveInputStream.java
index 8c317b350..5cfe05ecd 100644
--- a/app/src/main/java/org/apache/commons/compress/archivers/ArchiveInputStream.java
+++ b/app/src/main/java/org/apache/commons/compress/archivers/ArchiveInputStream.java
@@ -1,21 +1,5 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
+// SPDX-License-Identifier: Apache-2.0
+
 package org.apache.commons.compress.archivers;
 
 import java.io.IOException;
@@ -37,6 +21,7 @@ import java.io.InputStream;
  * which is used by the {@link ArchiveStreamFactory} to autodetect
  * the archive type from the first few bytes of a stream.
  */
+// Copyright 2008 Torsten Curdt
 public abstract class ArchiveInputStream extends InputStream {
 
     private final byte[] single = new byte[1];
diff --git a/app/src/main/java/org/apache/commons/compress/archivers/ArchiveOutputStream.java b/app/src/main/java/org/apache/commons/compress/archivers/ArchiveOutputStream.java
index 6931d7c80..87066764d 100644
--- a/app/src/main/java/org/apache/commons/compress/archivers/ArchiveOutputStream.java
+++ b/app/src/main/java/org/apache/commons/compress/archivers/ArchiveOutputStream.java
@@ -1,21 +1,5 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
+// SPDX-License-Identifier: Apache-2.0
+
 package org.apache.commons.compress.archivers;
 
 import android.system.ErrnoException;
@@ -47,6 +31,7 @@ import java.nio.file.LinkOption;
  *   <li>{@link #close()}.</li>
  * </ul>
  */
+// Copyright 2008 Torsten Curdt
 public abstract class ArchiveOutputStream extends OutputStream {
 
     /** Temporary buffer used for the {@link #write(int)} method */
diff --git a/app/src/main/java/org/apache/commons/compress/archivers/EntryStreamOffsets.java b/app/src/main/java/org/apache/commons/compress/archivers/EntryStreamOffsets.java
index a868666da..ca9ea8dd0 100644
--- a/app/src/main/java/org/apache/commons/compress/archivers/EntryStreamOffsets.java
+++ b/app/src/main/java/org/apache/commons/compress/archivers/EntryStreamOffsets.java
@@ -1,27 +1,11 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.apache.commons.compress.archivers;
+// SPDX-License-Identifier: Apache-2.0
 
+package org.apache.commons.compress.archivers;
 
 /**
  * Provides information about ArchiveEntry stream offsets.
  */
+// Copyright 2017 Zbynek Vyskovsky
 public interface EntryStreamOffsets {
 
     /** Special value indicating that the offset is unknown. */
diff --git a/app/src/main/java/org/apache/commons/compress/archivers/tar/TarArchiveEntry.java b/app/src/main/java/org/apache/commons/compress/archivers/tar/TarArchiveEntry.java
index 22607f303..46030dd2d 100644
--- a/app/src/main/java/org/apache/commons/compress/archivers/tar/TarArchiveEntry.java
+++ b/app/src/main/java/org/apache/commons/compress/archivers/tar/TarArchiveEntry.java
@@ -1,21 +1,5 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
+// SPDX-License-Identifier: Apache-2.0 AND GPL-3.0-or-later
+
 package org.apache.commons.compress.archivers.tar;
 
 import android.os.RemoteException;
@@ -154,7 +138,7 @@ import io.github.muntashirakon.io.ProxyFiles;
  *
  * @NotThreadSafe
  */
-
+// Copyright 2008 Torsten Curdt
 public class TarArchiveEntry implements ArchiveEntry, TarConstants, EntryStreamOffsets {
     private static final TarArchiveEntry[] EMPTY_TAR_ARCHIVE_ENTRY_ARRAY = new TarArchiveEntry[0];
 
diff --git a/app/src/main/java/org/apache/commons/compress/archivers/tar/TarArchiveInputStream.java b/app/src/main/java/org/apache/commons/compress/archivers/tar/TarArchiveInputStream.java
index f47f7a056..b043949f9 100644
--- a/app/src/main/java/org/apache/commons/compress/archivers/tar/TarArchiveInputStream.java
+++ b/app/src/main/java/org/apache/commons/compress/archivers/tar/TarArchiveInputStream.java
@@ -1,20 +1,4 @@
-/*
- *  Licensed to the Apache Software Foundation (ASF) under one or more
- *  contributor license agreements.  See the NOTICE file distributed with
- *  this work for additional information regarding copyright ownership.
- *  The ASF licenses this file to You under the Apache License, Version 2.0
- *  (the "License"); you may not use this file except in compliance with
- *  the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing, software
- *  distributed under the License is distributed on an "AS IS" BASIS,
- *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- *  See the License for the specific language governing permissions and
- *  limitations under the License.
- *
- */
+// SPDX-License-Identifier: Apache-2.0
 
 /*
  * This package is based on the work done by Timothy Gerard Endres
@@ -45,6 +29,7 @@ import org.apache.commons.compress.utils.IOUtils;
  * using read().
  * @NotThreadSafe
  */
+// Copyright 2008 Torsten Curdt
 public class TarArchiveInputStream extends ArchiveInputStream {
 
     private static final int SMALL_BUFFER_SIZE = 256;
diff --git a/app/src/main/java/org/apache/commons/compress/archivers/tar/TarArchiveOutputStream.java b/app/src/main/java/org/apache/commons/compress/archivers/tar/TarArchiveOutputStream.java
index 4e69b2c5e..18a77ef85 100644
--- a/app/src/main/java/org/apache/commons/compress/archivers/tar/TarArchiveOutputStream.java
+++ b/app/src/main/java/org/apache/commons/compress/archivers/tar/TarArchiveOutputStream.java
@@ -1,21 +1,5 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
+// SPDX-License-Identifier: Apache-2.0
+
 package org.apache.commons.compress.archivers.tar;
 
 import android.system.ErrnoException;
@@ -53,6 +37,7 @@ import java.util.Map;
  *
  * @NotThreadSafe
  */
+// Copyright 2008 Torsten Curdt
 public class TarArchiveOutputStream extends ArchiveOutputStream {
 
     /**
diff --git a/app/src/main/java/org/apache/commons/compress/archivers/tar/TarArchiveSparseEntry.java b/app/src/main/java/org/apache/commons/compress/archivers/tar/TarArchiveSparseEntry.java
index 9cc95801d..fa7dc3c1d 100644
--- a/app/src/main/java/org/apache/commons/compress/archivers/tar/TarArchiveSparseEntry.java
+++ b/app/src/main/java/org/apache/commons/compress/archivers/tar/TarArchiveSparseEntry.java
@@ -1,21 +1,5 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
+// SPDX-License-Identifier: Apache-2.0
+
 package org.apache.commons.compress.archivers.tar;
 
 import java.io.IOException;
@@ -41,7 +25,7 @@ import java.util.List;
  * };
  * </pre>
  */
-
+// Copyright 2011 Stefan Bodewig
 public class TarArchiveSparseEntry implements TarConstants {
     /** If an extension sparse header follows. */
     private final boolean isExtended;
diff --git a/app/src/main/java/org/apache/commons/compress/archivers/tar/TarArchiveSparseZeroInputStream.java b/app/src/main/java/org/apache/commons/compress/archivers/tar/TarArchiveSparseZeroInputStream.java
index 562c4f235..6569888c6 100644
--- a/app/src/main/java/org/apache/commons/compress/archivers/tar/TarArchiveSparseZeroInputStream.java
+++ b/app/src/main/java/org/apache/commons/compress/archivers/tar/TarArchiveSparseZeroInputStream.java
@@ -1,20 +1,5 @@
-/*
- *  Licensed to the Apache Software Foundation (ASF) under one or more
- *  contributor license agreements.  See the NOTICE file distributed with
- *  this work for additional information regarding copyright ownership.
- *  The ASF licenses this file to You under the Apache License, Version 2.0
- *  (the "License"); you may not use this file except in compliance with
- *  the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing, software
- *  distributed under the License is distributed on an "AS IS" BASIS,
- *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- *  See the License for the specific language governing permissions and
- *  limitations under the License.
- *
- */
+// SPDX-License-Identifier: Apache-2.0
+
 package org.apache.commons.compress.archivers.tar;
 
 import java.io.IOException;
@@ -24,6 +9,7 @@ import java.io.InputStream;
  * This is an inputstream that always return 0,
  * this is used when reading the "holes" of a sparse file
  */
+// Copyright 2021 Robin Schimpf
 class TarArchiveSparseZeroInputStream extends InputStream {
 
     /**
diff --git a/app/src/main/java/org/apache/commons/compress/archivers/tar/TarArchiveStructSparse.java b/app/src/main/java/org/apache/commons/compress/archivers/tar/TarArchiveStructSparse.java
index 8ac9bbd1b..2edec439e 100644
--- a/app/src/main/java/org/apache/commons/compress/archivers/tar/TarArchiveStructSparse.java
+++ b/app/src/main/java/org/apache/commons/compress/archivers/tar/TarArchiveStructSparse.java
@@ -1,21 +1,5 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
+// SPDX-License-Identifier: Apache-2.0
+
 package org.apache.commons.compress.archivers.tar;
 
 import java.util.Objects;
@@ -32,6 +16,7 @@ import java.util.Objects;
  * </pre>
  * @since 1.20
  */
+// Copyright 2019 Peter Alfred Lee
 public final class TarArchiveStructSparse {
     private final long offset;
     private final long numbytes;
diff --git a/app/src/main/java/org/apache/commons/compress/archivers/tar/TarConstants.java b/app/src/main/java/org/apache/commons/compress/archivers/tar/TarConstants.java
index 26bdfbab0..3f642fc8c 100644
--- a/app/src/main/java/org/apache/commons/compress/archivers/tar/TarConstants.java
+++ b/app/src/main/java/org/apache/commons/compress/archivers/tar/TarConstants.java
@@ -1,21 +1,5 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
+// SPDX-License-Identifier: Apache-2.0
+
 package org.apache.commons.compress.archivers.tar;
 
 /**
@@ -24,7 +8,7 @@ package org.apache.commons.compress.archivers.tar;
  * For tar formats (FORMAT_OLDGNU, FORMAT_POSIX, etc.) see GNU tar
  * <I>tar.h</I> type <I>enum archive_format</I>
  */
-// CheckStyle:InterfaceIsTypeCheck OFF (bc)
+// Copyright 2008 Torsten Curdt
 public interface TarConstants {
 
     /** Default record size */
diff --git a/app/src/main/java/org/apache/commons/compress/archivers/tar/TarUtils.java b/app/src/main/java/org/apache/commons/compress/archivers/tar/TarUtils.java
index 6403e5f80..13746221e 100644
--- a/app/src/main/java/org/apache/commons/compress/archivers/tar/TarUtils.java
+++ b/app/src/main/java/org/apache/commons/compress/archivers/tar/TarUtils.java
@@ -1,21 +1,5 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
+// SPDX-License-Identifier: Apache-2.0
+
 package org.apache.commons.compress.archivers.tar;
 
 import java.io.ByteArrayOutputStream;
@@ -44,7 +28,7 @@ import static org.apache.commons.compress.archivers.tar.TarConstants.SPARSE_OFFS
  *
  * @Immutable
  */
-// CheckStyle:HideUtilityClassConstructorCheck OFF (bc)
+// Copyright 2008 Torsten Curdt
 public class TarUtils {
 
     private static final int BYTE_MASK = 255;
diff --git a/app/src/main/java/org/apache/commons/compress/archivers/zip/CharsetAccessor.java b/app/src/main/java/org/apache/commons/compress/archivers/zip/CharsetAccessor.java
index 52c0529eb..e42c62fac 100644
--- a/app/src/main/java/org/apache/commons/compress/archivers/zip/CharsetAccessor.java
+++ b/app/src/main/java/org/apache/commons/compress/archivers/zip/CharsetAccessor.java
@@ -1,21 +1,4 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
+// SPDX-License-Identifier: Apache-2.0
 
 package org.apache.commons.compress.archivers.zip;
 
@@ -30,6 +13,7 @@ import java.nio.charset.Charset;
  * </p>
  * @since 1.15
  */
+// Copyright 2017 Gary Gregory
 public interface CharsetAccessor {
 
     /**
diff --git a/app/src/main/java/org/apache/commons/compress/archivers/zip/NioZipEncoding.java b/app/src/main/java/org/apache/commons/compress/archivers/zip/NioZipEncoding.java
index d35b3f5d7..b3b720fa0 100644
--- a/app/src/main/java/org/apache/commons/compress/archivers/zip/NioZipEncoding.java
+++ b/app/src/main/java/org/apache/commons/compress/archivers/zip/NioZipEncoding.java
@@ -1,21 +1,4 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
+// SPDX-License-Identifier: Apache-2.0
 
 package org.apache.commons.compress.archivers.zip;
 
@@ -34,6 +17,7 @@ import java.nio.charset.CodingErrorAction;
  * <p>The methods of this class are reentrant.</p>
  * @Immutable
  */
+// Copyright 2009 Stefan Bodewig
 class NioZipEncoding implements ZipEncoding, CharsetAccessor {
 
     private final Charset charset;
diff --git a/app/src/main/java/org/apache/commons/compress/archivers/zip/ZipEncoding.java b/app/src/main/java/org/apache/commons/compress/archivers/zip/ZipEncoding.java
index 8fe1725a3..717225028 100644
--- a/app/src/main/java/org/apache/commons/compress/archivers/zip/ZipEncoding.java
+++ b/app/src/main/java/org/apache/commons/compress/archivers/zip/ZipEncoding.java
@@ -1,21 +1,4 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
+// SPDX-License-Identifier: Apache-2.0
 
 package org.apache.commons.compress.archivers.zip;
 
@@ -41,6 +24,7 @@ import java.nio.ByteBuffer;
  * <p>All implementations should implement this interface in a
  * reentrant way.</p>
  */
+// Copyright 2009 Stefan Bodewig
 public interface ZipEncoding {
     /**
      * Check, whether the given string may be losslessly encoded using this
diff --git a/app/src/main/java/org/apache/commons/compress/archivers/zip/ZipEncodingHelper.java b/app/src/main/java/org/apache/commons/compress/archivers/zip/ZipEncodingHelper.java
index 49c33c947..bd80f0ff1 100644
--- a/app/src/main/java/org/apache/commons/compress/archivers/zip/ZipEncodingHelper.java
+++ b/app/src/main/java/org/apache/commons/compress/archivers/zip/ZipEncodingHelper.java
@@ -1,20 +1,4 @@
-/*
- *  Licensed to the Apache Software Foundation (ASF) under one or more
- *  contributor license agreements.  See the NOTICE file distributed with
- *  this work for additional information regarding copyright ownership.
- *  The ASF licenses this file to You under the Apache License, Version 2.0
- *  (the "License"); you may not use this file except in compliance with
- *  the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing, software
- *  distributed under the License is distributed on an "AS IS" BASIS,
- *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- *  See the License for the specific language governing permissions and
- *  limitations under the License.
- *
- */
+// SPDX-License-Identifier: Apache-2.0
 
 package org.apache.commons.compress.archivers.zip;
 
@@ -26,6 +10,7 @@ import java.nio.charset.UnsupportedCharsetException;
 /**
  * Static helper functions for robustly encoding file names in zip files.
  */
+// Copyright 2009 Stefan Bodewig
 public abstract class ZipEncodingHelper {
 
 
diff --git a/app/src/main/java/org/apache/commons/compress/compressors/CompressorInputStream.java b/app/src/main/java/org/apache/commons/compress/compressors/CompressorInputStream.java
index 6da8bd4f0..e1e0e5207 100644
--- a/app/src/main/java/org/apache/commons/compress/compressors/CompressorInputStream.java
+++ b/app/src/main/java/org/apache/commons/compress/compressors/CompressorInputStream.java
@@ -1,25 +1,10 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
+// SPDX-License-Identifier: Apache-2.0
+
 package org.apache.commons.compress.compressors;
 
 import java.io.InputStream;
 
+// Copyright 2008 Torsten Curdt
 public abstract class CompressorInputStream extends InputStream {
     private long bytesRead = 0;
 
diff --git a/app/src/main/java/org/apache/commons/compress/compressors/CompressorOutputStream.java b/app/src/main/java/org/apache/commons/compress/compressors/CompressorOutputStream.java
index 0440fb824..f61f3e8f8 100644
--- a/app/src/main/java/org/apache/commons/compress/compressors/CompressorOutputStream.java
+++ b/app/src/main/java/org/apache/commons/compress/compressors/CompressorOutputStream.java
@@ -1,25 +1,10 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
+// SPDX-License-Identifier: Apache-2.0
+
 package org.apache.commons.compress.compressors;
 
 import java.io.OutputStream;
 
+// Copyright 2008 Torsten Curdt
 public abstract class CompressorOutputStream extends OutputStream {
     // TODO
 }
\ No newline at end of file
diff --git a/app/src/main/java/org/apache/commons/compress/compressors/FileNameUtil.java b/app/src/main/java/org/apache/commons/compress/compressors/FileNameUtil.java
index 96d36d5d7..21794d858 100644
--- a/app/src/main/java/org/apache/commons/compress/compressors/FileNameUtil.java
+++ b/app/src/main/java/org/apache/commons/compress/compressors/FileNameUtil.java
@@ -1,21 +1,5 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
+// SPDX-License-Identifier: Apache-2.0
+
 package org.apache.commons.compress.compressors;
 
 import java.util.Collections;
@@ -28,6 +12,7 @@ import java.util.Map;
  * @ThreadSafe
  * @since 1.4
  */
+// Copyright 2011 Stefan Bodewig
 public class FileNameUtil {
 
     /**
diff --git a/app/src/main/java/org/apache/commons/compress/compressors/bzip2/BZip2CompressorInputStream.java b/app/src/main/java/org/apache/commons/compress/compressors/bzip2/BZip2CompressorInputStream.java
index 69e55c6c3..86299e6b1 100644
--- a/app/src/main/java/org/apache/commons/compress/compressors/bzip2/BZip2CompressorInputStream.java
+++ b/app/src/main/java/org/apache/commons/compress/compressors/bzip2/BZip2CompressorInputStream.java
@@ -1,27 +1,5 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
+// SPDX-License-Identifier: Apache-2.0
 
-/*
- * This package is based on the work done by Keiron Liddle, Aftex Software
- * <keiron@aftexsw.com> to whom the Ant project is very grateful for his
- * great code.
- */
 package org.apache.commons.compress.compressors.bzip2;
 
 import java.io.IOException;
@@ -39,6 +17,7 @@ import org.apache.commons.compress.utils.InputStreamStatistics;
  *
  * @NotThreadSafe
  */
+// Copyright 2008 Torsten Curdt
 public class BZip2CompressorInputStream extends CompressorInputStream
         implements BZip2Constants, InputStreamStatistics {
 
diff --git a/app/src/main/java/org/apache/commons/compress/compressors/bzip2/BZip2CompressorOutputStream.java b/app/src/main/java/org/apache/commons/compress/compressors/bzip2/BZip2CompressorOutputStream.java
index 93d1c718b..2ba351634 100644
--- a/app/src/main/java/org/apache/commons/compress/compressors/bzip2/BZip2CompressorOutputStream.java
+++ b/app/src/main/java/org/apache/commons/compress/compressors/bzip2/BZip2CompressorOutputStream.java
@@ -1,21 +1,5 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
+// SPDX-License-Identifier: Apache-2.0
+
 package org.apache.commons.compress.compressors.bzip2;
 
 import java.io.IOException;
@@ -123,6 +107,7 @@ import org.apache.commons.compress.compressors.CompressorOutputStream;
  * </p>
  * @NotThreadSafe
  */
+// Copyright 2008 Torsten Curdt
 public class BZip2CompressorOutputStream extends CompressorOutputStream
         implements BZip2Constants {
 
diff --git a/app/src/main/java/org/apache/commons/compress/compressors/bzip2/BZip2Constants.java b/app/src/main/java/org/apache/commons/compress/compressors/bzip2/BZip2Constants.java
index 9a8b9c4c0..b2382761a 100644
--- a/app/src/main/java/org/apache/commons/compress/compressors/bzip2/BZip2Constants.java
+++ b/app/src/main/java/org/apache/commons/compress/compressors/bzip2/BZip2Constants.java
@@ -1,27 +1,11 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
+// SPDX-License-Identifier: Apache-2.0
 
 package org.apache.commons.compress.compressors.bzip2;
 
 /**
  * Constants for both the compress and decompress BZip2 classes.
  */
+// Copyright 2008 Torsten Curdt
 interface BZip2Constants {
 
     int BASEBLOCKSIZE = 100000;
diff --git a/app/src/main/java/org/apache/commons/compress/compressors/bzip2/BZip2Utils.java b/app/src/main/java/org/apache/commons/compress/compressors/bzip2/BZip2Utils.java
index e1f2a3410..e1d5f65b8 100644
--- a/app/src/main/java/org/apache/commons/compress/compressors/bzip2/BZip2Utils.java
+++ b/app/src/main/java/org/apache/commons/compress/compressors/bzip2/BZip2Utils.java
@@ -1,21 +1,5 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
+// SPDX-License-Identifier: Apache-2.0
+
 package org.apache.commons.compress.compressors.bzip2;
 
 import java.util.LinkedHashMap;
@@ -27,6 +11,7 @@ import org.apache.commons.compress.compressors.FileNameUtil;
  * @ThreadSafe
  * @since 1.1
  */
+// Copyright 2017 Stefan Bodewig
 public abstract class BZip2Utils {
 
     private static final FileNameUtil fileNameUtil;
diff --git a/app/src/main/java/org/apache/commons/compress/compressors/bzip2/BlockSort.java b/app/src/main/java/org/apache/commons/compress/compressors/bzip2/BlockSort.java
index 795363b62..be69588e6 100644
--- a/app/src/main/java/org/apache/commons/compress/compressors/bzip2/BlockSort.java
+++ b/app/src/main/java/org/apache/commons/compress/compressors/bzip2/BlockSort.java
@@ -1,21 +1,5 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
+// SPDX-License-Identifier: Apache-2.0
+
 package org.apache.commons.compress.compressors.bzip2;
 
 import java.util.BitSet;
@@ -77,6 +61,7 @@ import java.util.BitSet;
  *
  * @NotThreadSafe
  */
+// Copyright 2017 Stefan Bodewig
 class BlockSort {
 
     /*
diff --git a/app/src/main/java/org/apache/commons/compress/compressors/bzip2/CRC.java b/app/src/main/java/org/apache/commons/compress/compressors/bzip2/CRC.java
index 42d4fc466..449160ec6 100644
--- a/app/src/main/java/org/apache/commons/compress/compressors/bzip2/CRC.java
+++ b/app/src/main/java/org/apache/commons/compress/compressors/bzip2/CRC.java
@@ -1,21 +1,5 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
+// SPDX-License-Identifier: Apache-2.0
+
 package org.apache.commons.compress.compressors.bzip2;
 
 /**
@@ -24,6 +8,7 @@ package org.apache.commons.compress.compressors.bzip2;
  *
  * @NotThreadSafe
  */
+// Copyright 2008 Torsten Curdt
 class CRC {
     private static final int[] crc32Table = {
             0x00000000, 0x04c11db7, 0x09823b6e, 0x0d4326d9,
diff --git a/app/src/main/java/org/apache/commons/compress/compressors/bzip2/Rand.java b/app/src/main/java/org/apache/commons/compress/compressors/bzip2/Rand.java
index bb6ef80ba..5ffc221a6 100644
--- a/app/src/main/java/org/apache/commons/compress/compressors/bzip2/Rand.java
+++ b/app/src/main/java/org/apache/commons/compress/compressors/bzip2/Rand.java
@@ -1,27 +1,11 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
+// SPDX-License-Identifier: Apache-2.0
 
 package org.apache.commons.compress.compressors.bzip2;
 
 /**
  * Random numbers for both the compress and decompress BZip2 classes.
  */
+// Copyright 2009 sebbASF
 final class Rand {
 
     private static final int[] RNUMS = {
diff --git a/app/src/main/java/org/apache/commons/compress/compressors/gzip/GzipCompressorInputStream.java b/app/src/main/java/org/apache/commons/compress/compressors/gzip/GzipCompressorInputStream.java
index 831621a88..d98a85790 100644
--- a/app/src/main/java/org/apache/commons/compress/compressors/gzip/GzipCompressorInputStream.java
+++ b/app/src/main/java/org/apache/commons/compress/compressors/gzip/GzipCompressorInputStream.java
@@ -1,21 +1,5 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
+// SPDX-License-Identifier: Apache-2.0
+
 package org.apache.commons.compress.compressors.gzip;
 
 import java.io.ByteArrayOutputStream;
@@ -73,6 +57,7 @@ import org.apache.commons.compress.utils.InputStreamStatistics;
  *
  * @see "https://tools.ietf.org/html/rfc1952"
  */
+// Copyright 2011 sebbASF
 public class GzipCompressorInputStream extends CompressorInputStream
         implements InputStreamStatistics {
 
diff --git a/app/src/main/java/org/apache/commons/compress/compressors/gzip/GzipCompressorOutputStream.java b/app/src/main/java/org/apache/commons/compress/compressors/gzip/GzipCompressorOutputStream.java
index a0ec6c00d..a7fda14b3 100644
--- a/app/src/main/java/org/apache/commons/compress/compressors/gzip/GzipCompressorOutputStream.java
+++ b/app/src/main/java/org/apache/commons/compress/compressors/gzip/GzipCompressorOutputStream.java
@@ -1,21 +1,5 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
+// SPDX-License-Identifier: Apache-2.0
+
 package org.apache.commons.compress.compressors.gzip;
 
 import java.io.IOException;
@@ -38,6 +22,7 @@ import org.apache.commons.compress.compressors.CompressorOutputStream;
  *
  * @see <a href="https://tools.ietf.org/html/rfc1952">GZIP File Format Specification</a>
  */
+// Copyright 2008 Torsten Curdt
 public class GzipCompressorOutputStream extends CompressorOutputStream {
 
     /** Header flag indicating a file name follows the header */
diff --git a/app/src/main/java/org/apache/commons/compress/compressors/gzip/GzipParameters.java b/app/src/main/java/org/apache/commons/compress/compressors/gzip/GzipParameters.java
index e10bb1a5f..8b4dd4a6f 100644
--- a/app/src/main/java/org/apache/commons/compress/compressors/gzip/GzipParameters.java
+++ b/app/src/main/java/org/apache/commons/compress/compressors/gzip/GzipParameters.java
@@ -1,21 +1,4 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
+// SPDX-License-Identifier: Apache-2.0
 
 package org.apache.commons.compress.compressors.gzip;
 
@@ -26,6 +9,7 @@ import java.util.zip.Deflater;
  *
  * @since 1.7
  */
+// Copyright 2013 Emmanuel Bourg
 public class GzipParameters {
 
     private int compressionLevel = Deflater.DEFAULT_COMPRESSION;
diff --git a/app/src/main/java/org/apache/commons/compress/compressors/gzip/GzipUtils.java b/app/src/main/java/org/apache/commons/compress/compressors/gzip/GzipUtils.java
index c7b19847a..6b0ec1051 100644
--- a/app/src/main/java/org/apache/commons/compress/compressors/gzip/GzipUtils.java
+++ b/app/src/main/java/org/apache/commons/compress/compressors/gzip/GzipUtils.java
@@ -1,21 +1,5 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
+// SPDX-License-Identifier: Apache-2.0
+
 package org.apache.commons.compress.compressors.gzip;
 
 import java.util.LinkedHashMap;
@@ -26,6 +10,7 @@ import org.apache.commons.compress.compressors.FileNameUtil;
  * Utility code for the gzip compression format.
  * @ThreadSafe
  */
+// Copyright 2009 sebbASF
 public class GzipUtils {
 
     private static final FileNameUtil fileNameUtil;
diff --git a/app/src/main/java/org/apache/commons/compress/utils/ArchiveUtils.java b/app/src/main/java/org/apache/commons/compress/utils/ArchiveUtils.java
index f7649d4a1..f7ac0d3c9 100644
--- a/app/src/main/java/org/apache/commons/compress/utils/ArchiveUtils.java
+++ b/app/src/main/java/org/apache/commons/compress/utils/ArchiveUtils.java
@@ -1,20 +1,4 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
+// SPDX-License-Identifier: Apache-2.0
 
 package org.apache.commons.compress.utils;
 
@@ -26,6 +10,7 @@ import org.apache.commons.compress.archivers.ArchiveEntry;
 /**
  * Generic Archive utilities
  */
+// Copyright 2009 sebbASF
 public class ArchiveUtils {
 
     private static final int MAX_SANITIZED_NAME_LENGTH = 255;
diff --git a/app/src/main/java/org/apache/commons/compress/utils/BitInputStream.java b/app/src/main/java/org/apache/commons/compress/utils/BitInputStream.java
index 576a1f685..6dba24453 100644
--- a/app/src/main/java/org/apache/commons/compress/utils/BitInputStream.java
+++ b/app/src/main/java/org/apache/commons/compress/utils/BitInputStream.java
@@ -1,21 +1,5 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
+// SPDX-License-Identifier: Apache-2.0
+
 package org.apache.commons.compress.utils;
 
 import java.io.Closeable;
@@ -28,6 +12,7 @@ import java.nio.ByteOrder;
  * @since 1.10
  * @NotThreadSafe
  */
+// Copyright 2014 Damjan Jovanovic
 public class BitInputStream implements Closeable {
     private static final int MAXIMUM_CACHE_SIZE = 63; // bits in long minus sign bit
     private static final long[] MASKS = new long[MAXIMUM_CACHE_SIZE + 1];
diff --git a/app/src/main/java/org/apache/commons/compress/utils/BoundedInputStream.java b/app/src/main/java/org/apache/commons/compress/utils/BoundedInputStream.java
index 9ca816aee..dca478d41 100644
--- a/app/src/main/java/org/apache/commons/compress/utils/BoundedInputStream.java
+++ b/app/src/main/java/org/apache/commons/compress/utils/BoundedInputStream.java
@@ -1,20 +1,5 @@
-/*
- *  Licensed to the Apache Software Foundation (ASF) under one or more
- *  contributor license agreements.  See the NOTICE file distributed with
- *  this work for additional information regarding copyright ownership.
- *  The ASF licenses this file to You under the Apache License, Version 2.0
- *  (the "License"); you may not use this file except in compliance with
- *  the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing, software
- *  distributed under the License is distributed on an "AS IS" BASIS,
- *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- *  See the License for the specific language governing permissions and
- *  limitations under the License.
- *
- */
+// SPDX-License-Identifier: Apache-2.0
+
 package org.apache.commons.compress.utils;
 
 import java.io.IOException;
@@ -25,6 +10,7 @@ import java.io.InputStream;
  * @NotThreadSafe
  * @since 1.6
  */
+// Copyright 2013 Damjan Jovanovic
 public class BoundedInputStream extends InputStream {
     private final InputStream in;
     private long bytesRemaining;
diff --git a/app/src/main/java/org/apache/commons/compress/utils/ByteUtils.java b/app/src/main/java/org/apache/commons/compress/utils/ByteUtils.java
index 5f28eaf35..edf1875c8 100644
--- a/app/src/main/java/org/apache/commons/compress/utils/ByteUtils.java
+++ b/app/src/main/java/org/apache/commons/compress/utils/ByteUtils.java
@@ -1,20 +1,4 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
+// SPDX-License-Identifier: Apache-2.0
 
 package org.apache.commons.compress.utils;
 
@@ -28,6 +12,7 @@ import java.io.OutputStream;
  * Utility methods for reading and writing bytes.
  * @since 1.14
  */
+// Copyright 2017 Stefan Bodewig
 public final class ByteUtils {
 
     /**
diff --git a/app/src/main/java/org/apache/commons/compress/utils/CharsetNames.java b/app/src/main/java/org/apache/commons/compress/utils/CharsetNames.java
index 6605a83db..a48f6e096 100644
--- a/app/src/main/java/org/apache/commons/compress/utils/CharsetNames.java
+++ b/app/src/main/java/org/apache/commons/compress/utils/CharsetNames.java
@@ -1,20 +1,4 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *   http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- *
- */
+// SPDX-License-Identifier: Apache-2.0
 
 package org.apache.commons.compress.utils;
 
@@ -51,6 +35,7 @@ package org.apache.commons.compress.utils;
  * @see <a href="https://download.oracle.com/javase/6/docs/api/java/nio/charset/Charset.html">Standard charsets</a>
  * @since 1.4
  */
+// Copyright 2012 Gary Gregory
 public class CharsetNames {
     /**
      * CharEncodingISO Latin Alphabet No. 1, a.k.a. ISO-LATIN-1.
diff --git a/app/src/main/java/org/apache/commons/compress/utils/CloseShieldFilterInputStream.java b/app/src/main/java/org/apache/commons/compress/utils/CloseShieldFilterInputStream.java
index c6039628a..27c830a4a 100644
--- a/app/src/main/java/org/apache/commons/compress/utils/CloseShieldFilterInputStream.java
+++ b/app/src/main/java/org/apache/commons/compress/utils/CloseShieldFilterInputStream.java
@@ -1,21 +1,4 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
+// SPDX-License-Identifier: Apache-2.0
 
 package org.apache.commons.compress.utils;
 
@@ -27,6 +10,7 @@ import java.io.InputStream;
  * Re-implements {@link FilterInputStream#close()} to do nothing.
  * @since 1.14
  */
+// Copyright 2017 Stefan Bodewig
 public class CloseShieldFilterInputStream extends FilterInputStream {
 
     public CloseShieldFilterInputStream(final InputStream in) {
diff --git a/app/src/main/java/org/apache/commons/compress/utils/CountingInputStream.java b/app/src/main/java/org/apache/commons/compress/utils/CountingInputStream.java
index 67ff67fc4..17de107df 100644
--- a/app/src/main/java/org/apache/commons/compress/utils/CountingInputStream.java
+++ b/app/src/main/java/org/apache/commons/compress/utils/CountingInputStream.java
@@ -1,21 +1,5 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
+// SPDX-License-Identifier: Apache-2.0
+
 package org.apache.commons.compress.utils;
 
 import java.io.FilterInputStream;
@@ -27,6 +11,7 @@ import java.io.InputStream;
  * @since 1.3
  * @NotThreadSafe
  */
+// Copyright 2011 Stefan Bodewig
 public class CountingInputStream extends FilterInputStream {
     private long bytesRead;
 
diff --git a/app/src/main/java/org/apache/commons/compress/utils/CountingOutputStream.java b/app/src/main/java/org/apache/commons/compress/utils/CountingOutputStream.java
index ea4c23b38..1ee840a57 100644
--- a/app/src/main/java/org/apache/commons/compress/utils/CountingOutputStream.java
+++ b/app/src/main/java/org/apache/commons/compress/utils/CountingOutputStream.java
@@ -1,21 +1,5 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
+// SPDX-License-Identifier: Apache-2.0
+
 package org.apache.commons.compress.utils;
 
 import java.io.FilterOutputStream;
@@ -27,6 +11,7 @@ import java.io.OutputStream;
  * @since 1.3
  * @NotThreadSafe
  */
+// Copyright 2011 Stefan Bodewig
 public class CountingOutputStream extends FilterOutputStream {
     private long bytesWritten = 0;
 
diff --git a/app/src/main/java/org/apache/commons/compress/utils/FixedLengthBlockOutputStream.java b/app/src/main/java/org/apache/commons/compress/utils/FixedLengthBlockOutputStream.java
index f1582b0be..1ed06ade9 100644
--- a/app/src/main/java/org/apache/commons/compress/utils/FixedLengthBlockOutputStream.java
+++ b/app/src/main/java/org/apache/commons/compress/utils/FixedLengthBlockOutputStream.java
@@ -1,21 +1,5 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
+// SPDX-License-Identifier: Apache-2.0
+
 package org.apache.commons.compress.utils;
 
 import java.io.FileOutputStream;
@@ -48,6 +32,7 @@ import java.util.concurrent.atomic.AtomicBoolean;
  *
  * @since 1.15
  */
+// Copyright 2017 Simon Spero
 public class FixedLengthBlockOutputStream extends OutputStream implements WritableByteChannel {
 
     private final WritableByteChannel out;
diff --git a/app/src/main/java/org/apache/commons/compress/utils/IOUtils.java b/app/src/main/java/org/apache/commons/compress/utils/IOUtils.java
index febc0cfc5..b20b3c586 100644
--- a/app/src/main/java/org/apache/commons/compress/utils/IOUtils.java
+++ b/app/src/main/java/org/apache/commons/compress/utils/IOUtils.java
@@ -1,21 +1,5 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements.  See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership.  The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License.  You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied.  See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
+// SPDX-License-Identifier: Apache-2.0
+
 package org.apache.commons.compress.utils;
 
 import android.os.RemoteException;
@@ -29,6 +13,7 @@ import java.nio.channels.ReadableByteChannel;
  * Utility functions
  * @Immutable (has mutable data but it is write-only)
  */
+// Copyright 2008 Torsten Curdt
 public final class IOUtils {
 
     private static final int COPY_BUF_SIZE = 8024;
diff --git a/app/src/main/java/org/apache/commons/compress/utils/InputStreamStatistics.java b/app/src/main/java/org/apache/commons/compress/utils/InputStreamStatistics.java
index a6335d171..5ffa53923 100644
--- a/app/src/main/java/org/apache/commons/compress/utils/InputStreamStatistics.java
+++ b/app/src/main/java/org/apache/commons/compress/utils/InputStreamStatistics.java
@@ -1,20 +1,4 @@
-/*
- *  Licensed to the Apache Software Foundation (ASF) under one or more
- *  contributor license agreements.  See the NOTICE file distributed with
- *  this work for additional information regarding copyright ownership.
- *  The ASF licenses this file to You under the Apache License, Version 2.0
- *  (the "License"); you may not use this file except in compliance with
- *  the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing, software
- *  distributed under the License is distributed on an "AS IS" BASIS,
- *  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- *  See the License for the specific language governing permissions and
- *  limitations under the License.
- *
- */
+// SPDX-License-Identifier: Apache-2.0
 
 package org.apache.commons.compress.utils;
 
@@ -25,6 +9,7 @@ package org.apache.commons.compress.utils;
  *
  * @since 1.17
  */
+// Copyright 2018 Stefan Bodewig
 public interface InputStreamStatistics {
     /**
      * @return the amount of raw or compressed bytes read by the stream
diff --git a/app/src/main/res/anim/fullscreen_dialog_enter.xml b/app/src/main/res/anim/fullscreen_dialog_enter.xml
index 490827ccb..759a74cc3 100644
--- a/app/src/main/res/anim/fullscreen_dialog_enter.xml
+++ b/app/src/main/res/anim/fullscreen_dialog_enter.xml
@@ -1,21 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: Apache-2.0 -->
 <set xmlns:android="http://schemas.android.com/apk/res/android"
     android:shareInterpolator="false">
     <alpha
diff --git a/app/src/main/res/anim/fullscreen_dialog_exit.xml b/app/src/main/res/anim/fullscreen_dialog_exit.xml
index 9fe785359..f752f1775 100644
--- a/app/src/main/res/anim/fullscreen_dialog_exit.xml
+++ b/app/src/main/res/anim/fullscreen_dialog_exit.xml
@@ -1,21 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: Apache-2.0 -->
 <set xmlns:android="http://schemas.android.com/apk/res/android"
     android:shareInterpolator="false">
     <alpha
diff --git a/app/src/main/res/color/item_icon_tint.xml b/app/src/main/res/color/item_icon_tint.xml
index 707d007b1..c9e94f913 100644
--- a/app/src/main/res/color/item_icon_tint.xml
+++ b/app/src/main/res/color/item_icon_tint.xml
@@ -1,20 +1,5 @@
-<?xml version="1.0" encoding="utf-8"?><!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<?xml version="1.0" encoding="utf-8"?>
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <selector xmlns:android="http://schemas.android.com/apk/res/android">
     <item android:alpha="1.0" android:color="?attr/colorOnPrimary" android:state_checked="true" />
     <item android:alpha="0.6" android:color="?attr/colorOnPrimary" />
diff --git a/app/src/main/res/color/item_ripple_color.xml b/app/src/main/res/color/item_ripple_color.xml
index 250743b80..fd3aaabcd 100644
--- a/app/src/main/res/color/item_ripple_color.xml
+++ b/app/src/main/res/color/item_ripple_color.xml
@@ -1,21 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <selector xmlns:android="http://schemas.android.com/apk/res/android">
     <item android:alpha="0.16" android:color="?attr/colorOnPrimary" android:state_pressed="true" />
     <item android:alpha="0.32" android:color="?attr/colorOnPrimary" android:state_focused="true" android:state_hovered="true" />
diff --git a/app/src/main/res/color/item_text_color.xml b/app/src/main/res/color/item_text_color.xml
index 5afc05861..c9e94f913 100644
--- a/app/src/main/res/color/item_text_color.xml
+++ b/app/src/main/res/color/item_text_color.xml
@@ -1,21 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <selector xmlns:android="http://schemas.android.com/apk/res/android">
     <item android:alpha="1.0" android:color="?attr/colorOnPrimary" android:state_checked="true" />
     <item android:alpha="0.6" android:color="?attr/colorOnPrimary" />
diff --git a/app/src/main/res/drawable/border_left.xml b/app/src/main/res/drawable/border_left.xml
index 55950098e..2c68e90c3 100644
--- a/app/src/main/res/drawable/border_left.xml
+++ b/app/src/main/res/drawable/border_left.xml
@@ -1,20 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 
 <layer-list xmlns:android="http://schemas.android.com/apk/res/android">
     <item android:gravity="center">
diff --git a/app/src/main/res/drawable/ic_assignment_black_24dp.xml b/app/src/main/res/drawable/ic_assignment_black_24dp.xml
index 4d3d80067..aac3b8e2f 100644
--- a/app/src/main/res/drawable/ic_assignment_black_24dp.xml
+++ b/app/src/main/res/drawable/ic_assignment_black_24dp.xml
@@ -1,3 +1,4 @@
+<!-- SPDX-License-Identifier: Apache-2.0 -->
 <vector xmlns:android="http://schemas.android.com/apk/res/android"
         android:width="24dp"
         android:height="24dp"
diff --git a/app/src/main/res/drawable/ic_baseline_add_24.xml b/app/src/main/res/drawable/ic_baseline_add_24.xml
index b76228729..22aad4208 100644
--- a/app/src/main/res/drawable/ic_baseline_add_24.xml
+++ b/app/src/main/res/drawable/ic_baseline_add_24.xml
@@ -1,3 +1,4 @@
+<!-- SPDX-License-Identifier: Apache-2.0 -->
 <vector xmlns:android="http://schemas.android.com/apk/res/android"
     android:width="24dp"
     android:height="24dp"
diff --git a/app/src/main/res/drawable/ic_baseline_autorenew_24.xml b/app/src/main/res/drawable/ic_baseline_autorenew_24.xml
index f17c1c2f3..213ea6f9b 100644
--- a/app/src/main/res/drawable/ic_baseline_autorenew_24.xml
+++ b/app/src/main/res/drawable/ic_baseline_autorenew_24.xml
@@ -1,20 +1,4 @@
-<!--
-  ~ Copyright (c) 2021 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: Apache-2.0 -->
 <vector xmlns:android="http://schemas.android.com/apk/res/android"
     android:width="24dp"
     android:height="24dp"
diff --git a/app/src/main/res/drawable/ic_baseline_clear_24.xml b/app/src/main/res/drawable/ic_baseline_clear_24.xml
index 9cd8cdb91..31197500a 100644
--- a/app/src/main/res/drawable/ic_baseline_clear_24.xml
+++ b/app/src/main/res/drawable/ic_baseline_clear_24.xml
@@ -1,3 +1,4 @@
+<!-- SPDX-License-Identifier: Apache-2.0 -->
 <vector xmlns:android="http://schemas.android.com/apk/res/android"
     android:width="24dp"
     android:height="24dp"
diff --git a/app/src/main/res/drawable/ic_baseline_content_copy_24.xml b/app/src/main/res/drawable/ic_baseline_content_copy_24.xml
index 8a969aad0..a276c4942 100644
--- a/app/src/main/res/drawable/ic_baseline_content_copy_24.xml
+++ b/app/src/main/res/drawable/ic_baseline_content_copy_24.xml
@@ -1,20 +1,3 @@
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
 <vector xmlns:android="http://schemas.android.com/apk/res/android"
     android:width="24dp"
     android:height="24dp"
diff --git a/app/src/main/res/drawable/ic_baseline_get_app_24.xml b/app/src/main/res/drawable/ic_baseline_get_app_24.xml
index f1f83bbee..99421ea5d 100644
--- a/app/src/main/res/drawable/ic_baseline_get_app_24.xml
+++ b/app/src/main/res/drawable/ic_baseline_get_app_24.xml
@@ -1,3 +1,4 @@
+<!-- SPDX-License-Identifier: Apache-2.0 -->
 <vector xmlns:android="http://schemas.android.com/apk/res/android"
     android:width="24dp"
     android:height="24dp"
diff --git a/app/src/main/res/drawable/ic_baseline_outlined_flag_24.xml b/app/src/main/res/drawable/ic_baseline_outlined_flag_24.xml
index e65d5769b..50804cce4 100644
--- a/app/src/main/res/drawable/ic_baseline_outlined_flag_24.xml
+++ b/app/src/main/res/drawable/ic_baseline_outlined_flag_24.xml
@@ -1,3 +1,4 @@
+<!-- SPDX-License-Identifier: Apache-2.0 -->
 <vector xmlns:android="http://schemas.android.com/apk/res/android"
     android:width="24dp"
     android:height="24dp"
diff --git a/app/src/main/res/drawable/ic_baseline_power_settings_new_24.xml b/app/src/main/res/drawable/ic_baseline_power_settings_new_24.xml
index 1156780ea..d2da24c94 100644
--- a/app/src/main/res/drawable/ic_baseline_power_settings_new_24.xml
+++ b/app/src/main/res/drawable/ic_baseline_power_settings_new_24.xml
@@ -1,3 +1,4 @@
+<!-- SPDX-License-Identifier: Apache-2.0 -->
 <vector xmlns:android="http://schemas.android.com/apk/res/android"
     android:width="24dp"
     android:height="24dp"
diff --git a/app/src/main/res/drawable/ic_baseline_save_24.xml b/app/src/main/res/drawable/ic_baseline_save_24.xml
index 86d50b89e..537283654 100644
--- a/app/src/main/res/drawable/ic_baseline_save_24.xml
+++ b/app/src/main/res/drawable/ic_baseline_save_24.xml
@@ -1,3 +1,4 @@
+<!-- SPDX-License-Identifier: Apache-2.0 -->
 <vector xmlns:android="http://schemas.android.com/apk/res/android"
     android:width="24dp"
     android:height="24dp"
diff --git a/app/src/main/res/drawable/ic_baseline_security_24.xml b/app/src/main/res/drawable/ic_baseline_security_24.xml
index 1939d8319..b371f21e0 100644
--- a/app/src/main/res/drawable/ic_baseline_security_24.xml
+++ b/app/src/main/res/drawable/ic_baseline_security_24.xml
@@ -1,20 +1,4 @@
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: Apache-2.0 -->
 <vector xmlns:android="http://schemas.android.com/apk/res/android"
     android:width="24dp"
     android:height="24dp"
diff --git a/app/src/main/res/drawable/ic_baseline_select_all_24.xml b/app/src/main/res/drawable/ic_baseline_select_all_24.xml
index faf39160b..d84b10c64 100644
--- a/app/src/main/res/drawable/ic_baseline_select_all_24.xml
+++ b/app/src/main/res/drawable/ic_baseline_select_all_24.xml
@@ -1,3 +1,4 @@
+<!-- SPDX-License-Identifier: Apache-2.0 -->
 <vector xmlns:android="http://schemas.android.com/apk/res/android"
     android:width="24dp"
     android:height="24dp"
diff --git a/app/src/main/res/drawable/ic_baseline_settings_24.xml b/app/src/main/res/drawable/ic_baseline_settings_24.xml
index e31062eb9..65db37d56 100644
--- a/app/src/main/res/drawable/ic_baseline_settings_24.xml
+++ b/app/src/main/res/drawable/ic_baseline_settings_24.xml
@@ -1,3 +1,4 @@
+<!-- SPDX-License-Identifier: Apache-2.0 -->
 <vector xmlns:android="http://schemas.android.com/apk/res/android"
     android:width="24dp"
     android:height="24dp"
diff --git a/app/src/main/res/drawable/ic_baseline_sync_24.xml b/app/src/main/res/drawable/ic_baseline_sync_24.xml
index 42d62f0e7..fbcb4cdc7 100644
--- a/app/src/main/res/drawable/ic_baseline_sync_24.xml
+++ b/app/src/main/res/drawable/ic_baseline_sync_24.xml
@@ -1,3 +1,4 @@
+<!-- SPDX-License-Identifier: Apache-2.0 -->
 <vector xmlns:android="http://schemas.android.com/apk/res/android"
     android:width="24dp"
     android:height="24dp"
diff --git a/app/src/main/res/drawable/ic_block_black_24dp.xml b/app/src/main/res/drawable/ic_block_black_24dp.xml
index 0af0b020e..6d63f5637 100644
--- a/app/src/main/res/drawable/ic_block_black_24dp.xml
+++ b/app/src/main/res/drawable/ic_block_black_24dp.xml
@@ -1,3 +1,4 @@
+<!-- SPDX-License-Identifier: Apache-2.0 -->
 <vector xmlns:android="http://schemas.android.com/apk/res/android"
         android:width="24dp"
         android:height="24dp"
diff --git a/app/src/main/res/drawable/ic_code_black_24dp.xml b/app/src/main/res/drawable/ic_code_black_24dp.xml
index 5c574c220..ae10fe954 100644
--- a/app/src/main/res/drawable/ic_code_black_24dp.xml
+++ b/app/src/main/res/drawable/ic_code_black_24dp.xml
@@ -1,3 +1,4 @@
+<!-- SPDX-License-Identifier: Apache-2.0 -->
 <vector xmlns:android="http://schemas.android.com/apk/res/android"
         android:width="24dp"
         android:height="24dp"
diff --git a/app/src/main/res/drawable/ic_data_usage_black_24dp.xml b/app/src/main/res/drawable/ic_data_usage_black_24dp.xml
index c6b30474f..98bd45b69 100644
--- a/app/src/main/res/drawable/ic_data_usage_black_24dp.xml
+++ b/app/src/main/res/drawable/ic_data_usage_black_24dp.xml
@@ -1,3 +1,4 @@
+<!-- SPDX-License-Identifier: Apache-2.0 -->
 <vector xmlns:android="http://schemas.android.com/apk/res/android"
         android:width="24dp"
         android:height="24dp"
diff --git a/app/src/main/res/drawable/ic_delete_black_24dp.xml b/app/src/main/res/drawable/ic_delete_black_24dp.xml
index 649cbc334..9ea2afef4 100644
--- a/app/src/main/res/drawable/ic_delete_black_24dp.xml
+++ b/app/src/main/res/drawable/ic_delete_black_24dp.xml
@@ -1,3 +1,4 @@
+<!-- SPDX-License-Identifier: Apache-2.0 -->
 <vector xmlns:android="http://schemas.android.com/apk/res/android"
         android:width="24dp"
         android:height="24dp"
diff --git a/app/src/main/res/drawable/ic_expand_less_white_24dp.xml b/app/src/main/res/drawable/ic_expand_less_white_24dp.xml
index b4f6fa12d..79dca25a1 100644
--- a/app/src/main/res/drawable/ic_expand_less_white_24dp.xml
+++ b/app/src/main/res/drawable/ic_expand_less_white_24dp.xml
@@ -1,3 +1,4 @@
+<!-- SPDX-License-Identifier: Apache-2.0 -->
 <vector xmlns:android="http://schemas.android.com/apk/res/android"
     android:width="24dp"
     android:height="24dp"
diff --git a/app/src/main/res/drawable/ic_expand_more_white_24dp.xml b/app/src/main/res/drawable/ic_expand_more_white_24dp.xml
index 513c8444a..fa18f4bf3 100644
--- a/app/src/main/res/drawable/ic_expand_more_white_24dp.xml
+++ b/app/src/main/res/drawable/ic_expand_more_white_24dp.xml
@@ -1,3 +1,4 @@
+<!-- SPDX-License-Identifier: Apache-2.0 -->
 <vector xmlns:android="http://schemas.android.com/apk/res/android"
     android:width="24dp"
     android:height="24dp"
diff --git a/app/src/main/res/drawable/ic_filter_list_white_24dp.xml b/app/src/main/res/drawable/ic_filter_list_white_24dp.xml
index a1f0eb601..c110deca1 100644
--- a/app/src/main/res/drawable/ic_filter_list_white_24dp.xml
+++ b/app/src/main/res/drawable/ic_filter_list_white_24dp.xml
@@ -1,3 +1,4 @@
+<!-- SPDX-License-Identifier: Apache-2.0 -->
 <vector xmlns:android="http://schemas.android.com/apk/res/android"
     android:width="24dp"
     android:height="24dp"
diff --git a/app/src/main/res/drawable/ic_folder_white_24dp.xml b/app/src/main/res/drawable/ic_folder_white_24dp.xml
index e4a5ee4be..470c1ac3e 100644
--- a/app/src/main/res/drawable/ic_folder_white_24dp.xml
+++ b/app/src/main/res/drawable/ic_folder_white_24dp.xml
@@ -1,3 +1,4 @@
+<!-- SPDX-License-Identifier: Apache-2.0 -->
 <vector xmlns:android="http://schemas.android.com/apk/res/android"
     android:width="24dp"
     android:height="24dp"
diff --git a/app/src/main/res/drawable/ic_frost_aurorastore_black_24dp.xml b/app/src/main/res/drawable/ic_frost_aurorastore_black_24dp.xml
index 64c6b2311..1f1dd1779 100644
--- a/app/src/main/res/drawable/ic_frost_aurorastore_black_24dp.xml
+++ b/app/src/main/res/drawable/ic_frost_aurorastore_black_24dp.xml
@@ -1,3 +1,4 @@
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <vector android:height="24dp" android:viewportHeight="48"
     android:viewportWidth="48" android:width="24dp" xmlns:android="http://schemas.android.com/apk/res/android">
     <path android:fillColor="?android:attr/colorAccent" android:pathData="m24,4.4843c-0.7298,0 -1.4586,0.3569 -1.8854,1.0697l-8.3394,13.985h-8.4308c-2.2005,0.001 -3.8007,2.091 -3.227,4.2154l4.7363,17.51c0.3548,1.3312 1.5622,2.2563 2.9399,2.2513h28.413c1.3776,0.0051 2.5851,-0.9201 2.9399,-2.2513l4.7363,-17.51c0.5737,-2.1244 -1.0265,-4.2144 -3.227,-4.2154h-8.4308l-8.3394,-13.985c-0.4268,-0.7128 -1.1556,-1.0697 -1.8854,-1.0697zM24,10.9535 L29.1251,19.5393h-10.25zM23.9212,23.7445a2.1726,2.1726 0,0 1,1.9794 1.1155l6.3219,11.175a2.2246,2.2246 0,0 1,0 2.1852,2.1986 2.1986,0 0,1 -1.9006,1.0926h-12.672a2.1986,2.1986 0,0 1,-1.8981 -1.0926,2.2246 2.2246,0 0,1 0,-2.1852l6.3473,-11.175a2.1726,2.1726 0,0 1,1.8219 -1.1155zM24,30.3763 L21.3981,34.9297h5.2038z"/>
diff --git a/app/src/main/res/drawable/ic_frost_fdroid_black_24dp.xml b/app/src/main/res/drawable/ic_frost_fdroid_black_24dp.xml
index 23e733587..83e07e9b9 100644
--- a/app/src/main/res/drawable/ic_frost_fdroid_black_24dp.xml
+++ b/app/src/main/res/drawable/ic_frost_fdroid_black_24dp.xml
@@ -1,3 +1,4 @@
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <vector android:height="24dp" android:viewportHeight="48"
     android:viewportWidth="48" android:width="24dp" xmlns:android="http://schemas.android.com/apk/res/android">
     <path android:fillColor="?android:attr/colorAccent" android:pathData="m8.1331,23.032c-1.507,0 -3.0115,1.506 -3,3l0.1169,15.218c0.0115,1.494 1.493,3 3,3h31.5c1.507,0 3.0115,-1.506 3,-3l-0.1169,-15.218c-0.0115,-1.494 -1.493,-3 -3,-3z"/>
diff --git a/app/src/main/res/drawable/ic_frost_termux.xml b/app/src/main/res/drawable/ic_frost_termux.xml
index f242cd7f7..cc27e2ace 100644
--- a/app/src/main/res/drawable/ic_frost_termux.xml
+++ b/app/src/main/res/drawable/ic_frost_termux.xml
@@ -1,3 +1,4 @@
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <vector
     android:height="24dp"
     android:viewportHeight="48"
diff --git a/app/src/main/res/drawable/ic_image_black_24dp.xml b/app/src/main/res/drawable/ic_image_black_24dp.xml
index d64ef27eb..0021025b7 100644
--- a/app/src/main/res/drawable/ic_image_black_24dp.xml
+++ b/app/src/main/res/drawable/ic_image_black_24dp.xml
@@ -1,3 +1,4 @@
+<!-- SPDX-License-Identifier: Apache-2.0 -->
 <vector xmlns:android="http://schemas.android.com/apk/res/android"
         android:width="24dp"
         android:height="24dp"
diff --git a/app/src/main/res/drawable/ic_info_outline_black_24dp.xml b/app/src/main/res/drawable/ic_info_outline_black_24dp.xml
index d23ef0063..b9f48d9f8 100644
--- a/app/src/main/res/drawable/ic_info_outline_black_24dp.xml
+++ b/app/src/main/res/drawable/ic_info_outline_black_24dp.xml
@@ -1,3 +1,4 @@
+<!-- SPDX-License-Identifier: Apache-2.0 -->
 <vector xmlns:android="http://schemas.android.com/apk/res/android"
         android:width="24dp"
         android:height="24dp"
diff --git a/app/src/main/res/drawable/ic_insert_drive_file_white_24dp.xml b/app/src/main/res/drawable/ic_insert_drive_file_white_24dp.xml
index 65ec3e548..c098c9b49 100644
--- a/app/src/main/res/drawable/ic_insert_drive_file_white_24dp.xml
+++ b/app/src/main/res/drawable/ic_insert_drive_file_white_24dp.xml
@@ -1,3 +1,4 @@
+<!-- SPDX-License-Identifier: Apache-2.0 -->
 <vector xmlns:android="http://schemas.android.com/apk/res/android"
     android:width="24dp"
     android:height="24dp"
diff --git a/app/src/main/res/drawable/ic_keyboard_backspace_black_24dp.xml b/app/src/main/res/drawable/ic_keyboard_backspace_black_24dp.xml
index ffe8fb1f7..e273e498e 100644
--- a/app/src/main/res/drawable/ic_keyboard_backspace_black_24dp.xml
+++ b/app/src/main/res/drawable/ic_keyboard_backspace_black_24dp.xml
@@ -1,3 +1,4 @@
+<!-- SPDX-License-Identifier: Apache-2.0 -->
 <vector xmlns:android="http://schemas.android.com/apk/res/android"
         android:width="24dp"
         android:height="24dp"
diff --git a/app/src/main/res/drawable/ic_launcher_foreground.xml b/app/src/main/res/drawable/ic_launcher_foreground.xml
index 0b80cdec1..662f7f533 100644
--- a/app/src/main/res/drawable/ic_launcher_foreground.xml
+++ b/app/src/main/res/drawable/ic_launcher_foreground.xml
@@ -1,3 +1,4 @@
+<!-- SPDX-License-Identifier: GPL-3.0-or-later OR CC-BY-SA-4.0 -->
 <vector xmlns:android="http://schemas.android.com/apk/res/android"
     android:width="108dp"
     android:height="108dp"
diff --git a/app/src/main/res/drawable/ic_more_vert_black_24dp.xml b/app/src/main/res/drawable/ic_more_vert_black_24dp.xml
index d15043151..b8b7e157d 100644
--- a/app/src/main/res/drawable/ic_more_vert_black_24dp.xml
+++ b/app/src/main/res/drawable/ic_more_vert_black_24dp.xml
@@ -1,3 +1,4 @@
+<!-- SPDX-License-Identifier: Apache-2.0 -->
 <vector xmlns:android="http://schemas.android.com/apk/res/android"
         android:width="24dp"
         android:height="24dp"
diff --git a/app/src/main/res/drawable/ic_open_in_new_black_24dp.xml b/app/src/main/res/drawable/ic_open_in_new_black_24dp.xml
index 92df756b8..6191c9177 100644
--- a/app/src/main/res/drawable/ic_open_in_new_black_24dp.xml
+++ b/app/src/main/res/drawable/ic_open_in_new_black_24dp.xml
@@ -1,3 +1,4 @@
+<!-- SPDX-License-Identifier: Apache-2.0 -->
 <vector xmlns:android="http://schemas.android.com/apk/res/android"
         android:width="24dp"
         android:height="24dp"
diff --git a/app/src/main/res/drawable/ic_outline_plus_one_24.xml b/app/src/main/res/drawable/ic_outline_plus_one_24.xml
index cb307d44a..6d5ab26e3 100644
--- a/app/src/main/res/drawable/ic_outline_plus_one_24.xml
+++ b/app/src/main/res/drawable/ic_outline_plus_one_24.xml
@@ -1,3 +1,4 @@
+<!-- SPDX-License-Identifier: Apache-2.0 -->
 <vector xmlns:android="http://schemas.android.com/apk/res/android"
     android:width="24dp"
     android:height="24dp"
diff --git a/app/src/main/res/drawable/ic_pause_white_24dp.xml b/app/src/main/res/drawable/ic_pause_white_24dp.xml
index 43b0ace1c..77c8a5364 100644
--- a/app/src/main/res/drawable/ic_pause_white_24dp.xml
+++ b/app/src/main/res/drawable/ic_pause_white_24dp.xml
@@ -1,3 +1,4 @@
+<!-- SPDX-License-Identifier: Apache-2.0 -->
 <vector xmlns:android="http://schemas.android.com/apk/res/android"
     android:width="24dp"
     android:height="24dp"
diff --git a/app/src/main/res/drawable/ic_play_arrow_white_24dp.xml b/app/src/main/res/drawable/ic_play_arrow_white_24dp.xml
index a8cf65c05..3586b2ae9 100644
--- a/app/src/main/res/drawable/ic_play_arrow_white_24dp.xml
+++ b/app/src/main/res/drawable/ic_play_arrow_white_24dp.xml
@@ -1,3 +1,4 @@
+<!-- SPDX-License-Identifier: Apache-2.0 -->
 <vector xmlns:android="http://schemas.android.com/apk/res/android"
     android:width="24dp"
     android:height="24dp"
diff --git a/app/src/main/res/drawable/ic_record_white_24dp.xml b/app/src/main/res/drawable/ic_record_white_24dp.xml
index 752b3d855..6b15db589 100644
--- a/app/src/main/res/drawable/ic_record_white_24dp.xml
+++ b/app/src/main/res/drawable/ic_record_white_24dp.xml
@@ -1,3 +1,4 @@
+<!-- SPDX-License-Identifier: Apache-2.0 -->
 <?xml version="1.0" encoding="UTF-8" standalone="no"?>
 <vector xmlns:android="http://schemas.android.com/apk/res/android"
     android:height="24dp"
diff --git a/app/src/main/res/drawable/ic_refresh_black_24dp.xml b/app/src/main/res/drawable/ic_refresh_black_24dp.xml
index d67cf9447..03f1aca3b 100644
--- a/app/src/main/res/drawable/ic_refresh_black_24dp.xml
+++ b/app/src/main/res/drawable/ic_refresh_black_24dp.xml
@@ -1,3 +1,4 @@
+<!-- SPDX-License-Identifier: Apache-2.0 -->
 <vector xmlns:android="http://schemas.android.com/apk/res/android"
         android:width="24dp"
         android:height="24dp"
diff --git a/app/src/main/res/drawable/ic_restore_black_24dp.xml b/app/src/main/res/drawable/ic_restore_black_24dp.xml
index 4eddf9dfe..4be06b2ae 100644
--- a/app/src/main/res/drawable/ic_restore_black_24dp.xml
+++ b/app/src/main/res/drawable/ic_restore_black_24dp.xml
@@ -1,3 +1,4 @@
+<!-- SPDX-License-Identifier: Apache-2.0 -->
 <vector xmlns:android="http://schemas.android.com/apk/res/android"
         android:width="24dp"
         android:height="24dp"
diff --git a/app/src/main/res/drawable/ic_search.xml b/app/src/main/res/drawable/ic_search.xml
index dafd91385..cbc3a9130 100644
--- a/app/src/main/res/drawable/ic_search.xml
+++ b/app/src/main/res/drawable/ic_search.xml
@@ -1,3 +1,4 @@
+<!-- SPDX-License-Identifier: Apache-2.0 -->
 <?xml version="1.0" encoding="UTF-8" standalone="no"?>
 <vector xmlns:android="http://schemas.android.com/apk/res/android"
     android:height="24dp"
diff --git a/app/src/main/res/drawable/ic_share_black_24dp.xml b/app/src/main/res/drawable/ic_share_black_24dp.xml
index 5f3ebb26b..727ec9d9a 100644
--- a/app/src/main/res/drawable/ic_share_black_24dp.xml
+++ b/app/src/main/res/drawable/ic_share_black_24dp.xml
@@ -1,3 +1,4 @@
+<!-- SPDX-License-Identifier: Apache-2.0 -->
 <vector xmlns:android="http://schemas.android.com/apk/res/android"
         android:width="24dp"
         android:height="24dp"
diff --git a/app/src/main/res/drawable/ic_shortcut_record.xml b/app/src/main/res/drawable/ic_shortcut_record.xml
index 3bcbce309..0498eebbe 100644
--- a/app/src/main/res/drawable/ic_shortcut_record.xml
+++ b/app/src/main/res/drawable/ic_shortcut_record.xml
@@ -1,3 +1,4 @@
+<!-- SPDX-License-Identifier: WTFPL -->
 <vector android:height="24dp"
     android:viewportHeight="192.0"
     android:viewportWidth="192.0"
diff --git a/app/src/main/res/drawable/ic_sort_black_24dp.xml b/app/src/main/res/drawable/ic_sort_black_24dp.xml
index 41449bd53..bc0c390fe 100644
--- a/app/src/main/res/drawable/ic_sort_black_24dp.xml
+++ b/app/src/main/res/drawable/ic_sort_black_24dp.xml
@@ -1,3 +1,4 @@
+<!-- SPDX-License-Identifier: Apache-2.0 -->
 <vector xmlns:android="http://schemas.android.com/apk/res/android"
         android:width="24dp"
         android:height="24dp"
diff --git a/app/src/main/res/drawable/ic_sort_white_24dp.xml b/app/src/main/res/drawable/ic_sort_white_24dp.xml
index 31b2689d5..654661ee8 100644
--- a/app/src/main/res/drawable/ic_sort_white_24dp.xml
+++ b/app/src/main/res/drawable/ic_sort_white_24dp.xml
@@ -1,3 +1,4 @@
+<!-- SPDX-License-Identifier: Apache-2.0 -->
 <vector xmlns:android="http://schemas.android.com/apk/res/android"
     android:width="24dp"
     android:height="24dp"
diff --git a/app/src/main/res/drawable/ic_spinner_caret.xml b/app/src/main/res/drawable/ic_spinner_caret.xml
index 3717b137f..7ef37651f 100644
--- a/app/src/main/res/drawable/ic_spinner_caret.xml
+++ b/app/src/main/res/drawable/ic_spinner_caret.xml
@@ -1,4 +1,4 @@
-<?xml version="1.0" encoding="utf-8"?>
+<!-- SPDX-License-Identifier: Apache-2.0 -->
 <vector xmlns:android="http://schemas.android.com/apk/res/android"
     android:width="24dp"
     android:height="24dp"
diff --git a/app/src/main/res/drawable/ic_stop_white_24dp.xml b/app/src/main/res/drawable/ic_stop_white_24dp.xml
index 5a311f1be..370129edf 100644
--- a/app/src/main/res/drawable/ic_stop_white_24dp.xml
+++ b/app/src/main/res/drawable/ic_stop_white_24dp.xml
@@ -1,3 +1,4 @@
+<!-- SPDX-License-Identifier: Apache-2.0 -->
 <vector xmlns:android="http://schemas.android.com/apk/res/android"
     android:width="24dp"
     android:height="24dp"
diff --git a/app/src/main/res/drawable/ic_tune_black_24dp.xml b/app/src/main/res/drawable/ic_tune_black_24dp.xml
index 7c299b1a8..3164b1f6a 100644
--- a/app/src/main/res/drawable/ic_tune_black_24dp.xml
+++ b/app/src/main/res/drawable/ic_tune_black_24dp.xml
@@ -1,3 +1,4 @@
+<!-- SPDX-License-Identifier: Apache-2.0 -->
 <vector xmlns:android="http://schemas.android.com/apk/res/android"
         android:width="24dp"
         android:height="24dp"
diff --git a/app/src/main/res/drawable/ic_view_agenda_white_24dp.xml b/app/src/main/res/drawable/ic_view_agenda_white_24dp.xml
index feb7020cb..9a5fa1884 100644
--- a/app/src/main/res/drawable/ic_view_agenda_white_24dp.xml
+++ b/app/src/main/res/drawable/ic_view_agenda_white_24dp.xml
@@ -1,3 +1,4 @@
+<!-- SPDX-License-Identifier: Apache-2.0 -->
 <vector xmlns:android="http://schemas.android.com/apk/res/android"
     android:width="24dp"
     android:height="24dp"
diff --git a/app/src/main/res/drawable/ic_view_list_black_24dp.xml b/app/src/main/res/drawable/ic_view_list_black_24dp.xml
index fac0113c2..9fea92e90 100644
--- a/app/src/main/res/drawable/ic_view_list_black_24dp.xml
+++ b/app/src/main/res/drawable/ic_view_list_black_24dp.xml
@@ -1,3 +1,4 @@
+<!-- SPDX-License-Identifier: Apache-2.0 -->
 <vector xmlns:android="http://schemas.android.com/apk/res/android"
         android:width="24dp"
         android:height="24dp"
diff --git a/app/src/main/res/drawable/ic_wrap_text_black_24dp.xml b/app/src/main/res/drawable/ic_wrap_text_black_24dp.xml
index 37744ae89..e5d55012a 100644
--- a/app/src/main/res/drawable/ic_wrap_text_black_24dp.xml
+++ b/app/src/main/res/drawable/ic_wrap_text_black_24dp.xml
@@ -1,3 +1,4 @@
+<!-- SPDX-License-Identifier: Apache-2.0 -->
 <vector xmlns:android="http://schemas.android.com/apk/res/android"
         android:width="24dp"
         android:height="24dp"
diff --git a/app/src/main/res/drawable/outlined_stroke_color.xml b/app/src/main/res/drawable/outlined_stroke_color.xml
index 181ad5358..283ed6cb2 100644
--- a/app/src/main/res/drawable/outlined_stroke_color.xml
+++ b/app/src/main/res/drawable/outlined_stroke_color.xml
@@ -1,21 +1,4 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <!-- NOTE: This is only done here because colorOnSurface in night theme causes crash -->
 <selector xmlns:android="http://schemas.android.com/apk/res/android">
     <item android:color="?attr/colorAccent" android:state_focused="true"/>
diff --git a/app/src/main/res/drawable/spinner_rounded_border.xml b/app/src/main/res/drawable/spinner_rounded_border.xml
index 1e7ec071c..b0b256f4e 100644
--- a/app/src/main/res/drawable/spinner_rounded_border.xml
+++ b/app/src/main/res/drawable/spinner_rounded_border.xml
@@ -1,21 +1,4 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <layer-list xmlns:android="http://schemas.android.com/apk/res/android">
 <item>
     <shape>
diff --git a/app/src/main/res/layout/activity_any_viewer.xml b/app/src/main/res/layout/activity_any_viewer.xml
index 24f1ea2e5..e49919fe8 100644
--- a/app/src/main/res/layout/activity_any_viewer.xml
+++ b/app/src/main/res/layout/activity_any_viewer.xml
@@ -1,21 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <androidx.coordinatorlayout.widget.CoordinatorLayout
     xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:app="http://schemas.android.com/apk/res-auto"
diff --git a/app/src/main/res/layout/activity_app_details.xml b/app/src/main/res/layout/activity_app_details.xml
index 03b844ff0..d51a811b9 100644
--- a/app/src/main/res/layout/activity_app_details.xml
+++ b/app/src/main/res/layout/activity_app_details.xml
@@ -1,21 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: Apache-2.0 AND GPL-3.0-or-later -->
 <androidx.coordinatorlayout.widget.CoordinatorLayout
     xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:app="http://schemas.android.com/apk/res-auto"
diff --git a/app/src/main/res/layout/activity_app_usage.xml b/app/src/main/res/layout/activity_app_usage.xml
index 1a7e7d282..e41f34ded 100644
--- a/app/src/main/res/layout/activity_app_usage.xml
+++ b/app/src/main/res/layout/activity_app_usage.xml
@@ -1,21 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <androidx.coordinatorlayout.widget.CoordinatorLayout
     xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:app="http://schemas.android.com/apk/res-auto"
diff --git a/app/src/main/res/layout/activity_apps_profile.xml b/app/src/main/res/layout/activity_apps_profile.xml
index f52982e7a..ac4780b53 100644
--- a/app/src/main/res/layout/activity_apps_profile.xml
+++ b/app/src/main/res/layout/activity_apps_profile.xml
@@ -1,21 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <androidx.coordinatorlayout.widget.CoordinatorLayout
     xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:app="http://schemas.android.com/apk/res-auto"
diff --git a/app/src/main/res/layout/activity_class_listing.xml b/app/src/main/res/layout/activity_class_listing.xml
index 2ab491907..422216eb4 100644
--- a/app/src/main/res/layout/activity_class_listing.xml
+++ b/app/src/main/res/layout/activity_class_listing.xml
@@ -1,21 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: Apache-2.0 AND GPL-3.0-or-later -->
 <androidx.coordinatorlayout.widget.CoordinatorLayout
     xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:app="http://schemas.android.com/apk/res-auto"
diff --git a/app/src/main/res/layout/activity_help.xml b/app/src/main/res/layout/activity_help.xml
index f139dcc5e..97cdb07a2 100644
--- a/app/src/main/res/layout/activity_help.xml
+++ b/app/src/main/res/layout/activity_help.xml
@@ -1,21 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2021 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <androidx.coordinatorlayout.widget.CoordinatorLayout
     xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:app="http://schemas.android.com/apk/res-auto"
diff --git a/app/src/main/res/layout/activity_interceptor.xml b/app/src/main/res/layout/activity_interceptor.xml
index 5a0d0476d..209fd9cd7 100644
--- a/app/src/main/res/layout/activity_interceptor.xml
+++ b/app/src/main/res/layout/activity_interceptor.xml
@@ -1,21 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: Apache-2.0 AND GPL-3.0-or-later -->
 <androidx.coordinatorlayout.widget.CoordinatorLayout
 	xmlns:android="http://schemas.android.com/apk/res/android"
 	xmlns:app="http://schemas.android.com/apk/res-auto"
diff --git a/app/src/main/res/layout/activity_logcat.xml b/app/src/main/res/layout/activity_logcat.xml
index 8d392d834..ae9f72f9b 100644
--- a/app/src/main/res/layout/activity_logcat.xml
+++ b/app/src/main/res/layout/activity_logcat.xml
@@ -1,20 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2021 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
+<!-- SPDX-License-Identifier: WTFPL AND GPL-3.0-or-later -->
 <androidx.coordinatorlayout.widget.CoordinatorLayout
     xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:app="http://schemas.android.com/apk/res-auto"
diff --git a/app/src/main/res/layout/activity_main.xml b/app/src/main/res/layout/activity_main.xml
index f5a465927..5c1090e24 100644
--- a/app/src/main/res/layout/activity_main.xml
+++ b/app/src/main/res/layout/activity_main.xml
@@ -1,20 +1,4 @@
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: Apache-2.0 AND GPL-3.0-or-later -->
 <androidx.coordinatorlayout.widget.CoordinatorLayout
     xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:app="http://schemas.android.com/apk/res-auto"
diff --git a/app/src/main/res/layout/activity_one_click_ops.xml b/app/src/main/res/layout/activity_one_click_ops.xml
index 018f2fd9c..6d6795d01 100644
--- a/app/src/main/res/layout/activity_one_click_ops.xml
+++ b/app/src/main/res/layout/activity_one_click_ops.xml
@@ -1,21 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <androidx.coordinatorlayout.widget.CoordinatorLayout
     xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:app="http://schemas.android.com/apk/res-auto"
diff --git a/app/src/main/res/layout/activity_profiles.xml b/app/src/main/res/layout/activity_profiles.xml
index d01296e61..baa9f490f 100644
--- a/app/src/main/res/layout/activity_profiles.xml
+++ b/app/src/main/res/layout/activity_profiles.xml
@@ -1,21 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <androidx.coordinatorlayout.widget.CoordinatorLayout
     xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:app="http://schemas.android.com/apk/res-auto"
diff --git a/app/src/main/res/layout/activity_running_apps.xml b/app/src/main/res/layout/activity_running_apps.xml
index 6745e4f06..c4eecf85b 100644
--- a/app/src/main/res/layout/activity_running_apps.xml
+++ b/app/src/main/res/layout/activity_running_apps.xml
@@ -1,21 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <androidx.coordinatorlayout.widget.CoordinatorLayout
     xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:app="http://schemas.android.com/apk/res-auto"
diff --git a/app/src/main/res/layout/activity_scanner.xml b/app/src/main/res/layout/activity_scanner.xml
index 9c42ef556..ce5a68106 100644
--- a/app/src/main/res/layout/activity_scanner.xml
+++ b/app/src/main/res/layout/activity_scanner.xml
@@ -1,21 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: Apache-2.0 AND GPL-3.0-or-later -->
 <androidx.coordinatorlayout.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android"
     android:layout_width="match_parent"
     android:layout_height="match_parent"
diff --git a/app/src/main/res/layout/activity_settings.xml b/app/src/main/res/layout/activity_settings.xml
index 652409d0e..d041a7b46 100644
--- a/app/src/main/res/layout/activity_settings.xml
+++ b/app/src/main/res/layout/activity_settings.xml
@@ -1,21 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <androidx.coordinatorlayout.widget.CoordinatorLayout
     xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:app="http://schemas.android.com/apk/res-auto"
diff --git a/app/src/main/res/layout/activity_shared_prefs.xml b/app/src/main/res/layout/activity_shared_prefs.xml
index 631625a48..f7cd7ea2e 100644
--- a/app/src/main/res/layout/activity_shared_prefs.xml
+++ b/app/src/main/res/layout/activity_shared_prefs.xml
@@ -1,21 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <androidx.coordinatorlayout.widget.CoordinatorLayout
     xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:app="http://schemas.android.com/apk/res-auto"
diff --git a/app/src/main/res/layout/activity_sys_config.xml b/app/src/main/res/layout/activity_sys_config.xml
index d3ceef91f..3a202a7b4 100644
--- a/app/src/main/res/layout/activity_sys_config.xml
+++ b/app/src/main/res/layout/activity_sys_config.xml
@@ -1,21 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <androidx.coordinatorlayout.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android"
     android:layout_width="match_parent"
     android:layout_height="match_parent"
diff --git a/app/src/main/res/layout/appbar.xml b/app/src/main/res/layout/appbar.xml
index f5a73d3b2..2710a7192 100644
--- a/app/src/main/res/layout/appbar.xml
+++ b/app/src/main/res/layout/appbar.xml
@@ -1,20 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 
 <com.google.android.material.appbar.AppBarLayout
     xmlns:android="http://schemas.android.com/apk/res/android"
diff --git a/app/src/main/res/layout/dialog_about.xml b/app/src/main/res/layout/dialog_about.xml
index 01ed24714..134ca6e6a 100644
--- a/app/src/main/res/layout/dialog_about.xml
+++ b/app/src/main/res/layout/dialog_about.xml
@@ -1,21 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:tools="http://schemas.android.com/tools"
     android:layout_width="match_parent"
diff --git a/app/src/main/res/layout/dialog_app_usage_details.xml b/app/src/main/res/layout/dialog_app_usage_details.xml
index b1fd78104..a270b329b 100644
--- a/app/src/main/res/layout/dialog_app_usage_details.xml
+++ b/app/src/main/res/layout/dialog_app_usage_details.xml
@@ -1,21 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <FrameLayout
     xmlns:android="http://schemas.android.com/apk/res/android"
     android:layout_width="match_parent"
diff --git a/app/src/main/res/layout/dialog_backup_tasks.xml b/app/src/main/res/layout/dialog_backup_tasks.xml
index c97119b8e..e450ca70b 100644
--- a/app/src/main/res/layout/dialog_backup_tasks.xml
+++ b/app/src/main/res/layout/dialog_backup_tasks.xml
@@ -1,21 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2021 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <ScrollView
     xmlns:android="http://schemas.android.com/apk/res/android"
     android:layout_width="match_parent"
diff --git a/app/src/main/res/layout/dialog_certificate_generator.xml b/app/src/main/res/layout/dialog_certificate_generator.xml
index 929960b63..9e02c449e 100644
--- a/app/src/main/res/layout/dialog_certificate_generator.xml
+++ b/app/src/main/res/layout/dialog_certificate_generator.xml
@@ -1,21 +1,5 @@
 <?xml version='1.0' encoding='utf-8'?>
-<!--
-  ~ Copyright (C) 2021 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
     android:layout_width="fill_parent"
     android:layout_height="wrap_content"
diff --git a/app/src/main/res/layout/dialog_disclaimer.xml b/app/src/main/res/layout/dialog_disclaimer.xml
index 94cbf7fa9..5ff8a3b57 100644
--- a/app/src/main/res/layout/dialog_disclaimer.xml
+++ b/app/src/main/res/layout/dialog_disclaimer.xml
@@ -1,21 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:tools="http://schemas.android.com/tools"
     android:layout_width="match_parent"
diff --git a/app/src/main/res/layout/dialog_edit_pref_item.xml b/app/src/main/res/layout/dialog_edit_pref_item.xml
index 61b09fdf8..5d1d678e1 100644
--- a/app/src/main/res/layout/dialog_edit_pref_item.xml
+++ b/app/src/main/res/layout/dialog_edit_pref_item.xml
@@ -1,21 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
     android:layout_width="match_parent"
     android:layout_height="match_parent"
diff --git a/app/src/main/res/layout/dialog_fullscreen.xml b/app/src/main/res/layout/dialog_fullscreen.xml
index 317a8299d..5dd4594b5 100644
--- a/app/src/main/res/layout/dialog_fullscreen.xml
+++ b/app/src/main/res/layout/dialog_fullscreen.xml
@@ -1,21 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <androidx.coordinatorlayout.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:app="http://schemas.android.com/apk/res-auto"
     xmlns:tools="http://schemas.android.com/tools"
diff --git a/app/src/main/res/layout/dialog_icon_picker.xml b/app/src/main/res/layout/dialog_icon_picker.xml
index 2ac16087c..1a6987461 100644
--- a/app/src/main/res/layout/dialog_icon_picker.xml
+++ b/app/src/main/res/layout/dialog_icon_picker.xml
@@ -1,21 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: ISC AND GPL-3.0-or-later -->
 <GridView xmlns:android="http://schemas.android.com/apk/res/android"
     android:layout_width="match_parent"
     android:layout_height="match_parent"
diff --git a/app/src/main/res/layout/dialog_key_pair_importer.xml b/app/src/main/res/layout/dialog_key_pair_importer.xml
index b733b3c2c..8f7873ac4 100644
--- a/app/src/main/res/layout/dialog_key_pair_importer.xml
+++ b/app/src/main/res/layout/dialog_key_pair_importer.xml
@@ -1,20 +1,5 @@
 <?xml version='1.0' encoding='utf-8'?>
-<!--
-  ~ Copyright (C) 2021 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
     android:layout_width="fill_parent"
     android:layout_height="wrap_content"
diff --git a/app/src/main/res/layout/dialog_list_options.xml b/app/src/main/res/layout/dialog_list_options.xml
index 69657df4f..a37ed3906 100644
--- a/app/src/main/res/layout/dialog_list_options.xml
+++ b/app/src/main/res/layout/dialog_list_options.xml
@@ -1,21 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (c) 2021 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <androidx.core.widget.NestedScrollView xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:tools="http://schemas.android.com/tools"
     android:layout_width="match_parent"
diff --git a/app/src/main/res/layout/dialog_partial_save_help.xml b/app/src/main/res/layout/dialog_partial_save_help.xml
index c9781dddc..cafc4f629 100644
--- a/app/src/main/res/layout/dialog_partial_save_help.xml
+++ b/app/src/main/res/layout/dialog_partial_save_help.xml
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
+<!-- SPDX-License-Identifier: WTFPL AND GPL-3.0-or-later -->
 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:app="http://schemas.android.com/apk/res-auto"
     android:layout_width="match_parent"
     android:layout_height="wrap_content"
     android:orientation="vertical"
diff --git a/app/src/main/res/layout/dialog_profile_backup_restore.xml b/app/src/main/res/layout/dialog_profile_backup_restore.xml
index 7107390dd..8c629bd6e 100644
--- a/app/src/main/res/layout/dialog_profile_backup_restore.xml
+++ b/app/src/main/res/layout/dialog_profile_backup_restore.xml
@@ -1,21 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
     android:layout_width="match_parent"
     android:layout_height="match_parent"
diff --git a/app/src/main/res/layout/dialog_progress.xml b/app/src/main/res/layout/dialog_progress.xml
index 87db20424..c3a6f4bf1 100644
--- a/app/src/main/res/layout/dialog_progress.xml
+++ b/app/src/main/res/layout/dialog_progress.xml
@@ -1,21 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
     android:layout_width="match_parent"
     android:layout_height="match_parent"
diff --git a/app/src/main/res/layout/dialog_restore_tasks.xml b/app/src/main/res/layout/dialog_restore_tasks.xml
index 724d98161..e1f8ed845 100644
--- a/app/src/main/res/layout/dialog_restore_tasks.xml
+++ b/app/src/main/res/layout/dialog_restore_tasks.xml
@@ -1,21 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2021 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <ScrollView
     xmlns:android="http://schemas.android.com/apk/res/android"
     android:layout_width="match_parent"
diff --git a/app/src/main/res/layout/dialog_scrollable_text_view.xml b/app/src/main/res/layout/dialog_scrollable_text_view.xml
index 59b5a87cb..0fd1af132 100644
--- a/app/src/main/res/layout/dialog_scrollable_text_view.xml
+++ b/app/src/main/res/layout/dialog_scrollable_text_view.xml
@@ -1,21 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:tools="http://schemas.android.com/tools"
     android:layout_width="match_parent"
diff --git a/app/src/main/res/layout/dialog_searchable_multi_choice.xml b/app/src/main/res/layout/dialog_searchable_multi_choice.xml
index 6b0402c11..cff681938 100644
--- a/app/src/main/res/layout/dialog_searchable_multi_choice.xml
+++ b/app/src/main/res/layout/dialog_searchable_multi_choice.xml
@@ -1,21 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <androidx.appcompat.widget.LinearLayoutCompat xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:app="http://schemas.android.com/apk/res-auto"
     xmlns:tools="http://schemas.android.com/tools"
diff --git a/app/src/main/res/layout/dialog_searchby.xml b/app/src/main/res/layout/dialog_searchby.xml
index 54144dddb..85d9aaad1 100644
--- a/app/src/main/res/layout/dialog_searchby.xml
+++ b/app/src/main/res/layout/dialog_searchby.xml
@@ -1,4 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
+<!-- SPDX-License-Identifier: WTFPL AND GPL-3.0-or-later -->
 <androidx.appcompat.widget.LinearLayoutCompat xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:tools="http://schemas.android.com/tools"
     android:layout_width="match_parent"
diff --git a/app/src/main/res/layout/dialog_send_log.xml b/app/src/main/res/layout/dialog_send_log.xml
index eb8d9b9e1..ca6eeaf47 100644
--- a/app/src/main/res/layout/dialog_send_log.xml
+++ b/app/src/main/res/layout/dialog_send_log.xml
@@ -1,4 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
+<!-- SPDX-License-Identifier: WTFPL AND GPL-3.0-or-later -->
 <androidx.appcompat.widget.LinearLayoutCompat xmlns:android="http://schemas.android.com/apk/res/android"
     android:layout_width="match_parent"
     android:layout_height="wrap_content"
diff --git a/app/src/main/res/layout/dialog_settings_import_export.xml b/app/src/main/res/layout/dialog_settings_import_export.xml
index 0db31fb5a..a470c981e 100644
--- a/app/src/main/res/layout/dialog_settings_import_export.xml
+++ b/app/src/main/res/layout/dialog_settings_import_export.xml
@@ -1,21 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <ScrollView
     xmlns:android="http://schemas.android.com/apk/res/android"
     android:layout_width="match_parent"
diff --git a/app/src/main/res/layout/dialog_shortcut.xml b/app/src/main/res/layout/dialog_shortcut.xml
index 88cebf91b..2fa193d76 100644
--- a/app/src/main/res/layout/dialog_shortcut.xml
+++ b/app/src/main/res/layout/dialog_shortcut.xml
@@ -1,21 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: ISC AND GPL-3.0-or-later -->
 <ScrollView
     xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:app="http://schemas.android.com/apk/res-auto"
diff --git a/app/src/main/res/layout/dialog_ssaid_info.xml b/app/src/main/res/layout/dialog_ssaid_info.xml
index 77731faf4..620596c6b 100644
--- a/app/src/main/res/layout/dialog_ssaid_info.xml
+++ b/app/src/main/res/layout/dialog_ssaid_info.xml
@@ -1,20 +1,5 @@
-<?xml version="1.0" encoding="utf-8"?><!--
-  ~ Copyright (c) 2021 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<?xml version="1.0" encoding="utf-8"?>
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <androidx.appcompat.widget.LinearLayoutCompat xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:tools="http://schemas.android.com/tools"
     android:layout_width="match_parent"
diff --git a/app/src/main/res/layout/dialog_text_input.xml b/app/src/main/res/layout/dialog_text_input.xml
index 326c9675e..b4140fac9 100644
--- a/app/src/main/res/layout/dialog_text_input.xml
+++ b/app/src/main/res/layout/dialog_text_input.xml
@@ -1,21 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <ScrollView
     xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:app="http://schemas.android.com/apk/res-auto"
diff --git a/app/src/main/res/layout/dialog_text_input_dropdown.xml b/app/src/main/res/layout/dialog_text_input_dropdown.xml
index 30ac3210d..8d53cfca1 100644
--- a/app/src/main/res/layout/dialog_text_input_dropdown.xml
+++ b/app/src/main/res/layout/dialog_text_input_dropdown.xml
@@ -1,21 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <ScrollView
     xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:app="http://schemas.android.com/apk/res-auto"
diff --git a/app/src/main/res/layout/dialog_title_with_icon.xml b/app/src/main/res/layout/dialog_title_with_icon.xml
index 2b867bfb4..bcc28f017 100644
--- a/app/src/main/res/layout/dialog_title_with_icon.xml
+++ b/app/src/main/res/layout/dialog_title_with_icon.xml
@@ -1,4 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:tools="http://schemas.android.com/tools"
     android:layout_width="match_parent"
diff --git a/app/src/main/res/layout/dialog_whats_new.xml b/app/src/main/res/layout/dialog_whats_new.xml
index 74d7f80f3..f7e4087ed 100644
--- a/app/src/main/res/layout/dialog_whats_new.xml
+++ b/app/src/main/res/layout/dialog_whats_new.xml
@@ -1,21 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <androidx.recyclerview.widget.RecyclerView
     xmlns:android="http://schemas.android.com/apk/res/android"
     android:id="@android:id/list"
diff --git a/app/src/main/res/layout/fragment_container.xml b/app/src/main/res/layout/fragment_container.xml
index 95eba1e96..ecd3a5f9f 100644
--- a/app/src/main/res/layout/fragment_container.xml
+++ b/app/src/main/res/layout/fragment_container.xml
@@ -1,21 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <androidx.fragment.app.FragmentContainerView
     xmlns:android="http://schemas.android.com/apk/res/android"
     android:id="@+id/fragment_container_view_tag"
diff --git a/app/src/main/res/layout/header_app_usage.xml b/app/src/main/res/layout/header_app_usage.xml
index 99d916afa..6895ad645 100644
--- a/app/src/main/res/layout/header_app_usage.xml
+++ b/app/src/main/res/layout/header_app_usage.xml
@@ -1,21 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <LinearLayout
     xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:tools="http://schemas.android.com/tools"
diff --git a/app/src/main/res/layout/header_logcat_add_filter.xml b/app/src/main/res/layout/header_logcat_add_filter.xml
index 3f2a03bf1..6588debe2 100644
--- a/app/src/main/res/layout/header_logcat_add_filter.xml
+++ b/app/src/main/res/layout/header_logcat_add_filter.xml
@@ -1,20 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2021 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
+<!-- SPDX-License-Identifier: WTFPL AND GPL-3.0-or-later -->
 <androidx.appcompat.widget.LinearLayoutCompat xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:app="http://schemas.android.com/apk/res-auto"
     android:layout_width="match_parent"
diff --git a/app/src/main/res/layout/item_app_details_appop.xml b/app/src/main/res/layout/item_app_details_appop.xml
index f89c9c268..715ec4541 100644
--- a/app/src/main/res/layout/item_app_details_appop.xml
+++ b/app/src/main/res/layout/item_app_details_appop.xml
@@ -1,21 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: Apache-2.0 AND GPL-3.0-or-later -->
 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:tools="http://schemas.android.com/tools"
     android:layout_width="match_parent"
diff --git a/app/src/main/res/layout/item_app_details_perm.xml b/app/src/main/res/layout/item_app_details_perm.xml
index c4190cd0b..f14faf88b 100644
--- a/app/src/main/res/layout/item_app_details_perm.xml
+++ b/app/src/main/res/layout/item_app_details_perm.xml
@@ -1,21 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: Apache-2.0 AND GPL-3.0-or-later -->
 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:tools="http://schemas.android.com/tools"
     android:layout_width="match_parent"
diff --git a/app/src/main/res/layout/item_app_details_primary.xml b/app/src/main/res/layout/item_app_details_primary.xml
index 36c1a2a29..95c2bee2b 100644
--- a/app/src/main/res/layout/item_app_details_primary.xml
+++ b/app/src/main/res/layout/item_app_details_primary.xml
@@ -1,21 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: Apache-2.0 AND GPL-3.0-or-later -->
 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:tools="http://schemas.android.com/tools"
     android:layout_width="match_parent"
diff --git a/app/src/main/res/layout/item_app_details_secondary.xml b/app/src/main/res/layout/item_app_details_secondary.xml
index 23c73a10c..a0145bee3 100644
--- a/app/src/main/res/layout/item_app_details_secondary.xml
+++ b/app/src/main/res/layout/item_app_details_secondary.xml
@@ -1,21 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: Apache-2.0 AND GPL-3.0-or-later -->
 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:tools="http://schemas.android.com/tools"
     android:layout_width="match_parent"
diff --git a/app/src/main/res/layout/item_app_details_tertiary.xml b/app/src/main/res/layout/item_app_details_tertiary.xml
index eab17f150..1815269f9 100644
--- a/app/src/main/res/layout/item_app_details_tertiary.xml
+++ b/app/src/main/res/layout/item_app_details_tertiary.xml
@@ -1,21 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: Apache-2.0 AND GPL-3.0-or-later -->
 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:tools="http://schemas.android.com/tools"
     android:layout_width="match_parent"
diff --git a/app/src/main/res/layout/item_app_info_actions.xml b/app/src/main/res/layout/item_app_info_actions.xml
index e0d11afbd..eab586dbc 100644
--- a/app/src/main/res/layout/item_app_info_actions.xml
+++ b/app/src/main/res/layout/item_app_info_actions.xml
@@ -1,21 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <com.google.android.material.card.MaterialCardView
     xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:app="http://schemas.android.com/apk/res-auto"
diff --git a/app/src/main/res/layout/item_app_usage.xml b/app/src/main/res/layout/item_app_usage.xml
index 1c80680ac..f03ff30ba 100644
--- a/app/src/main/res/layout/item_app_usage.xml
+++ b/app/src/main/res/layout/item_app_usage.xml
@@ -1,21 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:tools="http://schemas.android.com/tools"
     xmlns:app="http://schemas.android.com/apk/res-auto"
diff --git a/app/src/main/res/layout/item_app_usage_details.xml b/app/src/main/res/layout/item_app_usage_details.xml
index 24ffcecaf..b2f869f80 100644
--- a/app/src/main/res/layout/item_app_usage_details.xml
+++ b/app/src/main/res/layout/item_app_usage_details.xml
@@ -1,21 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:tools="http://schemas.android.com/tools"
     android:layout_width="match_parent"
diff --git a/app/src/main/res/layout/item_checked_text_view.xml b/app/src/main/res/layout/item_checked_text_view.xml
index d762a097a..ae4f16dc8 100644
--- a/app/src/main/res/layout/item_checked_text_view.xml
+++ b/app/src/main/res/layout/item_checked_text_view.xml
@@ -1,21 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <CheckedTextView xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:tools="http://schemas.android.com/tools"
     android:id="@android:id/text1"
diff --git a/app/src/main/res/layout/item_divider_horizontal.xml b/app/src/main/res/layout/item_divider_horizontal.xml
index 32e8a0ec8..2e575906e 100644
--- a/app/src/main/res/layout/item_divider_horizontal.xml
+++ b/app/src/main/res/layout/item_divider_horizontal.xml
@@ -1,21 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <View
     xmlns:android="http://schemas.android.com/apk/res/android"
     android:layout_width="match_parent"
diff --git a/app/src/main/res/layout/item_icon_title_subtitle.xml b/app/src/main/res/layout/item_icon_title_subtitle.xml
index 99106736c..e6bfa4c6d 100644
--- a/app/src/main/res/layout/item_icon_title_subtitle.xml
+++ b/app/src/main/res/layout/item_icon_title_subtitle.xml
@@ -1,21 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <androidx.cardview.widget.CardView xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:app="http://schemas.android.com/apk/res-auto"
     xmlns:tools="http://schemas.android.com/tools"
diff --git a/app/src/main/res/layout/item_logcat.xml b/app/src/main/res/layout/item_logcat.xml
index 4a0ff197d..313d2986f 100644
--- a/app/src/main/res/layout/item_logcat.xml
+++ b/app/src/main/res/layout/item_logcat.xml
@@ -1,4 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
+<!-- SPDX-License-Identifier: WTFPL AND GPL-3.0-or-later -->
 <androidx.appcompat.widget.LinearLayoutCompat xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:tools="http://schemas.android.com/tools"
     android:layout_width="match_parent"
diff --git a/app/src/main/res/layout/item_main.xml b/app/src/main/res/layout/item_main.xml
index 19058ae04..152ff16f6 100644
--- a/app/src/main/res/layout/item_main.xml
+++ b/app/src/main/res/layout/item_main.xml
@@ -1,21 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: Apache-2.0 AND GPL-3.0-or-later -->
 <androidx.appcompat.widget.LinearLayoutCompat
     xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:tools="http://schemas.android.com/tools"
diff --git a/app/src/main/res/layout/item_running_app.xml b/app/src/main/res/layout/item_running_app.xml
index e6b48089a..c6bc2be36 100644
--- a/app/src/main/res/layout/item_running_app.xml
+++ b/app/src/main/res/layout/item_running_app.xml
@@ -1,21 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <androidx.appcompat.widget.LinearLayoutCompat xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:app="http://schemas.android.com/apk/res-auto"
     xmlns:tools="http://schemas.android.com/tools"
diff --git a/app/src/main/res/layout/item_shared_pref.xml b/app/src/main/res/layout/item_shared_pref.xml
index b14a10c37..4056714e3 100644
--- a/app/src/main/res/layout/item_shared_pref.xml
+++ b/app/src/main/res/layout/item_shared_pref.xml
@@ -1,20 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:tools="http://schemas.android.com/tools"
     android:id="@+id/item_layout"
diff --git a/app/src/main/res/layout/item_sys_config.xml b/app/src/main/res/layout/item_sys_config.xml
index 090e9b6f6..1fa1161e6 100644
--- a/app/src/main/res/layout/item_sys_config.xml
+++ b/app/src/main/res/layout/item_sys_config.xml
@@ -1,21 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:tools="http://schemas.android.com/tools"
     android:layout_width="match_parent"
diff --git a/app/src/main/res/layout/item_text_view.xml b/app/src/main/res/layout/item_text_view.xml
index 28adfce15..a8bbc89d0 100644
--- a/app/src/main/res/layout/item_text_view.xml
+++ b/app/src/main/res/layout/item_text_view.xml
@@ -1,21 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <TextView xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:tools="http://schemas.android.com/tools"
     android:layout_width="match_parent"
diff --git a/app/src/main/res/layout/item_title_action.xml b/app/src/main/res/layout/item_title_action.xml
index 1b8e2493d..57a2c8e85 100644
--- a/app/src/main/res/layout/item_title_action.xml
+++ b/app/src/main/res/layout/item_title_action.xml
@@ -1,21 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <androidx.appcompat.widget.LinearLayoutCompat xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:tools="http://schemas.android.com/tools"
     xmlns:app="http://schemas.android.com/apk/res-auto"
diff --git a/app/src/main/res/layout/item_title_subtitle_inline.xml b/app/src/main/res/layout/item_title_subtitle_inline.xml
index 2393945ef..dd092d222 100644
--- a/app/src/main/res/layout/item_title_subtitle_inline.xml
+++ b/app/src/main/res/layout/item_title_subtitle_inline.xml
@@ -1,21 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
     android:layout_width="match_parent"
     android:layout_height="wrap_content"
diff --git a/app/src/main/res/layout/pager_app_details.xml b/app/src/main/res/layout/pager_app_details.xml
index dd047073f..84b0e98f1 100644
--- a/app/src/main/res/layout/pager_app_details.xml
+++ b/app/src/main/res/layout/pager_app_details.xml
@@ -1,21 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <androidx.swiperefreshlayout.widget.SwipeRefreshLayout
     xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:tools="http://schemas.android.com/tools"
diff --git a/app/src/main/res/layout/pager_app_info.xml b/app/src/main/res/layout/pager_app_info.xml
index 8dffd4be0..186c1a38e 100644
--- a/app/src/main/res/layout/pager_app_info.xml
+++ b/app/src/main/res/layout/pager_app_info.xml
@@ -1,21 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <androidx.swiperefreshlayout.widget.SwipeRefreshLayout
     xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:tools="http://schemas.android.com/tools"
diff --git a/app/src/main/res/layout/widget_recording.xml b/app/src/main/res/layout/widget_recording.xml
index 7e47d2b9c..5ac921a4d 100644
--- a/app/src/main/res/layout/widget_recording.xml
+++ b/app/src/main/res/layout/widget_recording.xml
@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-
+<!-- SPDX-License-Identifier: WTFPL -->
 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:app="http://schemas.android.com/apk/res-auto"
     xmlns:tools="http://schemas.android.com/tools"
diff --git a/app/src/main/res/menu/activity_activity_interceptor_actions.xml b/app/src/main/res/menu/activity_activity_interceptor_actions.xml
index 22d79d73f..6975a44b5 100644
--- a/app/src/main/res/menu/activity_activity_interceptor_actions.xml
+++ b/app/src/main/res/menu/activity_activity_interceptor_actions.xml
@@ -1,21 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: Apache-2.0 -->
 <menu xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:app="http://schemas.android.com/apk/res-auto">
 
diff --git a/app/src/main/res/menu/activity_any_viewer_actions.xml b/app/src/main/res/menu/activity_any_viewer_actions.xml
index 6c13b9a41..d7fefd6b7 100644
--- a/app/src/main/res/menu/activity_any_viewer_actions.xml
+++ b/app/src/main/res/menu/activity_any_viewer_actions.xml
@@ -1,21 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <menu xmlns:app="http://schemas.android.com/apk/res-auto"
     xmlns:android="http://schemas.android.com/apk/res/android">
 
diff --git a/app/src/main/res/menu/activity_app_usage_actions.xml b/app/src/main/res/menu/activity_app_usage_actions.xml
index d8b07dde4..8b5b4c842 100644
--- a/app/src/main/res/menu/activity_app_usage_actions.xml
+++ b/app/src/main/res/menu/activity_app_usage_actions.xml
@@ -1,21 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <menu xmlns:app="http://schemas.android.com/apk/res-auto"
     xmlns:android="http://schemas.android.com/apk/res/android">
 
diff --git a/app/src/main/res/menu/activity_class_listing_actions.xml b/app/src/main/res/menu/activity_class_listing_actions.xml
index ded1ef12e..543361614 100644
--- a/app/src/main/res/menu/activity_class_listing_actions.xml
+++ b/app/src/main/res/menu/activity_class_listing_actions.xml
@@ -1,20 +1,4 @@
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <menu xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:app="http://schemas.android.com/apk/res-auto"
     xmlns:tools="http://schemas.android.com/tools"
diff --git a/app/src/main/res/menu/activity_logcat_actions.xml b/app/src/main/res/menu/activity_logcat_actions.xml
index 5f8d7f027..284b89a45 100644
--- a/app/src/main/res/menu/activity_logcat_actions.xml
+++ b/app/src/main/res/menu/activity_logcat_actions.xml
@@ -1,20 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2021 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
+<!-- SPDX-License-Identifier: WTFPL AND GPL-3.0-or-later -->
 <menu xmlns:tools="http://schemas.android.com/tools"
     xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:app="http://schemas.android.com/apk/res-auto">
diff --git a/app/src/main/res/menu/activity_main_actions.xml b/app/src/main/res/menu/activity_main_actions.xml
index 23c56eeea..7f6476bb7 100644
--- a/app/src/main/res/menu/activity_main_actions.xml
+++ b/app/src/main/res/menu/activity_main_actions.xml
@@ -1,20 +1,5 @@
-<?xml version="1.0" encoding="utf-8"?><!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<?xml version="1.0" encoding="utf-8"?>
+<!-- SPDX-License-Identifier: Apache-2.0 AND GPL-3.0-or-later -->
 <menu xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:app="http://schemas.android.com/apk/res-auto">
     <item
diff --git a/app/src/main/res/menu/activity_main_selection_actions.xml b/app/src/main/res/menu/activity_main_selection_actions.xml
index edd361111..2ba09d1f5 100644
--- a/app/src/main/res/menu/activity_main_selection_actions.xml
+++ b/app/src/main/res/menu/activity_main_selection_actions.xml
@@ -1,21 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <menu xmlns:tools="http://schemas.android.com/tools"
     xmlns:app="http://schemas.android.com/apk/res-auto"
     xmlns:android="http://schemas.android.com/apk/res/android">
diff --git a/app/src/main/res/menu/activity_profile_navigation.xml b/app/src/main/res/menu/activity_profile_navigation.xml
index e333e78bd..695ed979f 100644
--- a/app/src/main/res/menu/activity_profile_navigation.xml
+++ b/app/src/main/res/menu/activity_profile_navigation.xml
@@ -1,21 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <menu xmlns:android="http://schemas.android.com/apk/res/android">
     <item
         android:id="@+id/action_apps"
diff --git a/app/src/main/res/menu/activity_profiles_actions.xml b/app/src/main/res/menu/activity_profiles_actions.xml
index 35364c52d..7a5c5679f 100644
--- a/app/src/main/res/menu/activity_profiles_actions.xml
+++ b/app/src/main/res/menu/activity_profiles_actions.xml
@@ -1,21 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <menu xmlns:app="http://schemas.android.com/apk/res-auto"
     xmlns:android="http://schemas.android.com/apk/res/android">
     <item
diff --git a/app/src/main/res/menu/activity_profiles_popup_actions.xml b/app/src/main/res/menu/activity_profiles_popup_actions.xml
index b7dc38248..2a3874de2 100644
--- a/app/src/main/res/menu/activity_profiles_popup_actions.xml
+++ b/app/src/main/res/menu/activity_profiles_popup_actions.xml
@@ -1,21 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <menu xmlns:android="http://schemas.android.com/apk/res/android">
 
     <item
diff --git a/app/src/main/res/menu/activity_running_apps_actions.xml b/app/src/main/res/menu/activity_running_apps_actions.xml
index e196d773f..d412104ef 100644
--- a/app/src/main/res/menu/activity_running_apps_actions.xml
+++ b/app/src/main/res/menu/activity_running_apps_actions.xml
@@ -1,21 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <menu xmlns:app="http://schemas.android.com/apk/res-auto"
     xmlns:android="http://schemas.android.com/apk/res/android">
 
diff --git a/app/src/main/res/menu/activity_running_apps_popup_actions.xml b/app/src/main/res/menu/activity_running_apps_popup_actions.xml
index 5e6a6f800..23aa00bfd 100644
--- a/app/src/main/res/menu/activity_running_apps_popup_actions.xml
+++ b/app/src/main/res/menu/activity_running_apps_popup_actions.xml
@@ -1,21 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <menu xmlns:android="http://schemas.android.com/apk/res/android">
 
     <item
diff --git a/app/src/main/res/menu/activity_running_apps_selection_actions.xml b/app/src/main/res/menu/activity_running_apps_selection_actions.xml
index 2491fb686..4f1551815 100644
--- a/app/src/main/res/menu/activity_running_apps_selection_actions.xml
+++ b/app/src/main/res/menu/activity_running_apps_selection_actions.xml
@@ -1,21 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <menu xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:app="http://schemas.android.com/apk/res-auto">
 
diff --git a/app/src/main/res/menu/activity_scanner.xml b/app/src/main/res/menu/activity_scanner.xml
index fbc34e1ac..d61513ec1 100644
--- a/app/src/main/res/menu/activity_scanner.xml
+++ b/app/src/main/res/menu/activity_scanner.xml
@@ -1,21 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <menu xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:app="http://schemas.android.com/apk/res-auto">
     <item
diff --git a/app/src/main/res/menu/activity_shared_prefs_actions.xml b/app/src/main/res/menu/activity_shared_prefs_actions.xml
index 48757739b..ee4d61fdb 100644
--- a/app/src/main/res/menu/activity_shared_prefs_actions.xml
+++ b/app/src/main/res/menu/activity_shared_prefs_actions.xml
@@ -1,20 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 
 <menu xmlns:android="http://schemas.android.com/apk/res/android">
 
diff --git a/app/src/main/res/menu/fragment_app_details_app_ops_actions.xml b/app/src/main/res/menu/fragment_app_details_app_ops_actions.xml
index 0e377c9cf..47f1e29df 100644
--- a/app/src/main/res/menu/fragment_app_details_app_ops_actions.xml
+++ b/app/src/main/res/menu/fragment_app_details_app_ops_actions.xml
@@ -1,21 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <menu xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:app="http://schemas.android.com/apk/res-auto">
 
diff --git a/app/src/main/res/menu/fragment_app_details_components_actions.xml b/app/src/main/res/menu/fragment_app_details_components_actions.xml
index 71ae50117..a72d5e51f 100644
--- a/app/src/main/res/menu/fragment_app_details_components_actions.xml
+++ b/app/src/main/res/menu/fragment_app_details_components_actions.xml
@@ -1,21 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <menu xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:app="http://schemas.android.com/apk/res-auto">
 
diff --git a/app/src/main/res/menu/fragment_app_details_permissions_actions.xml b/app/src/main/res/menu/fragment_app_details_permissions_actions.xml
index 19ca5daa7..c9d2e4371 100644
--- a/app/src/main/res/menu/fragment_app_details_permissions_actions.xml
+++ b/app/src/main/res/menu/fragment_app_details_permissions_actions.xml
@@ -1,21 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <menu xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:app="http://schemas.android.com/apk/res-auto">
 
diff --git a/app/src/main/res/menu/fragment_app_details_refresh_actions.xml b/app/src/main/res/menu/fragment_app_details_refresh_actions.xml
index 650f568df..7004e2f8c 100644
--- a/app/src/main/res/menu/fragment_app_details_refresh_actions.xml
+++ b/app/src/main/res/menu/fragment_app_details_refresh_actions.xml
@@ -1,21 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <menu xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:app="http://schemas.android.com/apk/res-auto">
 
diff --git a/app/src/main/res/menu/fragment_app_info_actions.xml b/app/src/main/res/menu/fragment_app_info_actions.xml
index ea7ad1f9f..bb9b15f20 100644
--- a/app/src/main/res/menu/fragment_app_info_actions.xml
+++ b/app/src/main/res/menu/fragment_app_info_actions.xml
@@ -1,21 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <menu xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:app="http://schemas.android.com/apk/res-auto">
 
diff --git a/app/src/main/res/menu/fragment_profile_apps_actions.xml b/app/src/main/res/menu/fragment_profile_apps_actions.xml
index 3e05ee8de..ba57e72e6 100644
--- a/app/src/main/res/menu/fragment_profile_apps_actions.xml
+++ b/app/src/main/res/menu/fragment_profile_apps_actions.xml
@@ -1,21 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <menu xmlns:app="http://schemas.android.com/apk/res-auto"
     xmlns:android="http://schemas.android.com/apk/res/android">
 
diff --git a/app/src/main/res/mipmap-anydpi-v26/ic_banner.xml b/app/src/main/res/mipmap-anydpi-v26/ic_banner.xml
index cf3108b36..db364cc20 100644
--- a/app/src/main/res/mipmap-anydpi-v26/ic_banner.xml
+++ b/app/src/main/res/mipmap-anydpi-v26/ic_banner.xml
@@ -1,4 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
+<!-- SPDX-License-Identifier: GPL-3.0-or-later OR CC-BY-SA-4.0 -->
 <adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
     <background android:drawable="@color/ic_banner_background"/>
     <foreground android:drawable="@mipmap/ic_banner_foreground"/>
diff --git a/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml b/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml
index 7353dbd1f..b23bdaf12 100644
--- a/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml
+++ b/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml
@@ -1,4 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
+<!-- SPDX-License-Identifier: GPL-3.0-or-later OR CC-BY-SA-4.0 -->
 <adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
     <background android:drawable="@color/ic_launcher_background"/>
     <foreground android:drawable="@drawable/ic_launcher_foreground"/>
diff --git a/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml b/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml
index 7353dbd1f..b23bdaf12 100644
--- a/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml
+++ b/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml
@@ -1,4 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
+<!-- SPDX-License-Identifier: GPL-3.0-or-later OR CC-BY-SA-4.0 -->
 <adaptive-icon xmlns:android="http://schemas.android.com/apk/res/android">
     <background android:drawable="@color/ic_launcher_background"/>
     <foreground android:drawable="@drawable/ic_launcher_foreground"/>
diff --git a/app/src/main/res/values-ar-rSA/disclaimer.xml b/app/src/main/res/values-ar-rSA/disclaimer.xml
index a7f141a6c..2e626a6fd 100644
--- a/app/src/main/res/values-ar-rSA/disclaimer.xml
+++ b/app/src/main/res/values-ar-rSA/disclaimer.xml
@@ -1,4 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <resources>
     <string name="disclaimer_header">إخلاء المسؤولية</string>
 </resources>
diff --git a/app/src/main/res/values-ar-rSA/strings.xml b/app/src/main/res/values-ar-rSA/strings.xml
index b55f2c3b5..be374a937 100644
--- a/app/src/main/res/values-ar-rSA/strings.xml
+++ b/app/src/main/res/values-ar-rSA/strings.xml
@@ -1,20 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  --><resources>
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
+<resources>
     <string name="uninstall">إلغاء التثبيت</string>
     <string name="permissions">إستخدام الأذونات</string>
     <string name="require_no_permission">لا توجد أذونات مطلوبة</string>
diff --git a/app/src/main/res/values-ar/disclaimer.xml b/app/src/main/res/values-ar/disclaimer.xml
index 98caa4c7e..bde1506cf 100644
--- a/app/src/main/res/values-ar/disclaimer.xml
+++ b/app/src/main/res/values-ar/disclaimer.xml
@@ -1,4 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <resources>
     <string name="disclaimer_header">إخلاء مسؤولية</string>
     <string name="disclaimer_footer">© 2020 منتصر الإسلام</string>
diff --git a/app/src/main/res/values-ar/strings.xml b/app/src/main/res/values-ar/strings.xml
index 96946c64c..f80d5bf84 100644
--- a/app/src/main/res/values-ar/strings.xml
+++ b/app/src/main/res/values-ar/strings.xml
@@ -1,4 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2" xmlns:tools="http://schemas.android.com/tools">
     <string name="_lang_tag" translatable="false">ar</string>
     <string name="app_signing_install_without_data_loss">إذا قمت بإيقاف تشغيل التحقق من التوقيع ، يمكنك استخدام خيار <b> تثبيت </b> فقط لتثبيت التطبيق دون فقدان البيانات.</string>
diff --git a/app/src/main/res/values-bn-rBD/disclaimer.xml b/app/src/main/res/values-bn-rBD/disclaimer.xml
index 6a3ffc6a6..89d20ef14 100644
--- a/app/src/main/res/values-bn-rBD/disclaimer.xml
+++ b/app/src/main/res/values-bn-rBD/disclaimer.xml
@@ -1,4 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <resources>
     <string name="disclaimer_header">অস্বীকৃতি</string>
     <string name="disclaimer_body">অ্যাপ ম্যানেজার যে রুট ফাংশন গুলো সরবাহ করে তা যদি সঠিকভাবে ব্যবহৃত না হয় তাহলে 
diff --git a/app/src/main/res/values-bn-rBD/strings.xml b/app/src/main/res/values-bn-rBD/strings.xml
index cb6d8d5db..66eb84864 100644
--- a/app/src/main/res/values-bn-rBD/strings.xml
+++ b/app/src/main/res/values-bn-rBD/strings.xml
@@ -1,20 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  --><resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
+<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="_lang_tag" translatable="false">bn-BD</string>
     <string name="uninstall">আনইনস্টল</string>
     <string name="require_no_permission">কোন অনুমতির প্রয়োজন নেই</string>
diff --git a/app/src/main/res/values-cs-rCZ/strings.xml b/app/src/main/res/values-cs-rCZ/strings.xml
index e5b8872ce..66aa96b71 100644
--- a/app/src/main/res/values-cs-rCZ/strings.xml
+++ b/app/src/main/res/values-cs-rCZ/strings.xml
@@ -1,20 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  --><resources>
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
+<resources>
     <string name="uninstall">Odinstalovat</string>
     <string name="require_no_permission">Nejsou vyžadována žádná oprávnění</string>
     <string name="activities">Aktivity</string>
diff --git a/app/src/main/res/values-cs/disclaimer.xml b/app/src/main/res/values-cs/disclaimer.xml
index 1d9a49848..7d905f0e4 100644
--- a/app/src/main/res/values-cs/disclaimer.xml
+++ b/app/src/main/res/values-cs/disclaimer.xml
@@ -1,4 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <resources>
     <string name="disclaimer_header">Zřeknutí se odpovědnosti</string>
 </resources>
\ No newline at end of file
diff --git a/app/src/main/res/values-de/disclaimer.xml b/app/src/main/res/values-de/disclaimer.xml
index 903dac114..c45cd7a9b 100644
--- a/app/src/main/res/values-de/disclaimer.xml
+++ b/app/src/main/res/values-de/disclaimer.xml
@@ -1,4 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <resources>
     <string name="disclaimer_header">HAFTUNGSAUSSCHLUSS</string>
     <string name="disclaimer_body">App Manager bietet Root-Funktionen, die Ihr Gerät unbrauchbar machen können, wenn sie falsch angewendet werden. App Manager ist nicht verantwortlich zu machen für jedwede Art von Schaden, der durch die Nutzung der Applikation entsteht. Wenn Sie sich nicht vollkommen klar darüber sind, wie Root-Funktionen verwendet werden, dann vermeiden Sie eine Anwendung bis Sie das Risiko einschätzen können.
diff --git a/app/src/main/res/values-de/strings.xml b/app/src/main/res/values-de/strings.xml
index da867a1d0..dc4e360a2 100644
--- a/app/src/main/res/values-de/strings.xml
+++ b/app/src/main/res/values-de/strings.xml
@@ -1,20 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  --><resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2" xmlns:tools="http://schemas.android.com/tools">
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
+<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2" xmlns:tools="http://schemas.android.com/tools">
     <string name="_lang_tag" translatable="false">de</string>
     <string name="uninstall">Deinstallieren</string>
     <string name="permissions">Verwendet Berechtigungen</string>
diff --git a/app/src/main/res/values-eo/disclaimer.xml b/app/src/main/res/values-eo/disclaimer.xml
index b9ff5f2a5..b70966dab 100644
--- a/app/src/main/res/values-eo/disclaimer.xml
+++ b/app/src/main/res/values-eo/disclaimer.xml
@@ -1,4 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <resources>
     <string name="disclaimer_body">App Manager ofertas funkciojn de ĉefuzanto, kiuj eble povus damaĝi vian aparaton se ili estas malĝuste uzataj. App Manager ne respondecas pri iuj ajn damaĝoj kaŭzitaj de la uzo de ĉi tiu aplikaĵo. Se vi ne plene konscias pri la funkcioj de ĉefuzanto, vi evitu uzi ĉefuzantajn opciojn ĝis vi plene konscias pri la riskoj.
 \n
diff --git a/app/src/main/res/values-eo/strings.xml b/app/src/main/res/values-eo/strings.xml
index f9014a884..c132b7c3b 100644
--- a/app/src/main/res/values-eo/strings.xml
+++ b/app/src/main/res/values-eo/strings.xml
@@ -1,4 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="paths_and_directories">Vojoj kaj Dosierujoj</string>
     <string name="user_app">Uzanta aplikaĵo</string>
diff --git a/app/src/main/res/values-es-rES/strings.xml b/app/src/main/res/values-es-rES/strings.xml
index e5f9c5b48..b4b9ddca7 100644
--- a/app/src/main/res/values-es-rES/strings.xml
+++ b/app/src/main/res/values-es-rES/strings.xml
@@ -1,20 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  --><resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2" xmlns:tools="http://schemas.android.com/tools">
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
+<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2" xmlns:tools="http://schemas.android.com/tools">
     <string name="_lang_tag" translatable="false">es-ES</string>
     <string name="uninstall">Desinstalar</string>
     <string name="permissions">Usos de los permisos</string>
diff --git a/app/src/main/res/values-es/disclaimer.xml b/app/src/main/res/values-es/disclaimer.xml
index 7098e3900..91ccd43bd 100644
--- a/app/src/main/res/values-es/disclaimer.xml
+++ b/app/src/main/res/values-es/disclaimer.xml
@@ -1,4 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <resources>
     <string name="disclaimer_header">Descargo de responsabilidad</string>
     <string name="disclaimer_exit">Salir</string>
diff --git a/app/src/main/res/values-fa/disclaimer.xml b/app/src/main/res/values-fa/disclaimer.xml
index 605cc3d47..ba207766d 100644
--- a/app/src/main/res/values-fa/disclaimer.xml
+++ b/app/src/main/res/values-fa/disclaimer.xml
@@ -1,4 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <resources>
     <string name="disclaimer_exit">خروج</string>
     <string name="disclaimer_agree">قبول می‌کنم</string>
diff --git a/app/src/main/res/values-fa/strings.xml b/app/src/main/res/values-fa/strings.xml
index d09dde664..8c7db872d 100644
--- a/app/src/main/res/values-fa/strings.xml
+++ b/app/src/main/res/values-fa/strings.xml
@@ -1,4 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="_lang_tag" translatable="false">fa</string>
     <string name="external_multiple_data_dir">دایرکتوری داده‌های خارجی <xliff:g id="dir_no" example="1">%1$d</xliff:g></string>
diff --git a/app/src/main/res/values-fr/disclaimer.xml b/app/src/main/res/values-fr/disclaimer.xml
index d8e54bb6a..d7447888e 100644
--- a/app/src/main/res/values-fr/disclaimer.xml
+++ b/app/src/main/res/values-fr/disclaimer.xml
@@ -1,4 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <resources>
     <string name="disclaimer_header">AVERTISSEMENT</string>
     <string name="disclaimer_exit">Quitter</string>
diff --git a/app/src/main/res/values-fr/strings.xml b/app/src/main/res/values-fr/strings.xml
index 151e2f68b..17dc03966 100644
--- a/app/src/main/res/values-fr/strings.xml
+++ b/app/src/main/res/values-fr/strings.xml
@@ -1,4 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="_lang_tag" translatable="false">fr</string>
     <string name="uninstall">Désinstaller</string>
diff --git a/app/src/main/res/values-hi/disclaimer.xml b/app/src/main/res/values-hi/disclaimer.xml
index 730678211..e32889670 100644
--- a/app/src/main/res/values-hi/disclaimer.xml
+++ b/app/src/main/res/values-hi/disclaimer.xml
@@ -1,4 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <resources>
     <string name="disclaimer_header">अस्वीकरण</string>
     <string name="disclaimer_exit">निकास</string>
diff --git a/app/src/main/res/values-hi/strings.xml b/app/src/main/res/values-hi/strings.xml
index 30f136d35..5e5c495eb 100644
--- a/app/src/main/res/values-hi/strings.xml
+++ b/app/src/main/res/values-hi/strings.xml
@@ -1,4 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="_lang_tag" translatable="false">hi</string>
     <string name="deny_app_ops_description">कांस्टेंट वैल्यू द्वारा पहचाने गए ऐप ऑपरेशंस को अस्वीकार करें, यानी 63 का मतलब है RUN_IN_BACKGROUND</string>
diff --git a/app/src/main/res/values-hu/disclaimer.xml b/app/src/main/res/values-hu/disclaimer.xml
index a6b3daec9..5ffb222f4 100644
--- a/app/src/main/res/values-hu/disclaimer.xml
+++ b/app/src/main/res/values-hu/disclaimer.xml
@@ -1,2 +1,3 @@
 <?xml version="1.0" encoding="utf-8"?>
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <resources></resources>
\ No newline at end of file
diff --git a/app/src/main/res/values-hu/strings.xml b/app/src/main/res/values-hu/strings.xml
index c27d31141..05460e86e 100644
--- a/app/src/main/res/values-hu/strings.xml
+++ b/app/src/main/res/values-hu/strings.xml
@@ -1,4 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <resources>
     <string name="error">Hiba</string>
     <string name="no_configurations">Nincsenek konfigurációk</string>
diff --git a/app/src/main/res/values-in-rID/disclaimer.xml b/app/src/main/res/values-in-rID/disclaimer.xml
index 62d3fe240..e86f042b1 100644
--- a/app/src/main/res/values-in-rID/disclaimer.xml
+++ b/app/src/main/res/values-in-rID/disclaimer.xml
@@ -1,4 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <resources>
     <string name="disclaimer_header">SYARAT PEMAKAIAN / DISCLAIMER</string>
     <string name="disclaimer_body">App Manajer menawarkan fungsi root yang mungkin dapat membahayakan perangkat Anda jika digunakan secara tidak benar. App Manajer tidak bertanggung jawab atas segala kerusakan yang dibuat oleh pengguna aplikasi ini. Jika Anda tidak sepenuhnya mengetahui cara kerja root maka Anda harus menghindarinya menggunakan opsi root hingga Anda sepenuhnya menyadari risikonya.
diff --git a/app/src/main/res/values-in-rID/strings.xml b/app/src/main/res/values-in-rID/strings.xml
index 3fd2439b5..484ed223a 100644
--- a/app/src/main/res/values-in-rID/strings.xml
+++ b/app/src/main/res/values-in-rID/strings.xml
@@ -1,20 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  --><resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2" xmlns:tools="http://schemas.android.com/tools">
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
+<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2" xmlns:tools="http://schemas.android.com/tools">
     <string name="uninstall">Hapus Pemasangan</string>
     <string name="permissions">Memerlukan Izin</string>
     <string name="require_no_permission">Tidak memerlukan izin</string>
diff --git a/app/src/main/res/values-it-rIT/disclaimer.xml b/app/src/main/res/values-it-rIT/disclaimer.xml
index 579ec5ea3..11260f202 100644
--- a/app/src/main/res/values-it-rIT/disclaimer.xml
+++ b/app/src/main/res/values-it-rIT/disclaimer.xml
@@ -1,4 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <resources>
     <string name="disclaimer_header">DICHIARAZIONE DI NON RESPONSABILITÀ</string>
     <string name="disclaimer_footer">© 2020 Muntashir Al-Islam</string>
diff --git a/app/src/main/res/values-it-rIT/strings.xml b/app/src/main/res/values-it-rIT/strings.xml
index 037a05172..516a2e07a 100644
--- a/app/src/main/res/values-it-rIT/strings.xml
+++ b/app/src/main/res/values-it-rIT/strings.xml
@@ -1,4 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <!--
   ~ Copyright (C) 2020 Muntashir Al-Islam
   ~
diff --git a/app/src/main/res/values-ja/disclaimer.xml b/app/src/main/res/values-ja/disclaimer.xml
index 0e9c8c862..8794f58db 100644
--- a/app/src/main/res/values-ja/disclaimer.xml
+++ b/app/src/main/res/values-ja/disclaimer.xml
@@ -1,20 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  --><resources>
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
+<resources>
     <string name="disclaimer_header">免責事項</string>
     <string name="disclaimer_body">App Managerは、誤って使用するとデバイスに害を及ぼす可能性のあるルート機能を提供します。
         App Managerは、このアプリケーションを使用して生じたいかなる損害についても責任を負いません。
diff --git a/app/src/main/res/values-ja/strings.xml b/app/src/main/res/values-ja/strings.xml
index f0f468bfb..4ccecdb50 100644
--- a/app/src/main/res/values-ja/strings.xml
+++ b/app/src/main/res/values-ja/strings.xml
@@ -1,20 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  --><resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2" xmlns:tools="http://schemas.android.com/tools">
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
+<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2" xmlns:tools="http://schemas.android.com/tools">
     <string name="_lang_tag" translatable="false">ja-JP</string>
     <string name="uninstall">アンインストール</string>
     <string name="permissions">アプリ権限</string>
diff --git a/app/src/main/res/values-ko/disclaimer.xml b/app/src/main/res/values-ko/disclaimer.xml
index a6b3daec9..5ffb222f4 100644
--- a/app/src/main/res/values-ko/disclaimer.xml
+++ b/app/src/main/res/values-ko/disclaimer.xml
@@ -1,2 +1,3 @@
 <?xml version="1.0" encoding="utf-8"?>
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <resources></resources>
\ No newline at end of file
diff --git a/app/src/main/res/values-ko/strings.xml b/app/src/main/res/values-ko/strings.xml
index 245079411..9c924a234 100644
--- a/app/src/main/res/values-ko/strings.xml
+++ b/app/src/main/res/values-ko/strings.xml
@@ -1,4 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <resources>
     <string name="uses_feature">사용한 기능</string>
     <string name="protection_level">보호 수준</string>
diff --git a/app/src/main/res/values-nb-rNO/disclaimer.xml b/app/src/main/res/values-nb-rNO/disclaimer.xml
index d7ccf3edc..c4c1a2980 100644
--- a/app/src/main/res/values-nb-rNO/disclaimer.xml
+++ b/app/src/main/res/values-nb-rNO/disclaimer.xml
@@ -1,4 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <resources>
     <string name="disclaimer_footer">© 2020–2021 Muntashir Al-Islam</string>
     <string name="disclaimer_header">ANSVARSFRASKRIVELSE</string>
diff --git a/app/src/main/res/values-nb-rNO/strings.xml b/app/src/main/res/values-nb-rNO/strings.xml
index 0432a6da6..968ae419d 100644
--- a/app/src/main/res/values-nb-rNO/strings.xml
+++ b/app/src/main/res/values-nb-rNO/strings.xml
@@ -1,4 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2" xmlns:tools="http://schemas.android.com/tools">
     <string name="_lang_tag" translatable="false">nb-NO</string>
     <string name="choose_language">Endre språk</string>
diff --git a/app/src/main/res/values-night/colors.xml b/app/src/main/res/values-night/colors.xml
index ae911a9e1..d8e6bcac4 100644
--- a/app/src/main/res/values-night/colors.xml
+++ b/app/src/main/res/values-night/colors.xml
@@ -1,21 +1,4 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <resources>
     <color name="colorPrimary">#FF121212</color>
     <color name="colorPrimaryDark">#FF121212</color>
diff --git a/app/src/main/res/values-night/styles.xml b/app/src/main/res/values-night/styles.xml
index d57f41b3f..cc6f72d1f 100644
--- a/app/src/main/res/values-night/styles.xml
+++ b/app/src/main/res/values-night/styles.xml
@@ -1,20 +1,4 @@
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <resources>
     <style name="Theme.MaterialComponents.DayNight.NoActionBar" parent="Theme.MaterialComponents.NoActionBar">
         <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
diff --git a/app/src/main/res/values-pl/disclaimer.xml b/app/src/main/res/values-pl/disclaimer.xml
index 16837e7f3..4b1547233 100644
--- a/app/src/main/res/values-pl/disclaimer.xml
+++ b/app/src/main/res/values-pl/disclaimer.xml
@@ -1,4 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <resources>
     <string name="disclaimer_exit">Wyjdź</string>
     <string name="disclaimer_agree">Zgadzam się</string>
diff --git a/app/src/main/res/values-pl/strings.xml b/app/src/main/res/values-pl/strings.xml
index f43352291..31b1804ea 100644
--- a/app/src/main/res/values-pl/strings.xml
+++ b/app/src/main/res/values-pl/strings.xml
@@ -1,4 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="_lang_tag" translatable="false">pl</string>
     <string name="user_id">ID użytkownika</string>
diff --git a/app/src/main/res/values-pt-rBR/disclaimer.xml b/app/src/main/res/values-pt-rBR/disclaimer.xml
index 1f090a795..8a95fd470 100644
--- a/app/src/main/res/values-pt-rBR/disclaimer.xml
+++ b/app/src/main/res/values-pt-rBR/disclaimer.xml
@@ -1,4 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <resources>
     <string name="disclaimer_header">AVISO</string>
     <string name="disclaimer_body">O App Manager oferece funções Root que podem eventualmente prejudicar
diff --git a/app/src/main/res/values-pt-rBR/strings.xml b/app/src/main/res/values-pt-rBR/strings.xml
index e5162b9be..56f54162e 100644
--- a/app/src/main/res/values-pt-rBR/strings.xml
+++ b/app/src/main/res/values-pt-rBR/strings.xml
@@ -1,20 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  --><resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2" xmlns:tools="http://schemas.android.com/tools">
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
+<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2" xmlns:tools="http://schemas.android.com/tools">
     <string name="_lang_tag" translatable="false">pt-BR</string>
     <string name="uninstall">Desinstalar</string>
     <string name="permissions">Permissões utilizadas</string>
diff --git a/app/src/main/res/values-pt/disclaimer.xml b/app/src/main/res/values-pt/disclaimer.xml
index 74819167a..b37847569 100644
--- a/app/src/main/res/values-pt/disclaimer.xml
+++ b/app/src/main/res/values-pt/disclaimer.xml
@@ -1,4 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <resources>
     <string name="disclaimer_exit">Sair</string>
     <string name="disclaimer_agree">Eu Concordo</string>
diff --git a/app/src/main/res/values-pt/strings.xml b/app/src/main/res/values-pt/strings.xml
index 4fc0e1514..f0ac990f1 100644
--- a/app/src/main/res/values-pt/strings.xml
+++ b/app/src/main/res/values-pt/strings.xml
@@ -1,4 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2" xmlns:tools="http://schemas.android.com/tools">
     <string name="_lang_tag" translatable="false">pt</string>
     <string name="choose_language">Mudar idioma</string>
diff --git a/app/src/main/res/values-ru-rRU/disclaimer.xml b/app/src/main/res/values-ru-rRU/disclaimer.xml
index d1a09f921..e6fb6526a 100644
--- a/app/src/main/res/values-ru-rRU/disclaimer.xml
+++ b/app/src/main/res/values-ru-rRU/disclaimer.xml
@@ -1,4 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <resources>
     <string name="disclaimer_header">ПРЕДУПРЕЖДЕНИЕ</string>
     <string name="disclaimer_body">App Manager предлагает функции, которых могут выполняться с помощью root-прав, которые могут нанести вред
diff --git a/app/src/main/res/values-ru-rRU/strings.xml b/app/src/main/res/values-ru-rRU/strings.xml
index 49239eeb2..0c295ccbd 100644
--- a/app/src/main/res/values-ru-rRU/strings.xml
+++ b/app/src/main/res/values-ru-rRU/strings.xml
@@ -1,20 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  --><resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2" xmlns:tools="http://schemas.android.com/tools">
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
+<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2" xmlns:tools="http://schemas.android.com/tools">
     <string name="_lang_tag" translatable="false">ru-RU</string>
     <string name="uninstall">Удалить</string>
     <string name="permissions">Используемые разрешения</string>
diff --git a/app/src/main/res/values-si/disclaimer.xml b/app/src/main/res/values-si/disclaimer.xml
index a6b3daec9..5ffb222f4 100644
--- a/app/src/main/res/values-si/disclaimer.xml
+++ b/app/src/main/res/values-si/disclaimer.xml
@@ -1,2 +1,3 @@
 <?xml version="1.0" encoding="utf-8"?>
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <resources></resources>
\ No newline at end of file
diff --git a/app/src/main/res/values-si/strings.xml b/app/src/main/res/values-si/strings.xml
index 4f60ca3e8..e291ceef1 100644
--- a/app/src/main/res/values-si/strings.xml
+++ b/app/src/main/res/values-si/strings.xml
@@ -1,4 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <resources>
     <string name="service">සේවාවන්</string>
 </resources>
\ No newline at end of file
diff --git a/app/src/main/res/values-tr-rTR/disclaimer.xml b/app/src/main/res/values-tr-rTR/disclaimer.xml
index 7c1a1057c..119c3cd17 100644
--- a/app/src/main/res/values-tr-rTR/disclaimer.xml
+++ b/app/src/main/res/values-tr-rTR/disclaimer.xml
@@ -1,4 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <resources>
     <string name="disclaimer_agree">Kabul Ediyorum</string>
     <string name="disclaimer_exit">Çıkış</string>
diff --git a/app/src/main/res/values-tr-rTR/strings.xml b/app/src/main/res/values-tr-rTR/strings.xml
index 95d379880..09824726c 100644
--- a/app/src/main/res/values-tr-rTR/strings.xml
+++ b/app/src/main/res/values-tr-rTR/strings.xml
@@ -1,20 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  --><resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2" xmlns:tools="http://schemas.android.com/tools">
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
+<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2" xmlns:tools="http://schemas.android.com/tools">
     <string name="_lang_tag" translatable="false">tr-TR</string>
     <string name="uninstall">Uygulamayı Kaldır</string>
     <string name="permissions">Kullanılan izinler</string>
diff --git a/app/src/main/res/values-uk-rUA/strings.xml b/app/src/main/res/values-uk-rUA/strings.xml
index 77b533b08..2be61493c 100644
--- a/app/src/main/res/values-uk-rUA/strings.xml
+++ b/app/src/main/res/values-uk-rUA/strings.xml
@@ -1,20 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  --><resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2" xmlns:tools="http://schemas.android.com/tools">
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
+<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2" xmlns:tools="http://schemas.android.com/tools">
     <string name="_lang_tag" translatable="false">uk-UA</string>
     <string name="uninstall">Видалити</string>
     <string name="activities">Activities</string>
diff --git a/app/src/main/res/values-uk/disclaimer.xml b/app/src/main/res/values-uk/disclaimer.xml
index af5890e65..486579baf 100644
--- a/app/src/main/res/values-uk/disclaimer.xml
+++ b/app/src/main/res/values-uk/disclaimer.xml
@@ -1,4 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <resources>
     <string name="disclaimer_exit">Вийти</string>
     <string name="disclaimer_agree">Погоджуюся</string>
diff --git a/app/src/main/res/values-vi/disclaimer.xml b/app/src/main/res/values-vi/disclaimer.xml
index 1e5fb5320..e6e545ab8 100644
--- a/app/src/main/res/values-vi/disclaimer.xml
+++ b/app/src/main/res/values-vi/disclaimer.xml
@@ -1,4 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <resources>
     <string name="disclaimer_footer">© 2020–2021 Muntashir Al-Islam</string>
     <string name="disclaimer_body">Trình quản lý ứng dụng cung cấp các chức năng root có thể gây hại cho thiết bị của bạn nếu sử dụng không đúng cách. Trình quản lý ứng dụng không chịu trách nhiệm về bất kỳ thiệt hại nào do sử dụng ứng dụng này. Nếu bạn không nhận thức đầy đủ về cách thức hoạt động của root thì bạn nên tránh sử dụng các tùy chọn root cho đến khi bạn nhận thức đầy đủ về các rủi ro.
diff --git a/app/src/main/res/values-vi/strings.xml b/app/src/main/res/values-vi/strings.xml
index c155eb0bb..bbe1893a1 100644
--- a/app/src/main/res/values-vi/strings.xml
+++ b/app/src/main/res/values-vi/strings.xml
@@ -1,4 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="_lang_tag" translatable="false">vi</string>
     <string name="path_permissions">Quyền đường dẫn</string>
diff --git a/app/src/main/res/values-zh-rCN/disclaimer.xml b/app/src/main/res/values-zh-rCN/disclaimer.xml
index cd7e6e486..c9721e24f 100644
--- a/app/src/main/res/values-zh-rCN/disclaimer.xml
+++ b/app/src/main/res/values-zh-rCN/disclaimer.xml
@@ -1,4 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <resources>
     <string name="disclaimer_header">免责声明</string>
     <string name="disclaimer_body">App Manager 提供的与 root 权限相关的操作可能会对设备造成损害,App Manager 不对任何因使用不当而造成的损害负责。 
diff --git a/app/src/main/res/values-zh-rCN/strings.xml b/app/src/main/res/values-zh-rCN/strings.xml
index 0ded7b7ea..32aecf1b9 100644
--- a/app/src/main/res/values-zh-rCN/strings.xml
+++ b/app/src/main/res/values-zh-rCN/strings.xml
@@ -1,20 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  --><resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2" xmlns:tools="http://schemas.android.com/tools">
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
+<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2" xmlns:tools="http://schemas.android.com/tools">
     <string name="_lang_tag" translatable="false">zh-CN</string>
     <string name="uninstall">卸载</string>
     <string name="permissions">系统预定义权限</string>
diff --git a/app/src/main/res/values-zh-rTW/disclaimer.xml b/app/src/main/res/values-zh-rTW/disclaimer.xml
index 16674e261..349e6d644 100644
--- a/app/src/main/res/values-zh-rTW/disclaimer.xml
+++ b/app/src/main/res/values-zh-rTW/disclaimer.xml
@@ -1,4 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <resources>
     <string name="disclaimer_header">免責聲明</string>
     <string name="disclaimer_footer">© 2020–2021 Muntashir Al-Islam</string>
diff --git a/app/src/main/res/values-zh-rTW/strings.xml b/app/src/main/res/values-zh-rTW/strings.xml
index f68758a0c..0b7750f97 100644
--- a/app/src/main/res/values-zh-rTW/strings.xml
+++ b/app/src/main/res/values-zh-rTW/strings.xml
@@ -1,20 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  --><resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2" xmlns:tools="http://schemas.android.com/tools">
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
+<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2" xmlns:tools="http://schemas.android.com/tools">
     <string name="_lang_tag" translatable="false">zh-TW</string>
     <string name="uninstall">解除安裝</string>
     <string name="permissions">使用權限</string>
diff --git a/app/src/main/res/values/arrays.xml b/app/src/main/res/values/arrays.xml
index 45e0c0d71..798931873 100644
--- a/app/src/main/res/values/arrays.xml
+++ b/app/src/main/res/values/arrays.xml
@@ -1,21 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <resources>
     <array name="TAB_TITLES">
         <item>@string/app_info</item>
diff --git a/app/src/main/res/values/colors.xml b/app/src/main/res/values/colors.xml
index e89d85673..bacb3b0d0 100644
--- a/app/src/main/res/values/colors.xml
+++ b/app/src/main/res/values/colors.xml
@@ -1,21 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <resources>
     <color name="colorPrimary">@android:color/white</color>
     <color name="colorPrimaryDark">@android:color/white</color>
diff --git a/app/src/main/res/values/dimens.xml b/app/src/main/res/values/dimens.xml
index 5f7f9931c..62eb77691 100644
--- a/app/src/main/res/values/dimens.xml
+++ b/app/src/main/res/values/dimens.xml
@@ -1,21 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <resources>
     <dimen name="padding_very_large">32dp</dimen>
     <dimen name="padding_large">24dp</dimen>
diff --git a/app/src/main/res/values/disclaimer.xml b/app/src/main/res/values/disclaimer.xml
index 0b58c37f9..57980cf04 100644
--- a/app/src/main/res/values/disclaimer.xml
+++ b/app/src/main/res/values/disclaimer.xml
@@ -1,21 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <resources>
     <string name="disclaimer_header">DISCLAIMER</string>
     <string name="disclaimer_body">App Manager offers root functions that could possibly harm
diff --git a/app/src/main/res/values/ic_banner_background.xml b/app/src/main/res/values/ic_banner_background.xml
index 414e95a24..48184e37f 100644
--- a/app/src/main/res/values/ic_banner_background.xml
+++ b/app/src/main/res/values/ic_banner_background.xml
@@ -1,4 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
+<!-- SPDX-License-Identifier: GPL-3.0-or-later OR CC-BY-SA-4.0 -->
 <resources>
     <color name="ic_banner_background">#DCAF74</color>
 </resources>
\ No newline at end of file
diff --git a/app/src/main/res/values/ic_launcher_background.xml b/app/src/main/res/values/ic_launcher_background.xml
index 58043be50..a594af838 100644
--- a/app/src/main/res/values/ic_launcher_background.xml
+++ b/app/src/main/res/values/ic_launcher_background.xml
@@ -1,4 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
+<!-- SPDX-License-Identifier: GPL-3.0-or-later OR CC-BY-SA-4.0 -->
 <resources>
     <color name="ic_launcher_background">#212121</color>
 </resources>
\ No newline at end of file
diff --git a/app/src/main/res/values/languages.xml b/app/src/main/res/values/languages.xml
index 304c350b8..5e48c3eb0 100644
--- a/app/src/main/res/values/languages.xml
+++ b/app/src/main/res/values/languages.xml
@@ -1,21 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <resources>
     <string-array name="languages_key">
         <item>ar</item>
diff --git a/app/src/main/res/values/libs.xml b/app/src/main/res/values/libs.xml
index 201ca3f8d..8ee98cccf 100644
--- a/app/src/main/res/values/libs.xml
+++ b/app/src/main/res/values/libs.xml
@@ -1,21 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <resources>
     <array name="lib_signatures">
         <item>com.getjar.sdk.vending.billing.</item>
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index 8483cb14a..34ccf4c6e 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -1,20 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  --><resources xmlns:tools="http://schemas.android.com/tools" xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
+<resources xmlns:tools="http://schemas.android.com/tools" xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="_lang_tag" translatable="false">en</string>
     <string name="uninstall">Uninstall</string>
     <string name="permissions">Uses permissions</string>
diff --git a/app/src/main/res/values/styles.xml b/app/src/main/res/values/styles.xml
index e95358bae..598da0d84 100644
--- a/app/src/main/res/values/styles.xml
+++ b/app/src/main/res/values/styles.xml
@@ -1,20 +1,4 @@
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <resources xmlns:tools="http://schemas.android.com/tools">
     <style name="AppTheme" parent="Theme.MaterialComponents.DayNight.NoActionBar">
         <item name="colorPrimary">@color/colorPrimary</item>
diff --git a/app/src/main/res/values/trackers.xml b/app/src/main/res/values/trackers.xml
index 15e399b33..37724cd96 100644
--- a/app/src/main/res/values/trackers.xml
+++ b/app/src/main/res/values/trackers.xml
@@ -1,21 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <resources>
     <string-array name="tracker_signatures">
         <item>com.databerries.</item>
diff --git a/app/src/main/res/xml/preferences_backup_restore.xml b/app/src/main/res/xml/preferences_backup_restore.xml
index a7d213ac3..26b895d03 100644
--- a/app/src/main/res/xml/preferences_backup_restore.xml
+++ b/app/src/main/res/xml/preferences_backup_restore.xml
@@ -1,21 +1,4 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <PreferenceScreen xmlns:app="http://schemas.android.com/apk/res-auto"
     xmlns:tools="http://schemas.android.com/tools"
     app:title="@string/backup_restore">
diff --git a/app/src/main/res/xml/preferences_installer.xml b/app/src/main/res/xml/preferences_installer.xml
index ec76be353..a3308ae38 100644
--- a/app/src/main/res/xml/preferences_installer.xml
+++ b/app/src/main/res/xml/preferences_installer.xml
@@ -1,4 +1,4 @@
-<?xml version="1.0" encoding="utf-8"?>
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <PreferenceScreen xmlns:app="http://schemas.android.com/apk/res-auto"
     xmlns:tools="http://schemas.android.com/tools">
 
diff --git a/app/src/main/res/xml/preferences_log_viewer.xml b/app/src/main/res/xml/preferences_log_viewer.xml
index 2b64ebfea..04383fa95 100644
--- a/app/src/main/res/xml/preferences_log_viewer.xml
+++ b/app/src/main/res/xml/preferences_log_viewer.xml
@@ -1,4 +1,4 @@
-<?xml version="1.0" encoding="utf-8"?>
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <PreferenceScreen xmlns:app="http://schemas.android.com/apk/res-auto"
     xmlns:tools="http://schemas.android.com/tools">
 
diff --git a/app/src/main/res/xml/preferences_main.xml b/app/src/main/res/xml/preferences_main.xml
index c57bbc2c7..bc4c5e151 100644
--- a/app/src/main/res/xml/preferences_main.xml
+++ b/app/src/main/res/xml/preferences_main.xml
@@ -1,20 +1,4 @@
-<?xml version="1.0" encoding="utf-8"?><!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <PreferenceScreen xmlns:app="http://schemas.android.com/apk/res-auto"
     xmlns:tools="http://schemas.android.com/tools"
     xmlns:android="http://schemas.android.com/apk/res/android">
diff --git a/app/src/main/res/xml/preferences_profile_config.xml b/app/src/main/res/xml/preferences_profile_config.xml
index 1b6800a0b..20d7761bf 100644
--- a/app/src/main/res/xml/preferences_profile_config.xml
+++ b/app/src/main/res/xml/preferences_profile_config.xml
@@ -1,21 +1,4 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <PreferenceScreen xmlns:app="http://schemas.android.com/apk/res-auto"
     xmlns:tools="http://schemas.android.com/tools">
 
diff --git a/app/src/main/res/xml/preferences_rules.xml b/app/src/main/res/xml/preferences_rules.xml
index 7aeb0d0d9..469903854 100644
--- a/app/src/main/res/xml/preferences_rules.xml
+++ b/app/src/main/res/xml/preferences_rules.xml
@@ -1,4 +1,4 @@
-<?xml version="1.0" encoding="utf-8"?>
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <PreferenceScreen xmlns:app="http://schemas.android.com/apk/res-auto">
 
     <SwitchPreferenceCompat
diff --git a/app/src/main/res/xml/preferences_signature.xml b/app/src/main/res/xml/preferences_signature.xml
index d64d075b2..1bd9b47d7 100644
--- a/app/src/main/res/xml/preferences_signature.xml
+++ b/app/src/main/res/xml/preferences_signature.xml
@@ -1,21 +1,4 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <PreferenceScreen xmlns:app="http://schemas.android.com/apk/res-auto"
     xmlns:tools="http://schemas.android.com/tools"
     app:title="@string/apk_signing">
diff --git a/app/src/main/res/xml/provider_paths.xml b/app/src/main/res/xml/provider_paths.xml
index 1bc05a852..3fcd96be1 100644
--- a/app/src/main/res/xml/provider_paths.xml
+++ b/app/src/main/res/xml/provider_paths.xml
@@ -1,21 +1,4 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <paths>
     <external-path name="external_files" path="." />
 </paths>
\ No newline at end of file
diff --git a/app/src/main/res/xml/recording_widget_info.xml b/app/src/main/res/xml/recording_widget_info.xml
index bc88eec70..ec55abc16 100644
--- a/app/src/main/res/xml/recording_widget_info.xml
+++ b/app/src/main/res/xml/recording_widget_info.xml
@@ -1,3 +1,5 @@
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
+<!-- Copyright 2012 Nolan Lawson -->
 <!-- 21600000 = 6 hours in milliseconds -->
 <appwidget-provider xmlns:android="http://schemas.android.com/apk/res/android"
     android:initialLayout="@layout/widget_recording"
diff --git a/app/src/main/res/xml/shortcuts.xml b/app/src/main/res/xml/shortcuts.xml
index 9003d8c3f..724a661e0 100644
--- a/app/src/main/res/xml/shortcuts.xml
+++ b/app/src/main/res/xml/shortcuts.xml
@@ -1,4 +1,5 @@
-<?xml version="1.0" encoding="utf-8"?>
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
+<!-- Copyright 2012 Nolan Lawson -->
 <shortcuts xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:tools="http://schemas.android.com/tools"
     tools:targetApi="n_mr1">
diff --git a/app/src/test/java/io/github/muntashirakon/AppManager/runningapps/ProcessParserTest.java b/app/src/test/java/io/github/muntashirakon/AppManager/runningapps/ProcessParserTest.java
index 978813651..dbf8a5255 100644
--- a/app/src/test/java/io/github/muntashirakon/AppManager/runningapps/ProcessParserTest.java
+++ b/app/src/test/java/io/github/muntashirakon/AppManager/runningapps/ProcessParserTest.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (c) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.runningapps;
 
diff --git a/app/src/test/java/io/github/muntashirakon/AppManager/utils/IOUtilsTest.java b/app/src/test/java/io/github/muntashirakon/AppManager/utils/IOUtilsTest.java
index ae2d05c17..3211bed81 100644
--- a/app/src/test/java/io/github/muntashirakon/AppManager/utils/IOUtilsTest.java
+++ b/app/src/test/java/io/github/muntashirakon/AppManager/utils/IOUtilsTest.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (c) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.utils;
 
diff --git a/app/src/test/java/io/github/muntashirakon/AppManager/utils/TarUtilsTest.java b/app/src/test/java/io/github/muntashirakon/AppManager/utils/TarUtilsTest.java
index 01b7cf383..56392a9fe 100644
--- a/app/src/test/java/io/github/muntashirakon/AppManager/utils/TarUtilsTest.java
+++ b/app/src/test/java/io/github/muntashirakon/AppManager/utils/TarUtilsTest.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (c) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.utils;
 
diff --git a/app/src/test/java/io/github/muntashirakon/io/SplitInputStreamTest.java b/app/src/test/java/io/github/muntashirakon/io/SplitInputStreamTest.java
index 1f755e716..1551bbabe 100644
--- a/app/src/test/java/io/github/muntashirakon/io/SplitInputStreamTest.java
+++ b/app/src/test/java/io/github/muntashirakon/io/SplitInputStreamTest.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (c) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.io;
 
diff --git a/app/src/test/java/io/github/muntashirakon/io/SplitOutputStreamTest.java b/app/src/test/java/io/github/muntashirakon/io/SplitOutputStreamTest.java
index 9c20a5288..9c8ab2bff 100644
--- a/app/src/test/java/io/github/muntashirakon/io/SplitOutputStreamTest.java
+++ b/app/src/test/java/io/github/muntashirakon/io/SplitOutputStreamTest.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (c) 2021 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.io;
 
diff --git a/app/src/test/java/org/apache/commons/compress/archivers/tar/TarArchiveInputStreamTest.java b/app/src/test/java/org/apache/commons/compress/archivers/tar/TarArchiveInputStreamTest.java
index c063e8aed..d3936afdd 100644
--- a/app/src/test/java/org/apache/commons/compress/archivers/tar/TarArchiveInputStreamTest.java
+++ b/app/src/test/java/org/apache/commons/compress/archivers/tar/TarArchiveInputStreamTest.java
@@ -1,3 +1,5 @@
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 package org.apache.commons.compress.archivers.tar;
 
 import android.os.RemoteException;
diff --git a/app/src/test/java/org/apache/commons/compress/archivers/tar/TarArchiveOutputStreamTest.java b/app/src/test/java/org/apache/commons/compress/archivers/tar/TarArchiveOutputStreamTest.java
index e6f73e62a..dc2e58567 100644
--- a/app/src/test/java/org/apache/commons/compress/archivers/tar/TarArchiveOutputStreamTest.java
+++ b/app/src/test/java/org/apache/commons/compress/archivers/tar/TarArchiveOutputStreamTest.java
@@ -1,3 +1,5 @@
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 package org.apache.commons.compress.archivers.tar;
 
 import android.os.RemoteException;
diff --git a/app/src/test/java/org/apache/commons/compress/compressors/bzip2/BZip2CompressorInputStreamTest.java b/app/src/test/java/org/apache/commons/compress/compressors/bzip2/BZip2CompressorInputStreamTest.java
index ff7b744c7..25971c484 100644
--- a/app/src/test/java/org/apache/commons/compress/compressors/bzip2/BZip2CompressorInputStreamTest.java
+++ b/app/src/test/java/org/apache/commons/compress/compressors/bzip2/BZip2CompressorInputStreamTest.java
@@ -1,3 +1,5 @@
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 package org.apache.commons.compress.compressors.bzip2;
 
 import android.os.RemoteException;
diff --git a/app/src/test/java/org/apache/commons/compress/compressors/bzip2/BZip2CompressorOutputStreamTest.java b/app/src/test/java/org/apache/commons/compress/compressors/bzip2/BZip2CompressorOutputStreamTest.java
index 524b0e2ee..580c5ca94 100644
--- a/app/src/test/java/org/apache/commons/compress/compressors/bzip2/BZip2CompressorOutputStreamTest.java
+++ b/app/src/test/java/org/apache/commons/compress/compressors/bzip2/BZip2CompressorOutputStreamTest.java
@@ -1,3 +1,5 @@
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 package org.apache.commons.compress.compressors.bzip2;
 
 import android.os.RemoteException;
diff --git a/app/src/test/java/org/apache/commons/compress/compressors/gzip/GzipCompressorInputStreamTest.java b/app/src/test/java/org/apache/commons/compress/compressors/gzip/GzipCompressorInputStreamTest.java
index 49a13916e..72e0d9fc9 100644
--- a/app/src/test/java/org/apache/commons/compress/compressors/gzip/GzipCompressorInputStreamTest.java
+++ b/app/src/test/java/org/apache/commons/compress/compressors/gzip/GzipCompressorInputStreamTest.java
@@ -1,3 +1,5 @@
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 package org.apache.commons.compress.compressors.gzip;
 
 import android.os.RemoteException;
diff --git a/app/src/test/java/org/apache/commons/compress/compressors/gzip/GzipCompressorOutputStreamTest.java b/app/src/test/java/org/apache/commons/compress/compressors/gzip/GzipCompressorOutputStreamTest.java
index aebf83421..039d6b0e6 100644
--- a/app/src/test/java/org/apache/commons/compress/compressors/gzip/GzipCompressorOutputStreamTest.java
+++ b/app/src/test/java/org/apache/commons/compress/compressors/gzip/GzipCompressorOutputStreamTest.java
@@ -1,3 +1,5 @@
+// SPDX-License-Identifier: GPL-3.0-or-later
+
 package org.apache.commons.compress.compressors.gzip;
 
 import android.os.RemoteException;
diff --git a/arts/banner-raw-no-text.svg b/arts/banner-raw-no-text.svg
index f4af3291b..0ea6f5f7c 100644
--- a/arts/banner-raw-no-text.svg
+++ b/arts/banner-raw-no-text.svg
@@ -1,4 +1,5 @@
 <?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- SPDX-License-Identifier: CC-BY-SA-4.0 OR GPL-3.0-or-later -->
 <svg
    xmlns:dc="http://purl.org/dc/elements/1.1/"
    xmlns:cc="http://creativecommons.org/ns#"
diff --git a/arts/banner-raw-text.svg b/arts/banner-raw-text.svg
index 791a77344..46f6f8d87 100644
--- a/arts/banner-raw-text.svg
+++ b/arts/banner-raw-text.svg
@@ -1,4 +1,5 @@
 <?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- SPDX-License-Identifier: CC-BY-SA-4.0 OR GPL-3.0-or-later -->
 <svg
    xmlns:dc="http://purl.org/dc/elements/1.1/"
    xmlns:cc="http://creativecommons.org/ns#"
diff --git a/arts/ic_launcher.svg b/arts/ic_launcher.svg
index 69182f11a..2ed6eab19 100644
--- a/arts/ic_launcher.svg
+++ b/arts/ic_launcher.svg
@@ -1,4 +1,5 @@
 <?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- SPDX-License-Identifier: CC-BY-SA-4.0 OR GPL-3.0-or-later -->
 <svg
    xmlns:dc="http://purl.org/dc/elements/1.1/"
    xmlns:cc="http://creativecommons.org/ns#"
diff --git a/arts/ic_launcher_foreground.svg b/arts/ic_launcher_foreground.svg
index bd6f92c87..fedcc5207 100644
--- a/arts/ic_launcher_foreground.svg
+++ b/arts/ic_launcher_foreground.svg
@@ -1,4 +1,5 @@
 <?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- SPDX-License-Identifier: CC-BY-SA-4.0 OR GPL-3.0-or-later -->
 <svg
    xmlns:dc="http://purl.org/dc/elements/1.1/"
    xmlns:cc="http://creativecommons.org/ns#"
diff --git a/arts/ic_launcher_round.svg b/arts/ic_launcher_round.svg
index b7f175d63..d096c5a38 100644
--- a/arts/ic_launcher_round.svg
+++ b/arts/ic_launcher_round.svg
@@ -1,4 +1,5 @@
 <?xml version="1.0" encoding="UTF-8" standalone="no"?>
+<!-- SPDX-License-Identifier: CC-BY-SA-4.0 OR GPL-3.0-or-later -->
 <svg
    xmlns:dc="http://purl.org/dc/elements/1.1/"
    xmlns:cc="http://creativecommons.org/ns#"
diff --git a/build.gradle b/build.gradle
index 68186dfa2..445503ee8 100644
--- a/build.gradle
+++ b/build.gradle
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: Apache-2.0 AND GPL-3.0-or-later
 
 buildscript {
     repositories {
diff --git a/common.gradle b/common.gradle
index a0240d195..6fc448720 100644
--- a/common.gradle
+++ b/common.gradle
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 apply plugin: 'com.android.library'
 
diff --git a/docs/build.gradle b/docs/build.gradle
index 66e2c2281..2f33b9a8e 100644
--- a/docs/build.gradle
+++ b/docs/build.gradle
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 apply plugin: 'com.android.library'
 
diff --git a/docs/src/main/AndroidManifest.xml b/docs/src/main/AndroidManifest.xml
index 53f3493ec..af5d5d874 100644
--- a/docs/src/main/AndroidManifest.xml
+++ b/docs/src/main/AndroidManifest.xml
@@ -1,4 +1,4 @@
-<?xml version="1.0" encoding="utf-8"?>
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <manifest xmlns:dist="http://schemas.android.com/apk/distribution"
     package="io.github.muntashirakon.AppManager.docs">
 
diff --git a/hiddenapi/build.gradle b/hiddenapi/build.gradle
index 3a0a328be..c13b7ac86 100644
--- a/hiddenapi/build.gradle
+++ b/hiddenapi/build.gradle
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 apply plugin: 'java-library'
 
diff --git a/hiddenapi/src/main/AndroidManifest.xml b/hiddenapi/src/main/AndroidManifest.xml
index c983b9620..f3e944de6 100644
--- a/hiddenapi/src/main/AndroidManifest.xml
+++ b/hiddenapi/src/main/AndroidManifest.xml
@@ -1,18 +1,3 @@
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 
 <manifest package="io.github.muntashirakon.AppManager.hiddenapi" />
\ No newline at end of file
diff --git a/libapkparser/build.gradle b/libapkparser/build.gradle
index 54a539b18..de94dc822 100644
--- a/libapkparser/build.gradle
+++ b/libapkparser/build.gradle
@@ -1,18 +1,3 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 apply from: "$gradle.ext.appManagerRoot/common.gradle"
diff --git a/libapkparser/src/main/AndroidManifest.xml b/libapkparser/src/main/AndroidManifest.xml
index 921dc9324..6d93fbd15 100644
--- a/libapkparser/src/main/AndroidManifest.xml
+++ b/libapkparser/src/main/AndroidManifest.xml
@@ -1,18 +1,2 @@
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: BSD-2-Clause -->
 <manifest package="net.dongliu.apk.parser" />
\ No newline at end of file
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/AbstractApkFile.java b/libapkparser/src/main/java/net/dongliu/apk/parser/AbstractApkFile.java
index 9183a273f..2601a7a8c 100644
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/AbstractApkFile.java
+++ b/libapkparser/src/main/java/net/dongliu/apk/parser/AbstractApkFile.java
@@ -1,3 +1,5 @@
+// SPDX-License-Identifier: BSD-2-Clause
+
 package net.dongliu.apk.parser;
 
 import net.dongliu.apk.parser.bean.AdaptiveIcon;
@@ -54,9 +56,8 @@ import static java.lang.System.arraycopy;
 /**
  * Common Apk Parser methods.
  * This Class is not thread-safe.
- *
- * @author Liu Dong
  */
+// Copyright 2016 Liu Dong
 public abstract class AbstractApkFile implements Closeable {
     private DexClass[] dexClasses;
 
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/ApkParser.java b/libapkparser/src/main/java/net/dongliu/apk/parser/ApkParser.java
index 9f0325cfd..2e32fe1d0 100644
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/ApkParser.java
+++ b/libapkparser/src/main/java/net/dongliu/apk/parser/ApkParser.java
@@ -1,3 +1,5 @@
+// SPDX-License-Identifier: BSD-2-Clause
+
 package net.dongliu.apk.parser;
 
 import net.dongliu.apk.parser.bean.ApkSignStatus;
@@ -21,9 +23,8 @@ import androidx.annotation.Nullable;
 /**
  * ApkParser, for parsing apk file info.
  * This class is not thread-safe.
- *
- * @author dongliu
  */
+// Copyright 2016 Liu Dong
 public class ApkParser extends AbstractApkFile implements Closeable {
 
     private final ZipFile zf;
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/ApkParsers.java b/libapkparser/src/main/java/net/dongliu/apk/parser/ApkParsers.java
index 8cdaf3e2c..d6552612f 100644
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/ApkParsers.java
+++ b/libapkparser/src/main/java/net/dongliu/apk/parser/ApkParsers.java
@@ -1,3 +1,5 @@
+// SPDX-License-Identifier: BSD-2-Clause AND GPL-3.0-or-later
+
 package net.dongliu.apk.parser;
 
 import net.dongliu.apk.parser.bean.ApkMeta;
@@ -8,9 +10,8 @@ import java.util.Locale;
 
 /**
  * Convenient utils method for parse apk file
- *
- * @author Liu Dong
  */
+// Copyright 2016 Liu Dong
 public class ApkParsers {
     /**
      * Get apk meta info for apk file
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/ByteArrayApkFile.java b/libapkparser/src/main/java/net/dongliu/apk/parser/ByteArrayApkFile.java
index 8d5a42b16..66c44f1d7 100644
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/ByteArrayApkFile.java
+++ b/libapkparser/src/main/java/net/dongliu/apk/parser/ByteArrayApkFile.java
@@ -1,3 +1,5 @@
+// SPDX-License-Identifier: BSD-2-Clause
+
 package net.dongliu.apk.parser;
 
 import net.dongliu.apk.parser.bean.ApkSignStatus;
@@ -17,9 +19,8 @@ import java.util.zip.ZipInputStream;
 /**
  * Parse apk file from byte array.
  * This class is not thread-safe
- *
- * @author Liu Dong
  */
+// Copyright 2016 Liu Dong
 public class ByteArrayApkFile extends AbstractApkFile implements Closeable {
 
     private byte[] apkData;
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/ByteArrayApkParser.java b/libapkparser/src/main/java/net/dongliu/apk/parser/ByteArrayApkParser.java
index de9e4d0ba..eadeccf81 100644
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/ByteArrayApkParser.java
+++ b/libapkparser/src/main/java/net/dongliu/apk/parser/ByteArrayApkParser.java
@@ -1,12 +1,14 @@
+// SPDX-License-Identifier: BSD-2-Clause
+
 package net.dongliu.apk.parser;
 
 /**
  * Parse apk file from byte array.
  * This class is not thread-safe.
  *
- * @author Liu Dong
- * @deprecated using {@link ByteArrayApkFile} instead
+ * @deprecated use {@link ByteArrayApkFile} instead
  */
+// Copyright 2016 董刘
 @Deprecated
 public class ByteArrayApkParser extends ByteArrayApkFile {
 
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/bean/AdaptiveIcon.java b/libapkparser/src/main/java/net/dongliu/apk/parser/bean/AdaptiveIcon.java
index 7b258d62f..36ce0627d 100644
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/bean/AdaptiveIcon.java
+++ b/libapkparser/src/main/java/net/dongliu/apk/parser/bean/AdaptiveIcon.java
@@ -1,3 +1,5 @@
+// SPDX-License-Identifier: BSD-2-Clause
+
 package net.dongliu.apk.parser.bean;
 
 import java.io.Serializable;
@@ -5,6 +7,7 @@ import java.io.Serializable;
 /**
  * Android adaptive icon, from android 8.0
  */
+// Copyright 2018 Liu Dong
 public class AdaptiveIcon implements IconFace, Serializable {
     private static final long serialVersionUID = 4185750290211529320L;
     private final Icon foreground;
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/bean/ApkMeta.java b/libapkparser/src/main/java/net/dongliu/apk/parser/bean/ApkMeta.java
index b7578fedd..2e7759a27 100644
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/bean/ApkMeta.java
+++ b/libapkparser/src/main/java/net/dongliu/apk/parser/bean/ApkMeta.java
@@ -1,3 +1,5 @@
+// SPDX-License-Identifier: BSD-2-Clause
+
 package net.dongliu.apk.parser.bean;
 
 import net.dongliu.apk.parser.AbstractApkFile;
@@ -9,9 +11,8 @@ import androidx.annotation.Nullable;
 
 /**
  * Apk meta info
- *
- * @author dongliu
  */
+// Copyright 2014 Liu Dong
 public class ApkMeta {
 
     private final String packageName;
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/bean/ApkSignStatus.java b/libapkparser/src/main/java/net/dongliu/apk/parser/bean/ApkSignStatus.java
index 2379ddef4..d690c4368 100644
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/bean/ApkSignStatus.java
+++ b/libapkparser/src/main/java/net/dongliu/apk/parser/bean/ApkSignStatus.java
@@ -1,9 +1,11 @@
+// SPDX-License-Identifier: BSD-2-Clause
+
 package net.dongliu.apk.parser.bean;
 
 /**
  * Apk sign status.
- * @author dongliu
  */
+// Copyright 2014 Liu Dong
 public enum ApkSignStatus {
     notSigned,
     // invalid signing
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/bean/ApkSigner.java b/libapkparser/src/main/java/net/dongliu/apk/parser/bean/ApkSigner.java
index da4756695..4432e50f8 100644
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/bean/ApkSigner.java
+++ b/libapkparser/src/main/java/net/dongliu/apk/parser/bean/ApkSigner.java
@@ -1,3 +1,5 @@
+// SPDX-License-Identifier: BSD-2-Clause
+
 package net.dongliu.apk.parser.bean;
 
 import androidx.annotation.NonNull;
@@ -7,6 +9,7 @@ import static java.util.Objects.requireNonNull;
 /**
  * ApkSignV1 certificate file.
  */
+// Copyright 2018 hsiafan
 public class ApkSigner {
     /**
      * The cert file path in apk file
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/bean/ApkV2Signer.java b/libapkparser/src/main/java/net/dongliu/apk/parser/bean/ApkV2Signer.java
index 527d97abd..f26477a36 100644
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/bean/ApkV2Signer.java
+++ b/libapkparser/src/main/java/net/dongliu/apk/parser/bean/ApkV2Signer.java
@@ -1,3 +1,5 @@
+// SPDX-License-Identifier: BSD-2-Clause
+
 package net.dongliu.apk.parser.bean;
 
 import java.util.List;
@@ -5,6 +7,7 @@ import java.util.List;
 /**
  * ApkSignV1 certificate file.
  */
+// Copyright 2018 hsiafan
 public class ApkV2Signer {
     /**
      * The meta info of certificate contained in this cert file.
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/bean/CertificateMeta.java b/libapkparser/src/main/java/net/dongliu/apk/parser/bean/CertificateMeta.java
index d4649b437..078a93ff7 100644
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/bean/CertificateMeta.java
+++ b/libapkparser/src/main/java/net/dongliu/apk/parser/bean/CertificateMeta.java
@@ -1,31 +1,4 @@
-/*
- * Copyright (c) 2020, Muntashir Al-Islam
- * Copyright (c) 2015, Jared Rummler
- * Copyright (c) 2015, Liu Dong
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are met:
- *     * Redistributions of source code must retain the above copyright
- *       notice, this list of conditions and the following disclaimer.
- *     * Redistributions in binary form must reproduce the above copyright
- *       notice, this list of conditions and the following disclaimer in the
- *       documentation and/or other materials provided with the distribution.
- *     * Neither the name of the <organization> nor the
- *       names of its contributors may be used to endorse or promote products
- *       derived from this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
- * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- * DISCLAIMED. IN NO EVENT SHALL <COPYRIGHT HOLDER> BE LIABLE FOR ANY
- * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
- * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
- * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
- * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
+// SPDX-License-Identifier: BSD-2-Clause AND BSD-3-Clause
 
 package net.dongliu.apk.parser.bean;
 
@@ -33,6 +6,8 @@ import java.util.Date;
 
 import androidx.annotation.NonNull;
 
+// Copyright 2015 Jared Rummler
+//           2014 Liu Dong
 public class CertificateMeta {
 
     public static Builder newCertificateMeta() {
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/bean/ColorIcon.java b/libapkparser/src/main/java/net/dongliu/apk/parser/bean/ColorIcon.java
index a96358810..c9b823fea 100644
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/bean/ColorIcon.java
+++ b/libapkparser/src/main/java/net/dongliu/apk/parser/bean/ColorIcon.java
@@ -1,3 +1,5 @@
+// SPDX-License-Identifier: BSD-2-Clause
+
 package net.dongliu.apk.parser.bean;
 
 import java.io.Serializable;
@@ -5,6 +7,7 @@ import java.io.Serializable;
 /**
  * The plain icon, using color drawable resource.
  */
+// Copyright 2018 Liu Dong
 //to be implemented
 public class ColorIcon implements IconFace, Serializable {
     private static final long serialVersionUID = -7913024425268466186L;
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/bean/DexClass.java b/libapkparser/src/main/java/net/dongliu/apk/parser/bean/DexClass.java
index 7f809cce3..5d57de063 100644
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/bean/DexClass.java
+++ b/libapkparser/src/main/java/net/dongliu/apk/parser/bean/DexClass.java
@@ -1,12 +1,12 @@
+// SPDX-License-Identifier: BSD-2-Clause
+
 package net.dongliu.apk.parser.bean;
 
 import net.dongliu.apk.parser.struct.dex.DexClassStruct;
 
 import androidx.annotation.Nullable;
 
-/**
- * @author dongliu
- */
+// Copyright 2014 Liu Dong
 public class DexClass {
     /**
      * the class name
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/bean/GlEsVersion.java b/libapkparser/src/main/java/net/dongliu/apk/parser/bean/GlEsVersion.java
index 12453224e..9e0c7562a 100644
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/bean/GlEsVersion.java
+++ b/libapkparser/src/main/java/net/dongliu/apk/parser/bean/GlEsVersion.java
@@ -1,10 +1,11 @@
+// SPDX-License-Identifier: BSD-2-Clause
+
 package net.dongliu.apk.parser.bean;
 
 /**
  * the glEsVersion apk used.
- *
- * @author dongliu
  */
+// Copyright 2014 Liu Dong
 public class GlEsVersion {
     private final int major;
     private final int minor;
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/bean/Icon.java b/libapkparser/src/main/java/net/dongliu/apk/parser/bean/Icon.java
index e324cb6a7..efba1cc30 100644
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/bean/Icon.java
+++ b/libapkparser/src/main/java/net/dongliu/apk/parser/bean/Icon.java
@@ -1,3 +1,5 @@
+// SPDX-License-Identifier: BSD-2-Clause
+
 package net.dongliu.apk.parser.bean;
 
 import java.io.Serializable;
@@ -6,9 +8,8 @@ import androidx.annotation.Nullable;
 
 /**
  * The plain file apk icon.
- *
- * @author Liu Dong
  */
+// Copyright 2014 Liu Dong
 public class Icon implements IconFace, Serializable {
 
     private static final long serialVersionUID = 8680309892249769701L;
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/bean/IconFace.java b/libapkparser/src/main/java/net/dongliu/apk/parser/bean/IconFace.java
index 454a34c22..7f33b2884 100644
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/bean/IconFace.java
+++ b/libapkparser/src/main/java/net/dongliu/apk/parser/bean/IconFace.java
@@ -1,3 +1,5 @@
+// SPDX-License-Identifier: BSD-2-Clause
+
 package net.dongliu.apk.parser.bean;
 
 import java.io.Serializable;
@@ -5,6 +7,7 @@ import java.io.Serializable;
 /**
  * The icon interface
  */
+// Copyright 2018 Liu Dong
 public interface IconFace extends Serializable {
 
     /**
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/bean/IconPath.java b/libapkparser/src/main/java/net/dongliu/apk/parser/bean/IconPath.java
index 454be920f..75bf00ec3 100644
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/bean/IconPath.java
+++ b/libapkparser/src/main/java/net/dongliu/apk/parser/bean/IconPath.java
@@ -1,8 +1,11 @@
+// SPDX-License-Identifier: BSD-2-Clause
+
 package net.dongliu.apk.parser.bean;
 
 /**
  * Icon path, and density
  */
+// Copyright 2017 Liu Dong
 public class IconPath {
     private String path;
     private int density;
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/bean/Permission.java b/libapkparser/src/main/java/net/dongliu/apk/parser/bean/Permission.java
index 5e6de336b..f6053e669 100644
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/bean/Permission.java
+++ b/libapkparser/src/main/java/net/dongliu/apk/parser/bean/Permission.java
@@ -1,12 +1,13 @@
+// SPDX-License-Identifier: BSD-2-Clause
+
 package net.dongliu.apk.parser.bean;
 
 import androidx.annotation.Nullable;
 
 /**
  * permission provided by the app
- *
- * @author Liu Dong
  */
+// Copyright 2014 Liu Dong
 public class Permission {
     private final String name;
     private final String label;
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/bean/UseFeature.java b/libapkparser/src/main/java/net/dongliu/apk/parser/bean/UseFeature.java
index 6ca2f6b66..37f0f3cc8 100644
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/bean/UseFeature.java
+++ b/libapkparser/src/main/java/net/dongliu/apk/parser/bean/UseFeature.java
@@ -1,10 +1,11 @@
+// SPDX-License-Identifier: BSD-2-Clause
+
 package net.dongliu.apk.parser.bean;
 
 /**
  * the permission used by apk
- *
- * @author dongliu
  */
+// Copyright 2014 Liu Dong
 public class UseFeature {
     private final String name;
     private final boolean required;
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/exception/ParserException.java b/libapkparser/src/main/java/net/dongliu/apk/parser/exception/ParserException.java
index 3c2a38a12..bc06aa62a 100644
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/exception/ParserException.java
+++ b/libapkparser/src/main/java/net/dongliu/apk/parser/exception/ParserException.java
@@ -1,10 +1,11 @@
+// SPDX-License-Identifier: BSD-2-Clause
+
 package net.dongliu.apk.parser.exception;
 
 /**
- * throwed when parse failed.
- *
- * @author dongliu
+ * thrown when parse failed.
  */
+// Copyright 2014 Liu Dong
 public class ParserException extends RuntimeException {
     public ParserException(String msg) {
         super(msg);
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/parser/AdaptiveIconParser.java b/libapkparser/src/main/java/net/dongliu/apk/parser/parser/AdaptiveIconParser.java
index 32ef7fa4a..116f0c342 100644
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/parser/AdaptiveIconParser.java
+++ b/libapkparser/src/main/java/net/dongliu/apk/parser/parser/AdaptiveIconParser.java
@@ -1,12 +1,13 @@
+// SPDX-License-Identifier: BSD-2-Clause
+
 package net.dongliu.apk.parser.parser;
 
 import net.dongliu.apk.parser.struct.xml.*;
 
 /**
  * Parse adaptive icon xml file.
- *
- * @author Liu Dong dongliu@live.cn
  */
+// Copyright 2018 Liu Dong
 public class AdaptiveIconParser implements XmlStreamer {
 
     private String foreground;
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/parser/ApkMetaTranslator.java b/libapkparser/src/main/java/net/dongliu/apk/parser/parser/ApkMetaTranslator.java
index f06cb6516..bbfe48b2c 100644
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/parser/ApkMetaTranslator.java
+++ b/libapkparser/src/main/java/net/dongliu/apk/parser/parser/ApkMetaTranslator.java
@@ -1,3 +1,5 @@
+// SPDX-License-Identifier: BSD-2-Clause
+
 package net.dongliu.apk.parser.parser;
 
 import net.dongliu.apk.parser.bean.*;
@@ -15,9 +17,8 @@ import androidx.annotation.Nullable;
 
 /**
  * trans binary xml to apk meta info
- *
- * @author Liu Dong dongliu@live.cn
  */
+// Copyright 2014 Liu Dong
 public class ApkMetaTranslator implements XmlStreamer {
     private String[] tagStack = new String[100];
     private int depth = 0;
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/parser/ApkSignBlockParser.java b/libapkparser/src/main/java/net/dongliu/apk/parser/parser/ApkSignBlockParser.java
index bf78ef219..866796776 100644
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/parser/ApkSignBlockParser.java
+++ b/libapkparser/src/main/java/net/dongliu/apk/parser/parser/ApkSignBlockParser.java
@@ -1,3 +1,5 @@
+// SPDX-License-Identifier: BSD-2-Clause
+
 package net.dongliu.apk.parser.parser;
 
 import net.dongliu.apk.parser.struct.signingv2.ApkSigningBlock;
@@ -23,6 +25,7 @@ import androidx.annotation.NonNull;
 /**
  * The Apk Sign Block V2 Parser.
  */
+// Copyright 2018 hsiafan
 public class ApkSignBlockParser {
     private ByteBuffer data;
 
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/parser/AttributeValues.java b/libapkparser/src/main/java/net/dongliu/apk/parser/parser/AttributeValues.java
index 87f9c414c..ae1ad09b7 100644
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/parser/AttributeValues.java
+++ b/libapkparser/src/main/java/net/dongliu/apk/parser/parser/AttributeValues.java
@@ -1,30 +1,4 @@
-/*
- * Copyright (c) 2020, Muntashir Al-Islam
- * Copyright (c) 2015, Liu Dong
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are met:
- *     * Redistributions of source code must retain the above copyright
- *       notice, this list of conditions and the following disclaimer.
- *     * Redistributions in binary form must reproduce the above copyright
- *       notice, this list of conditions and the following disclaimer in the
- *       documentation and/or other materials provided with the distribution.
- *     * Neither the name of the <organization> nor the
- *       names of its contributors may be used to endorse or promote products
- *       derived from this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
- * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- * DISCLAIMED. IN NO EVENT SHALL <COPYRIGHT HOLDER> BE LIABLE FOR ANY
- * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
- * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
- * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
- * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
+// SPDX-License-Identifier: BSD-2-Clause
 
 package net.dongliu.apk.parser.parser;
 
@@ -43,6 +17,7 @@ import androidx.annotation.NonNull;
 /**
  * attribute value constant
  */
+// Copyright 2018 Liu Dong
 public class AttributeValues {
     @NonNull
     public static String getScreenOrientation(int value) {
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/parser/BinaryXmlParser.java b/libapkparser/src/main/java/net/dongliu/apk/parser/parser/BinaryXmlParser.java
index 536e20cf9..de97a1d48 100644
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/parser/BinaryXmlParser.java
+++ b/libapkparser/src/main/java/net/dongliu/apk/parser/parser/BinaryXmlParser.java
@@ -1,3 +1,5 @@
+// SPDX-License-Identifier: BSD-2-Clause
+
 package net.dongliu.apk.parser.parser;
 
 import net.dongliu.apk.parser.exception.ParserException;
@@ -19,9 +21,8 @@ import java.util.Set;
 /**
  * Android Binary XML format
  * see http://justanapplication.wordpress.com/category/android/android-binary-xml/
- *
- * @author dongliu
  */
+// Copyright 2014 Liu Dong
 public class BinaryXmlParser {
 
     /**
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/parser/CertificateMetas.java b/libapkparser/src/main/java/net/dongliu/apk/parser/parser/CertificateMetas.java
index 0ea81914d..c2459c97a 100644
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/parser/CertificateMetas.java
+++ b/libapkparser/src/main/java/net/dongliu/apk/parser/parser/CertificateMetas.java
@@ -1,3 +1,5 @@
+// SPDX-License-Identifier: BSD-2-Clause
+
 package net.dongliu.apk.parser.parser;
 
 import net.dongliu.apk.parser.bean.CertificateMeta;
@@ -15,6 +17,7 @@ import javax.security.cert.X509Certificate;
 
 import androidx.annotation.NonNull;
 
+// Copyright 2018 hsiafan
 public class CertificateMetas {
 
     @NonNull
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/parser/CertificateParser.java b/libapkparser/src/main/java/net/dongliu/apk/parser/parser/CertificateParser.java
index 3c3dad076..29032cd10 100644
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/parser/CertificateParser.java
+++ b/libapkparser/src/main/java/net/dongliu/apk/parser/parser/CertificateParser.java
@@ -1,31 +1,4 @@
-/*
- * Copyright (c) 2020, Muntashir Al-Islam
- * Copyright (c) 2015, Jared Rummler
- * Copyright (c) 2015, Liu Dong
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are met:
- *     * Redistributions of source code must retain the above copyright
- *       notice, this list of conditions and the following disclaimer.
- *     * Redistributions in binary form must reproduce the above copyright
- *       notice, this list of conditions and the following disclaimer in the
- *       documentation and/or other materials provided with the distribution.
- *     * Neither the name of the <organization> nor the
- *       names of its contributors may be used to endorse or promote products
- *       derived from this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
- * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- * DISCLAIMED. IN NO EVENT SHALL <COPYRIGHT HOLDER> BE LIABLE FOR ANY
- * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
- * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
- * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
- * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
+// SPDX-License-Identifier: BSD-2-Clause AND BSD-3-Clause
 
 package net.dongliu.apk.parser.parser;
 
@@ -42,6 +15,8 @@ import javax.security.cert.X509Certificate;
 
 import androidx.annotation.NonNull;
 
+// Copyright 2015 Jared Rummler
+//           2014 Liu Dong
 public class CertificateParser {
     private final byte[] data;
 
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/parser/CompositeXmlStreamer.java b/libapkparser/src/main/java/net/dongliu/apk/parser/parser/CompositeXmlStreamer.java
index b7921729a..9c9289f76 100644
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/parser/CompositeXmlStreamer.java
+++ b/libapkparser/src/main/java/net/dongliu/apk/parser/parser/CompositeXmlStreamer.java
@@ -1,10 +1,10 @@
+// SPDX-License-Identifier: BSD-2-Clause
+
 package net.dongliu.apk.parser.parser;
 
 import net.dongliu.apk.parser.struct.xml.*;
 
-/**
- * @author dongliu
- */
+// Copyright 2014 Liu Dong
 public class CompositeXmlStreamer implements XmlStreamer {
 
     public XmlStreamer[] xmlStreamers;
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/parser/DexParser.java b/libapkparser/src/main/java/net/dongliu/apk/parser/parser/DexParser.java
index 62284ea85..d4d8aeed1 100644
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/parser/DexParser.java
+++ b/libapkparser/src/main/java/net/dongliu/apk/parser/parser/DexParser.java
@@ -1,3 +1,5 @@
+// SPDX-License-Identifier: BSD-2-Clause
+
 package net.dongliu.apk.parser.parser;
 
 import net.dongliu.apk.parser.bean.DexClass;
@@ -17,9 +19,8 @@ import java.nio.ByteOrder;
  * see:
  * http://source.android.com/devices/tech/dalvik/dex-format.html
  * http://dexandroid.googlecode.com/svn/trunk/dalvik/libdex/DexFile.h
- *
- * @author dongliu
  */
+// Copyright 2014 Liu Dong
 public class DexParser {
 
     private ByteBuffer buffer;
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/parser/ResourceTableParser.java b/libapkparser/src/main/java/net/dongliu/apk/parser/parser/ResourceTableParser.java
index a4bd31852..bd0a59f56 100644
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/parser/ResourceTableParser.java
+++ b/libapkparser/src/main/java/net/dongliu/apk/parser/parser/ResourceTableParser.java
@@ -1,3 +1,5 @@
+// SPDX-License-Identifier: BSD-2-Clause
+
 package net.dongliu.apk.parser.parser;
 
 import android.util.Pair;
@@ -24,10 +26,10 @@ import static net.dongliu.apk.parser.struct.ChunkType.UNKNOWN_YET;
 /**
  * Parse android resource table file.
  *
- * @author dongliu
  * @see <a href="https://github.com/aosp-mirror/platform_frameworks_base/blob/master/libs/androidfw/include/androidfw/ResourceTypes.h">ResourceTypes.h</a>
  * @see <a href="https://github.com/aosp-mirror/platform_frameworks_base/blob/master/libs/androidfw/ResourceTypes.cpp">ResourceTypes.cpp</a>
  */
+// Copyright 2014 Liu Dong
 public class ResourceTableParser {
 
     /**
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/parser/StringPoolEntry.java b/libapkparser/src/main/java/net/dongliu/apk/parser/parser/StringPoolEntry.java
index 81a7bf4aa..68dd8b1b2 100644
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/parser/StringPoolEntry.java
+++ b/libapkparser/src/main/java/net/dongliu/apk/parser/parser/StringPoolEntry.java
@@ -1,8 +1,11 @@
+// SPDX-License-Identifier: BSD-2-Clause
+
 package net.dongliu.apk.parser.parser;
 
 /**
  * class for sort string pool indexes
  */
+// Copyright 2014 Liu Dong
 public class StringPoolEntry {
     private int idx;
     private long offset;
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/parser/XmlNamespaces.java b/libapkparser/src/main/java/net/dongliu/apk/parser/parser/XmlNamespaces.java
index a89a9a5d0..f4aeea799 100644
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/parser/XmlNamespaces.java
+++ b/libapkparser/src/main/java/net/dongliu/apk/parser/parser/XmlNamespaces.java
@@ -1,3 +1,5 @@
+// SPDX-License-Identifier: BSD-2-Clause
+
 package net.dongliu.apk.parser.parser;
 
 import net.dongliu.apk.parser.struct.xml.XmlNamespaceEndTag;
@@ -9,9 +11,8 @@ import java.util.List;
 
 /**
  * the xml file's namespaces.
- *
- * @author dongliu
  */
+// Copyright 2014 Liu Dong
 class XmlNamespaces {
 
     private List<XmlNamespace> namespaces;
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/parser/XmlStreamer.java b/libapkparser/src/main/java/net/dongliu/apk/parser/parser/XmlStreamer.java
index b061b7ccd..b39f19e00 100644
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/parser/XmlStreamer.java
+++ b/libapkparser/src/main/java/net/dongliu/apk/parser/parser/XmlStreamer.java
@@ -1,12 +1,13 @@
+// SPDX-License-Identifier: BSD-2-Clause
+
 package net.dongliu.apk.parser.parser;
 
 import net.dongliu.apk.parser.struct.xml.*;
 
 /**
  * callback interface for parse binary xml file.
- *
- * @author dongliu
  */
+// Copyright 2014 Liu Dong
 public interface XmlStreamer {
 
     void onStartTag(XmlNodeStartTag xmlNodeStartTag);
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/parser/XmlTranslator.java b/libapkparser/src/main/java/net/dongliu/apk/parser/parser/XmlTranslator.java
index ae149a800..f1f3df058 100644
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/parser/XmlTranslator.java
+++ b/libapkparser/src/main/java/net/dongliu/apk/parser/parser/XmlTranslator.java
@@ -1,3 +1,5 @@
+// SPDX-License-Identifier: BSD-2-Clause
+
 package net.dongliu.apk.parser.parser;
 
 import net.dongliu.apk.parser.struct.xml.*;
@@ -7,9 +9,8 @@ import java.util.List;
 
 /**
  * trans to xml text when parse binary xml file.
- *
- * @author dongliu
  */
+// Copyright 2014 Liu Dong
 public class XmlTranslator implements XmlStreamer {
     private StringBuilder sb;
     private int shift = 0;
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/parser/package-info.java b/libapkparser/src/main/java/net/dongliu/apk/parser/parser/package-info.java
deleted file mode 100644
index 3947f2f8e..000000000
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/parser/package-info.java
+++ /dev/null
@@ -1,5 +0,0 @@
-/**
- * Parsers for Apk.
- * Only for internal implementation, user should not depend on classes in this package directly.
- */
-package net.dongliu.apk.parser.parser;
\ No newline at end of file
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/struct/AndroidConstants.java b/libapkparser/src/main/java/net/dongliu/apk/parser/struct/AndroidConstants.java
index 1b25329df..e265a0919 100644
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/struct/AndroidConstants.java
+++ b/libapkparser/src/main/java/net/dongliu/apk/parser/struct/AndroidConstants.java
@@ -1,10 +1,11 @@
+// SPDX-License-Identifier: BSD-2-Clause
+
 package net.dongliu.apk.parser.struct;
 
 /**
- * android system file.
- *
- * @author dongiu
+ * Android system file.
  */
+// Copyright 2014 Liu Dong
 public class AndroidConstants {
 
     public static final String RESOURCE_FILE = "resources.arsc";
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/struct/ChunkHeader.java b/libapkparser/src/main/java/net/dongliu/apk/parser/struct/ChunkHeader.java
index 1f4890468..d1cbdefe7 100644
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/struct/ChunkHeader.java
+++ b/libapkparser/src/main/java/net/dongliu/apk/parser/struct/ChunkHeader.java
@@ -1,3 +1,5 @@
+// SPDX-License-Identifier: BSD-2-Clause
+
 package net.dongliu.apk.parser.struct;
 
 import net.dongliu.apk.parser.utils.Unsigned;
@@ -13,9 +15,8 @@ import net.dongliu.apk.parser.utils.Unsigned;
  *     uint32_t size;
  * }
  * </pre>
- *
- * @author dongliu
  */
+// Copyright 2014 Liu Dong
 public class ChunkHeader {
 
     // Type identifier for this chunk.  The meaning of this value depends
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/struct/ChunkType.java b/libapkparser/src/main/java/net/dongliu/apk/parser/struct/ChunkType.java
index d04e794ec..2a54704b8 100644
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/struct/ChunkType.java
+++ b/libapkparser/src/main/java/net/dongliu/apk/parser/struct/ChunkType.java
@@ -1,11 +1,12 @@
+// SPDX-License-Identifier: BSD-2-Clause
+
 package net.dongliu.apk.parser.struct;
 
 /**
  * Resource type
  * see https://android.googlesource.com/platform/frameworks/base/+/master/libs/androidfw/include/androidfw/ResourceTypes.h
- *
- * @author dongliu
  */
+// Copyright 2014 Liu Dong
 public class ChunkType {
     public static final int NULL = 0x0000;
     public static final int STRING_POOL = 0x0001;
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/struct/ResValue.java b/libapkparser/src/main/java/net/dongliu/apk/parser/struct/ResValue.java
index a7fd3dfca..580f05d36 100644
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/struct/ResValue.java
+++ b/libapkparser/src/main/java/net/dongliu/apk/parser/struct/ResValue.java
@@ -1,3 +1,5 @@
+// SPDX-License-Identifier: BSD-2-Clause
+
 package net.dongliu.apk.parser.struct;
 
 import androidx.annotation.Nullable;
@@ -5,9 +7,8 @@ import androidx.annotation.Nullable;
 /**
  * Apk res value struct.
  * Only for description now, The value is hold in ResourceValue
- *
- * @author dongliu
  */
+// Copyright 2014 Liu Dong
 public class ResValue {
     // Number of bytes in this structure. uint16; always 8
     private int size;
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/struct/ResourceValue.java b/libapkparser/src/main/java/net/dongliu/apk/parser/struct/ResourceValue.java
index 2fc523b13..5247c709e 100644
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/struct/ResourceValue.java
+++ b/libapkparser/src/main/java/net/dongliu/apk/parser/struct/ResourceValue.java
@@ -1,3 +1,5 @@
+// SPDX-License-Identifier: BSD-2-Clause
+
 package net.dongliu.apk.parser.struct;
 
 import net.dongliu.apk.parser.struct.resource.*;
@@ -8,9 +10,8 @@ import java.util.Locale;
 
 /**
  * Resource entity, contains the resource id, should retrieve the value from resource table, or string pool if it is a string resource.
- *
- * @author dongliu
  */
+// Copyright 2016 Liu Dong
 public abstract class ResourceValue {
     protected final int value;
 
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/struct/StringPool.java b/libapkparser/src/main/java/net/dongliu/apk/parser/struct/StringPool.java
index d5d59aa94..ca9ae1f07 100644
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/struct/StringPool.java
+++ b/libapkparser/src/main/java/net/dongliu/apk/parser/struct/StringPool.java
@@ -1,10 +1,11 @@
+// SPDX-License-Identifier: BSD-2-Clause
+
 package net.dongliu.apk.parser.struct;
 
 /**
  * String pool.
- *
- * @author dongliu
  */
+// Copyright 2014 Liu Dong
 public class StringPool {
     private String[] pool;
 
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/struct/StringPoolHeader.java b/libapkparser/src/main/java/net/dongliu/apk/parser/struct/StringPoolHeader.java
index c5c4c8311..dcb341f15 100644
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/struct/StringPoolHeader.java
+++ b/libapkparser/src/main/java/net/dongliu/apk/parser/struct/StringPoolHeader.java
@@ -1,12 +1,13 @@
+// SPDX-License-Identifier: BSD-2-Clause
+
 package net.dongliu.apk.parser.struct;
 
 import net.dongliu.apk.parser.utils.Unsigned;
 
 /**
  * String pool chunk header.
- *
- * @author dongliu
  */
+// Copyright 2014 Liu Dong
 public class StringPoolHeader extends ChunkHeader {
     public StringPoolHeader(int headerSize, long chunkSize) {
         super(ChunkType.STRING_POOL, headerSize, chunkSize);
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/struct/dex/DexClassStruct.java b/libapkparser/src/main/java/net/dongliu/apk/parser/struct/dex/DexClassStruct.java
index 669a2947b..2554d3095 100644
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/struct/dex/DexClassStruct.java
+++ b/libapkparser/src/main/java/net/dongliu/apk/parser/struct/dex/DexClassStruct.java
@@ -1,8 +1,8 @@
+// SPDX-License-Identifier: BSD-2-Clause
+
 package net.dongliu.apk.parser.struct.dex;
 
-/**
- * @author dongliu
- */
+// Copyright 2014 Liu Dong
 public class DexClassStruct {
     /* index into typeIds for this class. u4 */
     private int classIdx;
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/struct/dex/DexHeader.java b/libapkparser/src/main/java/net/dongliu/apk/parser/struct/dex/DexHeader.java
index f2144998d..79c13377d 100644
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/struct/dex/DexHeader.java
+++ b/libapkparser/src/main/java/net/dongliu/apk/parser/struct/dex/DexHeader.java
@@ -1,11 +1,12 @@
+// SPDX-License-Identifier: BSD-2-Clause
+
 package net.dongliu.apk.parser.struct.dex;
 
 /**
  * dex file header.
  * see http://dexandroid.googlecode.com/svn/trunk/dalvik/libdex/DexFile.h
- *
- * @author dongliu
  */
+// Copyright 2014 Liu Dong
 public class DexHeader {
 
     public static final int kSHA1DigestLen = 20;
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/struct/package-info.java b/libapkparser/src/main/java/net/dongliu/apk/parser/struct/package-info.java
deleted file mode 100644
index f3843c52a..000000000
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/struct/package-info.java
+++ /dev/null
@@ -1,4 +0,0 @@
-/**
- * Only for internal implementation!
- */
-package net.dongliu.apk.parser.struct;
\ No newline at end of file
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/struct/resource/Densities.java b/libapkparser/src/main/java/net/dongliu/apk/parser/struct/resource/Densities.java
index dff35755d..9ab8792f4 100644
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/struct/resource/Densities.java
+++ b/libapkparser/src/main/java/net/dongliu/apk/parser/struct/resource/Densities.java
@@ -1,8 +1,11 @@
+// SPDX-License-Identifier: BSD-2-Clause
+
 package net.dongliu.apk.parser.struct.resource;
 
 /**
  * Screen density values
  */
+// Copyright 2016 Liu Dong
 public abstract class Densities {
     public static final int DEFAULT = 0;
     public static final int LOW = 120;
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/struct/resource/LibraryEntry.java b/libapkparser/src/main/java/net/dongliu/apk/parser/struct/resource/LibraryEntry.java
index 64459f01e..86ee4b0b2 100644
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/struct/resource/LibraryEntry.java
+++ b/libapkparser/src/main/java/net/dongliu/apk/parser/struct/resource/LibraryEntry.java
@@ -1,10 +1,11 @@
+// SPDX-License-Identifier: BSD-2-Clause
+
 package net.dongliu.apk.parser.struct.resource;
 
 /**
  * Library chunk entry
- *
- * @author Liu Dong
  */
+// Copyright 2016 Liu Dong
 public class LibraryEntry {
     // uint32. The package-id this shared library was assigned at build time.
     private int packageId;
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/struct/resource/LibraryHeader.java b/libapkparser/src/main/java/net/dongliu/apk/parser/struct/resource/LibraryHeader.java
index ad2cc83e3..dd3f4a59f 100644
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/struct/resource/LibraryHeader.java
+++ b/libapkparser/src/main/java/net/dongliu/apk/parser/struct/resource/LibraryHeader.java
@@ -1,3 +1,5 @@
+// SPDX-License-Identifier: BSD-2-Clause
+
 package net.dongliu.apk.parser.struct.resource;
 
 import net.dongliu.apk.parser.struct.ChunkHeader;
@@ -6,12 +8,11 @@ import net.dongliu.apk.parser.utils.Unsigned;
 
 /**
  * Table library chunk header
- *
- * @author Liu Dong
  */
+// Copyright 2016 Liu Dong
 public class LibraryHeader extends ChunkHeader {
 
-    /**
+    /*
      * A package-id to package name mapping for any shared libraries used
      * in this resource table. The package-id's encoded in this resource
      * table may be different than the id's assigned at runtime. We must
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/struct/resource/NullHeader.java b/libapkparser/src/main/java/net/dongliu/apk/parser/struct/resource/NullHeader.java
index c6ff1d013..60f9a0819 100644
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/struct/resource/NullHeader.java
+++ b/libapkparser/src/main/java/net/dongliu/apk/parser/struct/resource/NullHeader.java
@@ -1,8 +1,11 @@
+// SPDX-License-Identifier: BSD-2-Clause
+
 package net.dongliu.apk.parser.struct.resource;
 
 import net.dongliu.apk.parser.struct.ChunkHeader;
 import net.dongliu.apk.parser.struct.ChunkType;
 
+// Copyright 2017 hsiafan
 public class NullHeader extends ChunkHeader {
     public NullHeader(int headerSize, int chunkSize) {
         super(ChunkType.NULL, headerSize, chunkSize);
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/struct/resource/PackageHeader.java b/libapkparser/src/main/java/net/dongliu/apk/parser/struct/resource/PackageHeader.java
index f5860d08e..c83ca36c1 100644
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/struct/resource/PackageHeader.java
+++ b/libapkparser/src/main/java/net/dongliu/apk/parser/struct/resource/PackageHeader.java
@@ -1,12 +1,12 @@
+// SPDX-License-Identifier: BSD-2-Clause
+
 package net.dongliu.apk.parser.struct.resource;
 
 import net.dongliu.apk.parser.struct.ChunkHeader;
 import net.dongliu.apk.parser.struct.ChunkType;
 import net.dongliu.apk.parser.utils.Unsigned;
 
-/**
- * @author dongliu
- */
+// Copyright 2014 Liu Dong
 public class PackageHeader extends ChunkHeader {
 
     // ResourcePackage IDs start at 1 (corresponding to the value of the package bits in a resource identifier).
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/struct/resource/ResTableConfig.java b/libapkparser/src/main/java/net/dongliu/apk/parser/struct/resource/ResTableConfig.java
index 73f05c068..2df12c4a7 100644
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/struct/resource/ResTableConfig.java
+++ b/libapkparser/src/main/java/net/dongliu/apk/parser/struct/resource/ResTableConfig.java
@@ -1,12 +1,13 @@
+// SPDX-License-Identifier: BSD-2-Clause
+
 package net.dongliu.apk.parser.struct.resource;
 
 import net.dongliu.apk.parser.utils.Unsigned;
 
 /**
  * used by resource Type.
- *
- * @author dongliu
  */
+// Copyright 2014 Liu Dong
 public class ResTableConfig {
     // Number of bytes in this structure. uint32_t
     private int size;
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/struct/resource/ResourceEntry.java b/libapkparser/src/main/java/net/dongliu/apk/parser/struct/resource/ResourceEntry.java
index e7002e212..db247d9eb 100644
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/struct/resource/ResourceEntry.java
+++ b/libapkparser/src/main/java/net/dongliu/apk/parser/struct/resource/ResourceEntry.java
@@ -1,3 +1,5 @@
+// SPDX-License-Identifier: BSD-2-Clause
+
 package net.dongliu.apk.parser.struct.resource;
 
 import net.dongliu.apk.parser.struct.ResourceValue;
@@ -9,9 +11,8 @@ import androidx.annotation.Nullable;
 /**
  * A Resource entry specifies the key (name) of the Resource.
  * It is immediately followed by the value of that Resource.
- *
- * @author dongliu
  */
+// Copyright 2014 Liu Dong
 public class ResourceEntry {
     // Number of bytes in this structure. uint16_t
     private int size;
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/struct/resource/ResourceMapEntry.java b/libapkparser/src/main/java/net/dongliu/apk/parser/struct/resource/ResourceMapEntry.java
index 179f909a7..3198b63ff 100644
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/struct/resource/ResourceMapEntry.java
+++ b/libapkparser/src/main/java/net/dongliu/apk/parser/struct/resource/ResourceMapEntry.java
@@ -1,11 +1,11 @@
+// SPDX-License-Identifier: BSD-2-Clause
+
 package net.dongliu.apk.parser.struct.resource;
 
 import java.util.Arrays;
 import java.util.Locale;
 
-/**
- * @author dongliu.
- */
+// Copyright 2014 Liu Dong
 public class ResourceMapEntry extends ResourceEntry {
     // Resource identifier of the parent mapping, or 0 if there is none.
     //ResTable_ref specifies the parent Resource, if any, of this Resource.
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/struct/resource/ResourcePackage.java b/libapkparser/src/main/java/net/dongliu/apk/parser/struct/resource/ResourcePackage.java
index 1865d3808..665565679 100644
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/struct/resource/ResourcePackage.java
+++ b/libapkparser/src/main/java/net/dongliu/apk/parser/struct/resource/ResourcePackage.java
@@ -1,3 +1,5 @@
+// SPDX-License-Identifier: BSD-2-Clause
+
 package net.dongliu.apk.parser.struct.resource;
 
 import net.dongliu.apk.parser.struct.StringPool;
@@ -11,9 +13,8 @@ import androidx.annotation.Nullable;
 
 /**
  * Resource packge.
- *
- * @author dongliu
  */
+// Copyright 2014 Liu Dong
 public class ResourcePackage {
     // the packageName
     private String name;
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/struct/resource/ResourceTable.java b/libapkparser/src/main/java/net/dongliu/apk/parser/struct/resource/ResourceTable.java
index 212e70e27..668a6e4cb 100644
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/struct/resource/ResourceTable.java
+++ b/libapkparser/src/main/java/net/dongliu/apk/parser/struct/resource/ResourceTable.java
@@ -1,3 +1,5 @@
+// SPDX-License-Identifier: BSD-2-Clause
+
 package net.dongliu.apk.parser.struct.resource;
 
 import android.util.SparseArray;
@@ -12,9 +14,8 @@ import androidx.annotation.NonNull;
 
 /**
  * The apk resource table
- *
- * @author dongliu
  */
+// Copyright 2014 Liu Dong
 public class ResourceTable {
     private Map<Short, ResourcePackage> packageMap = new HashMap<>();
     private StringPool stringPool;
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/struct/resource/ResourceTableHeader.java b/libapkparser/src/main/java/net/dongliu/apk/parser/struct/resource/ResourceTableHeader.java
index d6f2bb1ab..4bfde959d 100644
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/struct/resource/ResourceTableHeader.java
+++ b/libapkparser/src/main/java/net/dongliu/apk/parser/struct/resource/ResourceTableHeader.java
@@ -1,3 +1,5 @@
+// SPDX-License-Identifier: BSD-2-Clause
+
 package net.dongliu.apk.parser.struct.resource;
 
 import net.dongliu.apk.parser.struct.ChunkHeader;
@@ -6,9 +8,8 @@ import net.dongliu.apk.parser.utils.Unsigned;
 
 /**
  * resource file header
- *
- * @author dongliu
  */
+// Copyright 2014 Liu Dong
 public class ResourceTableHeader extends ChunkHeader {
     // The number of ResTable_package structures. uint32
     private int packageCount;
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/struct/resource/ResourceTableMap.java b/libapkparser/src/main/java/net/dongliu/apk/parser/struct/resource/ResourceTableMap.java
index 2c0b51732..f01ee0c55 100644
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/struct/resource/ResourceTableMap.java
+++ b/libapkparser/src/main/java/net/dongliu/apk/parser/struct/resource/ResourceTableMap.java
@@ -1,10 +1,10 @@
+// SPDX-License-Identifier: BSD-2-Clause
+
 package net.dongliu.apk.parser.struct.resource;
 
 import net.dongliu.apk.parser.struct.ResourceValue;
 
-/**
- * @author dongliu
- */
+// Copyright 2014 Liu Dong
 public class ResourceTableMap {
     // ...elided
     // ResTable_ref; unit32
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/struct/resource/Type.java b/libapkparser/src/main/java/net/dongliu/apk/parser/struct/resource/Type.java
index 7a95fbc98..5a41babf3 100644
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/struct/resource/Type.java
+++ b/libapkparser/src/main/java/net/dongliu/apk/parser/struct/resource/Type.java
@@ -1,3 +1,5 @@
+// SPDX-License-Identifier: BSD-2-Clause
+
 package net.dongliu.apk.parser.struct.resource;
 
 import net.dongliu.apk.parser.struct.StringPool;
@@ -7,9 +9,7 @@ import net.dongliu.apk.parser.utils.ParseUtils;
 import java.nio.ByteBuffer;
 import java.util.Locale;
 
-/**
- * @author dongliu
- */
+// Copyright 2014 Liu Dong
 public class Type {
 
     private String name;
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/struct/resource/TypeHeader.java b/libapkparser/src/main/java/net/dongliu/apk/parser/struct/resource/TypeHeader.java
index d2d9731be..91a6aa1d5 100644
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/struct/resource/TypeHeader.java
+++ b/libapkparser/src/main/java/net/dongliu/apk/parser/struct/resource/TypeHeader.java
@@ -1,12 +1,12 @@
+// SPDX-License-Identifier: BSD-2-Clause
+
 package net.dongliu.apk.parser.struct.resource;
 
 import net.dongliu.apk.parser.struct.ChunkHeader;
 import net.dongliu.apk.parser.struct.ChunkType;
 import net.dongliu.apk.parser.utils.Unsigned;
 
-/**
- * @author dongliu
- */
+// Copyright 2014 Liu Dong
 public class TypeHeader extends ChunkHeader {
 
     public static final long NO_ENTRY = 0xFFFFFFFFL;
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/struct/resource/TypeSpec.java b/libapkparser/src/main/java/net/dongliu/apk/parser/struct/resource/TypeSpec.java
index 1b9ec488e..b99114ade 100644
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/struct/resource/TypeSpec.java
+++ b/libapkparser/src/main/java/net/dongliu/apk/parser/struct/resource/TypeSpec.java
@@ -1,8 +1,8 @@
+// SPDX-License-Identifier: BSD-2-Clause
+
 package net.dongliu.apk.parser.struct.resource;
 
-/**
- * @author dongliu
- */
+// Copyright 2014 Liu Dong
 public class TypeSpec {
 
     private long[] entryFlags;
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/struct/resource/TypeSpecHeader.java b/libapkparser/src/main/java/net/dongliu/apk/parser/struct/resource/TypeSpecHeader.java
index b0c447ce1..835b16ae4 100644
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/struct/resource/TypeSpecHeader.java
+++ b/libapkparser/src/main/java/net/dongliu/apk/parser/struct/resource/TypeSpecHeader.java
@@ -1,12 +1,12 @@
+// SPDX-License-Identifier: BSD-2-Clause
+
 package net.dongliu.apk.parser.struct.resource;
 
 import net.dongliu.apk.parser.struct.ChunkHeader;
 import net.dongliu.apk.parser.struct.ChunkType;
 import net.dongliu.apk.parser.utils.Unsigned;
 
-/**
- * @author dongliu
- */
+// Copyright 2014 Liu Dong
 public class TypeSpecHeader extends ChunkHeader {
 
     // The type identifier this chunk is holding.  Type IDs start at 1 (corresponding to the value
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/struct/signingv2/ApkSigningBlock.java b/libapkparser/src/main/java/net/dongliu/apk/parser/struct/signingv2/ApkSigningBlock.java
index 5796f5bc0..53cffa53c 100644
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/struct/signingv2/ApkSigningBlock.java
+++ b/libapkparser/src/main/java/net/dongliu/apk/parser/struct/signingv2/ApkSigningBlock.java
@@ -1,3 +1,5 @@
+// SPDX-License-Identifier: BSD-2-Clause
+
 package net.dongliu.apk.parser.struct.signingv2;
 
 import java.util.List;
@@ -7,6 +9,7 @@ import java.util.List;
  *
  * @see <a href="https://source.android.com/security/apksigning/v2">apksigning v2 scheme</a>
  */
+// Copyright 2018 hsiafan
 public class ApkSigningBlock {
     public static final int SIGNING_V2_ID = 0x7109871a;
 
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/struct/signingv2/Digest.java b/libapkparser/src/main/java/net/dongliu/apk/parser/struct/signingv2/Digest.java
index 527626923..ba9e08f62 100644
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/struct/signingv2/Digest.java
+++ b/libapkparser/src/main/java/net/dongliu/apk/parser/struct/signingv2/Digest.java
@@ -1,5 +1,8 @@
+// SPDX-License-Identifier: BSD-2-Clause
+
 package net.dongliu.apk.parser.struct.signingv2;
 
+// Copyright 2018 hsiafan
 public class Digest {
     private int algorithmID;
     private byte[] value;
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/struct/signingv2/Signature.java b/libapkparser/src/main/java/net/dongliu/apk/parser/struct/signingv2/Signature.java
index 05ed0dbf0..876af28b8 100644
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/struct/signingv2/Signature.java
+++ b/libapkparser/src/main/java/net/dongliu/apk/parser/struct/signingv2/Signature.java
@@ -1,5 +1,8 @@
+// SPDX-License-Identifier: BSD-2-Clause
+
 package net.dongliu.apk.parser.struct.signingv2;
 
+// Copyright 2018 hsiafan
 public class Signature {
     private int algorithmID;
     private byte[] data;
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/struct/signingv2/SignerBlock.java b/libapkparser/src/main/java/net/dongliu/apk/parser/struct/signingv2/SignerBlock.java
index 532426ebb..05df712c7 100644
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/struct/signingv2/SignerBlock.java
+++ b/libapkparser/src/main/java/net/dongliu/apk/parser/struct/signingv2/SignerBlock.java
@@ -1,9 +1,12 @@
+// SPDX-License-Identifier: BSD-2-Clause
+
 package net.dongliu.apk.parser.struct.signingv2;
 
 import java.util.List;
 
 import javax.security.cert.X509Certificate;
 
+// Copyright 2018 hsiafan
 public class SignerBlock {
     private List<Digest> digests;
     private List<X509Certificate> certificates;
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/struct/xml/Attribute.java b/libapkparser/src/main/java/net/dongliu/apk/parser/struct/xml/Attribute.java
index 63a9a79d7..8746abc9a 100644
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/struct/xml/Attribute.java
+++ b/libapkparser/src/main/java/net/dongliu/apk/parser/struct/xml/Attribute.java
@@ -1,3 +1,5 @@
+// SPDX-License-Identifier: BSD-2-Clause
+
 package net.dongliu.apk.parser.struct.xml;
 
 import android.util.SparseArray;
@@ -11,9 +13,8 @@ import java.util.Map;
 
 /**
  * xml node attribute
- *
- * @author dongliu
  */
+// Copyright 2014 Liu Dong
 public class Attribute {
     private String namespace;
     private String name;
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/struct/xml/Attributes.java b/libapkparser/src/main/java/net/dongliu/apk/parser/struct/xml/Attributes.java
index 32e130f7f..6e03704db 100644
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/struct/xml/Attributes.java
+++ b/libapkparser/src/main/java/net/dongliu/apk/parser/struct/xml/Attributes.java
@@ -1,12 +1,13 @@
+// SPDX-License-Identifier: BSD-2-Clause
+
 package net.dongliu.apk.parser.struct.xml;
 
 import androidx.annotation.Nullable;
 
 /**
  * xml node attributes
- *
- * @author dongliu
  */
+// Copyright 2014 Liu Dong
 public class Attributes {
 
     private final Attribute[] attributes;
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/struct/xml/NullHeader.java b/libapkparser/src/main/java/net/dongliu/apk/parser/struct/xml/NullHeader.java
index 34715b999..87b7d4d77 100644
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/struct/xml/NullHeader.java
+++ b/libapkparser/src/main/java/net/dongliu/apk/parser/struct/xml/NullHeader.java
@@ -1,12 +1,13 @@
+// SPDX-License-Identifier: BSD-2-Clause
+
 package net.dongliu.apk.parser.struct.xml;
 
 import net.dongliu.apk.parser.struct.ChunkHeader;
 
 /**
  * Null header.
- *
- * @author dongliu
  */
+// Copyright 2014 Liu Dong
 public class NullHeader extends ChunkHeader {
     public NullHeader(int chunkType, int headerSize, long chunkSize) {
         super(chunkType, headerSize, chunkSize);
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/struct/xml/XmlCData.java b/libapkparser/src/main/java/net/dongliu/apk/parser/struct/xml/XmlCData.java
index d815d9f3d..ece46771a 100644
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/struct/xml/XmlCData.java
+++ b/libapkparser/src/main/java/net/dongliu/apk/parser/struct/xml/XmlCData.java
@@ -1,3 +1,5 @@
+// SPDX-License-Identifier: BSD-2-Clause
+
 package net.dongliu.apk.parser.struct.xml;
 
 import net.dongliu.apk.parser.struct.ResourceValue;
@@ -5,9 +7,7 @@ import net.dongliu.apk.parser.struct.resource.ResourceTable;
 
 import java.util.Locale;
 
-/**
- * @author dongliu
- */
+// Copyright 2014 Liu Dong
 public class XmlCData {
 
     public static final String CDATA_START = "<![CDATA[";
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/struct/xml/XmlHeader.java b/libapkparser/src/main/java/net/dongliu/apk/parser/struct/xml/XmlHeader.java
index 7604400e4..c3c82bd6c 100644
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/struct/xml/XmlHeader.java
+++ b/libapkparser/src/main/java/net/dongliu/apk/parser/struct/xml/XmlHeader.java
@@ -1,3 +1,5 @@
+// SPDX-License-Identifier: BSD-2-Clause
+
 package net.dongliu.apk.parser.struct.xml;
 
 import net.dongliu.apk.parser.struct.ChunkHeader;
@@ -5,9 +7,8 @@ import net.dongliu.apk.parser.struct.ChunkHeader;
 /**
  * Binary XML header. It is simply a struct ResChunk_header.
  * The header.type is always 0×0003 (XML).
- *
- * @author dongliu
  */
+// Copyright 2014 Liu Dong
 public class XmlHeader extends ChunkHeader {
     public XmlHeader(int chunkType, int headerSize, long chunkSize) {
         super(chunkType, headerSize, chunkSize);
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/struct/xml/XmlNamespaceEndTag.java b/libapkparser/src/main/java/net/dongliu/apk/parser/struct/xml/XmlNamespaceEndTag.java
index 13cbb712c..013485936 100644
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/struct/xml/XmlNamespaceEndTag.java
+++ b/libapkparser/src/main/java/net/dongliu/apk/parser/struct/xml/XmlNamespaceEndTag.java
@@ -1,8 +1,8 @@
+// SPDX-License-Identifier: BSD-2-Clause
+
 package net.dongliu.apk.parser.struct.xml;
 
-/**
- * @author dongliu
- */
+// Copyright 2014 Liu Dong
 public class XmlNamespaceEndTag {
     private String prefix;
     private String uri;
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/struct/xml/XmlNamespaceStartTag.java b/libapkparser/src/main/java/net/dongliu/apk/parser/struct/xml/XmlNamespaceStartTag.java
index 3f05334b2..271f49da1 100644
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/struct/xml/XmlNamespaceStartTag.java
+++ b/libapkparser/src/main/java/net/dongliu/apk/parser/struct/xml/XmlNamespaceStartTag.java
@@ -1,8 +1,8 @@
+// SPDX-License-Identifier: BSD-2-Clause
+
 package net.dongliu.apk.parser.struct.xml;
 
-/**
- * @author dongliu
- */
+// Copyright 2014 Liu Dong
 public class XmlNamespaceStartTag {
     private String prefix;
     private String uri;
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/struct/xml/XmlNodeEndTag.java b/libapkparser/src/main/java/net/dongliu/apk/parser/struct/xml/XmlNodeEndTag.java
index 4c2ad5c70..d68f46729 100644
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/struct/xml/XmlNodeEndTag.java
+++ b/libapkparser/src/main/java/net/dongliu/apk/parser/struct/xml/XmlNodeEndTag.java
@@ -1,8 +1,8 @@
+// SPDX-License-Identifier: BSD-2-Clause
+
 package net.dongliu.apk.parser.struct.xml;
 
-/**
- * @author dongliu
- */
+// Copyright 2014 Liu Dong
 public class XmlNodeEndTag {
     private String namespace;
     private String name;
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/struct/xml/XmlNodeHeader.java b/libapkparser/src/main/java/net/dongliu/apk/parser/struct/xml/XmlNodeHeader.java
index d10251cdb..3f59dc206 100644
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/struct/xml/XmlNodeHeader.java
+++ b/libapkparser/src/main/java/net/dongliu/apk/parser/struct/xml/XmlNodeHeader.java
@@ -1,10 +1,10 @@
+// SPDX-License-Identifier: BSD-2-Clause
+
 package net.dongliu.apk.parser.struct.xml;
 
 import net.dongliu.apk.parser.struct.ChunkHeader;
 
-/**
- * @author dongliu
- */
+// Copyright 2014 Liu Dong
 public class XmlNodeHeader extends ChunkHeader {
     // Line number in original source file at which this element appeared.
     private  int lineNum;
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/struct/xml/XmlNodeStartTag.java b/libapkparser/src/main/java/net/dongliu/apk/parser/struct/xml/XmlNodeStartTag.java
index 6ac42c7db..112342ca7 100644
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/struct/xml/XmlNodeStartTag.java
+++ b/libapkparser/src/main/java/net/dongliu/apk/parser/struct/xml/XmlNodeStartTag.java
@@ -1,8 +1,8 @@
+// SPDX-License-Identifier: BSD-2-Clause
+
 package net.dongliu.apk.parser.struct.xml;
 
-/**
- * @author dongliu
- */
+// Copyright 2014 Liu Dong
 public class XmlNodeStartTag {
     private String namespace;
     private String name;
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/struct/xml/XmlResourceMapHeader.java b/libapkparser/src/main/java/net/dongliu/apk/parser/struct/xml/XmlResourceMapHeader.java
index e53ddac81..3fa434bdc 100644
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/struct/xml/XmlResourceMapHeader.java
+++ b/libapkparser/src/main/java/net/dongliu/apk/parser/struct/xml/XmlResourceMapHeader.java
@@ -1,10 +1,10 @@
+// SPDX-License-Identifier: BSD-2-Clause
+
 package net.dongliu.apk.parser.struct.xml;
 
 import net.dongliu.apk.parser.struct.ChunkHeader;
 
-/**
- * @author dongliu
- */
+// Copyright 2014 Liu Dong
 public class XmlResourceMapHeader extends ChunkHeader {
     public XmlResourceMapHeader(int chunkType, int headerSize, long chunkSize) {
         super(chunkType, headerSize, chunkSize);
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/struct/zip/EOCD.java b/libapkparser/src/main/java/net/dongliu/apk/parser/struct/zip/EOCD.java
index 55245503d..965c021df 100644
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/struct/zip/EOCD.java
+++ b/libapkparser/src/main/java/net/dongliu/apk/parser/struct/zip/EOCD.java
@@ -1,8 +1,11 @@
+// SPDX-License-Identifier: BSD-2-Clause
+
 package net.dongliu.apk.parser.struct.zip;
 
 /**
  * End of central directory record
  */
+// Copyright 2017 hsiafan
 public class EOCD {
     public static final int SIGNATURE = 0x06054b50;
     //    private int signature;
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/utils/Buffers.java b/libapkparser/src/main/java/net/dongliu/apk/parser/utils/Buffers.java
index 4e28b802b..b4d7aec3a 100644
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/utils/Buffers.java
+++ b/libapkparser/src/main/java/net/dongliu/apk/parser/utils/Buffers.java
@@ -1,3 +1,5 @@
+// SPDX-License-Identifier: BSD-2-Clause
+
 package net.dongliu.apk.parser.utils;
 
 import java.nio.Buffer;
@@ -6,9 +8,8 @@ import java.nio.ByteOrder;
 
 /**
  * utils method for byte buffer
- *
- * @author Liu Dong dongliu@live.cn
  */
+// Copyright 2014 Liu Dong
 public class Buffers {
 
     /**
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/utils/Inputs.java b/libapkparser/src/main/java/net/dongliu/apk/parser/utils/Inputs.java
index e997c03aa..df4c5e2ca 100644
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/utils/Inputs.java
+++ b/libapkparser/src/main/java/net/dongliu/apk/parser/utils/Inputs.java
@@ -1,9 +1,12 @@
+// SPDX-License-Identifier: BSD-2-Clause
+
 package net.dongliu.apk.parser.utils;
 
 import java.io.ByteArrayOutputStream;
 import java.io.IOException;
 import java.io.InputStream;
 
+// Copyright 2017 Liu Dong
 public class Inputs {
 
     public static byte[] readAll(InputStream in) throws IOException {
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/utils/Locales.java b/libapkparser/src/main/java/net/dongliu/apk/parser/utils/Locales.java
index fac7e186f..8be64443e 100644
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/utils/Locales.java
+++ b/libapkparser/src/main/java/net/dongliu/apk/parser/utils/Locales.java
@@ -1,10 +1,10 @@
+// SPDX-License-Identifier: BSD-2-Clause
+
 package net.dongliu.apk.parser.utils;
 
 import java.util.Locale;
 
-/**
- * @author dongliu
- */
+// Copyright 2018 Liu Dong
 public class Locales {
 
     /**
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/utils/ParseUtils.java b/libapkparser/src/main/java/net/dongliu/apk/parser/utils/ParseUtils.java
index bdbcefe51..f49fc8f59 100644
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/utils/ParseUtils.java
+++ b/libapkparser/src/main/java/net/dongliu/apk/parser/utils/ParseUtils.java
@@ -1,3 +1,5 @@
+// SPDX-License-Identifier: BSD-2-Clause
+
 package net.dongliu.apk.parser.utils;
 
 import net.dongliu.apk.parser.exception.ParserException;
@@ -9,15 +11,14 @@ import net.dongliu.apk.parser.struct.StringPoolHeader;
 
 import java.nio.ByteBuffer;
 import java.nio.charset.Charset;
+import java.nio.charset.StandardCharsets;
 
 import androidx.annotation.Nullable;
 
-/**
- * @author dongliu
- */
+// Copyright 2018 Liu Dong
 public class ParseUtils {
 
-    public static Charset charsetUTF8 = Charset.forName("UTF-8");
+    public static Charset charsetUTF8 = StandardCharsets.UTF_8;
 
     /**
      * read string from input buffer. if get EOF before read enough data, throw IOException.
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/utils/ResourceFetcher.java b/libapkparser/src/main/java/net/dongliu/apk/parser/utils/ResourceFetcher.java
index f4775c7d8..8b7b0682b 100644
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/utils/ResourceFetcher.java
+++ b/libapkparser/src/main/java/net/dongliu/apk/parser/utils/ResourceFetcher.java
@@ -1,3 +1,4 @@
+// SPDX-License-Identifier: Apache 2.0 AND BSD-2-Clause
 package net.dongliu.apk.parser.utils;
 
 import android.util.Pair;
@@ -23,9 +24,8 @@ import java.util.regex.Pattern;
 
 /**
  * fetch dependency resource file from android source
- *
- * @author Liu Dong dongliu@live.cn
  */
+// Copyright 2014 Liu Dong
 public class ResourceFetcher {
 
     // from https://android.googlesource.com/platform/frameworks/base/+/master/core/res/res/values/public.xml
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/utils/ResourceLoader.java b/libapkparser/src/main/java/net/dongliu/apk/parser/utils/ResourceLoader.java
index 0ee8cfc2b..9a110459d 100644
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/utils/ResourceLoader.java
+++ b/libapkparser/src/main/java/net/dongliu/apk/parser/utils/ResourceLoader.java
@@ -1,31 +1,4 @@
-/*
- * Copyright (c) 2020, Muntashir Al-Islam
- * Copyright (c) 2015, Jared Rummler
- * Copyright (c) 2015, Liu Dong
- * All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions are met:
- *     * Redistributions of source code must retain the above copyright
- *       notice, this list of conditions and the following disclaimer.
- *     * Redistributions in binary form must reproduce the above copyright
- *       notice, this list of conditions and the following disclaimer in the
- *       documentation and/or other materials provided with the distribution.
- *     * Neither the name of the <organization> nor the
- *       names of its contributors may be used to endorse or promote products
- *       derived from this software without specific prior written permission.
- *
- * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
- * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
- * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- * DISCLAIMED. IN NO EVENT SHALL <COPYRIGHT HOLDER> BE LIABLE FOR ANY
- * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
- * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
- * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
- * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
- * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
+// SPDX-License-Identifier: BSD-2-Clause AND BSD-3-Clause
 
 package net.dongliu.apk.parser.utils;
 
@@ -33,6 +6,8 @@ import android.util.SparseArray;
 
 import androidx.annotation.NonNull;
 
+// Copyright 2015 Jared Rummler
+//           2014 Liu Dong
 public class ResourceLoader {
 
     @NonNull
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/utils/Strings.java b/libapkparser/src/main/java/net/dongliu/apk/parser/utils/Strings.java
index 8e3862332..9fa6913af 100644
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/utils/Strings.java
+++ b/libapkparser/src/main/java/net/dongliu/apk/parser/utils/Strings.java
@@ -1,8 +1,10 @@
-package net.dongliu.apk.parser.utils;
+// SPDX-License-Identifier: Apache-2.0 AND BSD-2-Clause
 
+package net.dongliu.apk.parser.utils;
 
 import java.util.Iterator;
 
+// Copyright 2017 hsiafan
 public class Strings {
 
     /**
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/utils/Unsigned.java b/libapkparser/src/main/java/net/dongliu/apk/parser/utils/Unsigned.java
index 6459c662f..cd7714804 100644
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/utils/Unsigned.java
+++ b/libapkparser/src/main/java/net/dongliu/apk/parser/utils/Unsigned.java
@@ -1,8 +1,11 @@
+// SPDX-License-Identifier: BSD-2-Clause
+
 package net.dongliu.apk.parser.utils;
 
 /**
  * Unsigned utils, for compatible with java6/java7.
  */
+// Copyright 2017 hsiafan
 public class Unsigned {
     public static long toLong(int value) {
         return value & 0xffffffffL;
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/utils/package-info.java b/libapkparser/src/main/java/net/dongliu/apk/parser/utils/package-info.java
deleted file mode 100644
index 00bba3a0b..000000000
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/utils/package-info.java
+++ /dev/null
@@ -1,4 +0,0 @@
-/**
- * Only for internal use!
- */
-package net.dongliu.apk.parser.utils;
\ No newline at end of file
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/utils/xml/AggregateTranslator.java b/libapkparser/src/main/java/net/dongliu/apk/parser/utils/xml/AggregateTranslator.java
index 4ac171aec..973dbcffe 100644
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/utils/xml/AggregateTranslator.java
+++ b/libapkparser/src/main/java/net/dongliu/apk/parser/utils/xml/AggregateTranslator.java
@@ -1,19 +1,5 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- * 
- *      http://www.apache.org/licenses/LICENSE-2.0
- * 
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
+// SPDX-License-Identifier: Apache-2.0
+
 package net.dongliu.apk.parser.utils.xml;
 
 import java.io.IOException;
@@ -22,8 +8,8 @@ import java.io.Writer;
 /**
  * Executes a sequence of translators one after the other. Execution ends whenever 
  * the first translator consumes codepoints from the input.
- *
  */
+// Copyright 2010 pbenedict
 class AggregateTranslator extends CharSequenceTranslator {
 
     private final CharSequenceTranslator[] translators;
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/utils/xml/CharSequenceTranslator.java b/libapkparser/src/main/java/net/dongliu/apk/parser/utils/xml/CharSequenceTranslator.java
index 97c53705e..5030c6faf 100644
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/utils/xml/CharSequenceTranslator.java
+++ b/libapkparser/src/main/java/net/dongliu/apk/parser/utils/xml/CharSequenceTranslator.java
@@ -1,19 +1,5 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- * 
- *      http://www.apache.org/licenses/LICENSE-2.0
- * 
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
+// SPDX-License-Identifier: Apache-2.0
+
 package net.dongliu.apk.parser.utils.xml;
 
 import java.io.IOException;
@@ -27,6 +13,7 @@ import java.util.Locale;
  * is completely contextual, the API does not present two separate signatures.
  *
  */
+// Copyright 2010 pbenedict
 abstract class CharSequenceTranslator {
 
     /**
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/utils/xml/CodePointTranslator.java b/libapkparser/src/main/java/net/dongliu/apk/parser/utils/xml/CodePointTranslator.java
index a5559103d..ec70bc680 100644
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/utils/xml/CodePointTranslator.java
+++ b/libapkparser/src/main/java/net/dongliu/apk/parser/utils/xml/CodePointTranslator.java
@@ -1,19 +1,5 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- * 
- *      http://www.apache.org/licenses/LICENSE-2.0
- * 
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
+// SPDX-License-Identifier: Apache-2.0
+
 package net.dongliu.apk.parser.utils.xml;
 
 import java.io.IOException;
@@ -23,6 +9,7 @@ import java.io.Writer;
  * Helper subclass to CharSequenceTranslator to allow for translations that 
  * will replace up to one character at a time.
  */
+// Copyright 2010 pbenedict
 abstract class CodePointTranslator extends CharSequenceTranslator {
 
     /**
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/utils/xml/EntityArrays.java b/libapkparser/src/main/java/net/dongliu/apk/parser/utils/xml/EntityArrays.java
index 4810f7012..05ea99f62 100644
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/utils/xml/EntityArrays.java
+++ b/libapkparser/src/main/java/net/dongliu/apk/parser/utils/xml/EntityArrays.java
@@ -1,19 +1,5 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
+// SPDX-License-Identifier: Apache-2.0
+
 package net.dongliu.apk.parser.utils.xml;
 
 /**
@@ -21,6 +7,7 @@ package net.dongliu.apk.parser.utils.xml;
  * the LookupTranslator.
  * All arrays are of length [*][2].
  */
+// Copyright 2010 pbenedict
 public class EntityArrays {
     /**
      * Mapping to escape the basic XML and HTML character entities.
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/utils/xml/LookupTranslator.java b/libapkparser/src/main/java/net/dongliu/apk/parser/utils/xml/LookupTranslator.java
index e9a4625f1..9af41b875 100644
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/utils/xml/LookupTranslator.java
+++ b/libapkparser/src/main/java/net/dongliu/apk/parser/utils/xml/LookupTranslator.java
@@ -1,19 +1,5 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- * 
- *      http://www.apache.org/licenses/LICENSE-2.0
- * 
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
+// SPDX-License-Identifier: Apache-2.0
+
 package net.dongliu.apk.parser.utils.xml;
 
 import java.io.IOException;
@@ -23,6 +9,7 @@ import java.util.HashMap;
 /**
  * Translates a value using a lookup table.
  */
+// Copyright 2010 pbenedict
 class LookupTranslator extends CharSequenceTranslator {
 
     private final HashMap<String, CharSequence> lookupMap;
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/utils/xml/NumericEntityEscaper.java b/libapkparser/src/main/java/net/dongliu/apk/parser/utils/xml/NumericEntityEscaper.java
index b32ea41ba..98b78c073 100644
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/utils/xml/NumericEntityEscaper.java
+++ b/libapkparser/src/main/java/net/dongliu/apk/parser/utils/xml/NumericEntityEscaper.java
@@ -1,19 +1,5 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
+// SPDX-License-Identifier: Apache-2.0
+
 package net.dongliu.apk.parser.utils.xml;
 
 import java.io.IOException;
@@ -22,6 +8,7 @@ import java.io.Writer;
 /**
  * Translates codepoints to their XML numeric entity escaped value.
  */
+// Copyright 2010 pbenedict
 class NumericEntityEscaper extends CodePointTranslator {
 
     private final int below;
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/utils/xml/UnicodeUnpairedSurrogateRemover.java b/libapkparser/src/main/java/net/dongliu/apk/parser/utils/xml/UnicodeUnpairedSurrogateRemover.java
index d79f3eb76..b9c2b5087 100644
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/utils/xml/UnicodeUnpairedSurrogateRemover.java
+++ b/libapkparser/src/main/java/net/dongliu/apk/parser/utils/xml/UnicodeUnpairedSurrogateRemover.java
@@ -1,22 +1,6 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements.  See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You under the Apache License, Version 2.0
- * (the "License"); you may not use this file except in compliance with
- * the License.  You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package net.dongliu.apk.parser.utils.xml;
+// SPDX-License-Identifier: Apache-2.0
 
-import net.dongliu.apk.parser.utils.xml.CodePointTranslator;
+package net.dongliu.apk.parser.utils.xml;
 
 import java.io.IOException;
 import java.io.Writer;
@@ -24,6 +8,7 @@ import java.io.Writer;
 /**
  * Helper subclass to CharSequenceTranslator to remove unpaired surrogates.
  */
+// Copyright 2014 britter
 class UnicodeUnpairedSurrogateRemover extends CodePointTranslator {
     /**
      * Implementation of translate that throws out unpaired surrogates. 
diff --git a/libapkparser/src/main/java/net/dongliu/apk/parser/utils/xml/XmlEscaper.java b/libapkparser/src/main/java/net/dongliu/apk/parser/utils/xml/XmlEscaper.java
index c24fe81e0..ee4b3750d 100644
--- a/libapkparser/src/main/java/net/dongliu/apk/parser/utils/xml/XmlEscaper.java
+++ b/libapkparser/src/main/java/net/dongliu/apk/parser/utils/xml/XmlEscaper.java
@@ -1,12 +1,11 @@
-package net.dongliu.apk.parser.utils.xml;
+// SPDX-License-Identifier: Apache-2.0 AND BSD-2-Clause
 
-import net.dongliu.apk.parser.utils.*;
+package net.dongliu.apk.parser.utils.xml;
 
 /**
  * Utils method to escape xml string, copied from apache commons lang3
- *
- * @author Liu Dong {@literal <dongliu@live.cn>}
  */
+// Copyright 2015 Liu Dong
 public class XmlEscaper {
 
     /**
diff --git a/libopenpgp/build.gradle b/libopenpgp/build.gradle
index 54a539b18..de94dc822 100644
--- a/libopenpgp/build.gradle
+++ b/libopenpgp/build.gradle
@@ -1,18 +1,3 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 apply from: "$gradle.ext.appManagerRoot/common.gradle"
diff --git a/libopenpgp/src/main/AndroidManifest.xml b/libopenpgp/src/main/AndroidManifest.xml
index 7e44581ee..4ec26cae5 100644
--- a/libopenpgp/src/main/AndroidManifest.xml
+++ b/libopenpgp/src/main/AndroidManifest.xml
@@ -1,18 +1,2 @@
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: Apache-2.0 AND GPL-3.0-or-later -->
 <manifest package="org.openintents.openpgp" />
\ No newline at end of file
diff --git a/libopenpgp/src/main/aidl/org/openintents/openpgp/IOpenPgpService.aidl b/libopenpgp/src/main/aidl/org/openintents/openpgp/IOpenPgpService.aidl
index 3689d174b..60396b495 100644
--- a/libopenpgp/src/main/aidl/org/openintents/openpgp/IOpenPgpService.aidl
+++ b/libopenpgp/src/main/aidl/org/openintents/openpgp/IOpenPgpService.aidl
@@ -1,21 +1,8 @@
-/*
- * Copyright (C) 2014-2015 Dominik Schürmann <dominik@dominikschuermann.de>
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
+// SPDX-License-Identifier: Apache-2.0
 
 package org.openintents.openpgp;
 
+// Copyright 2014-2015 Dominik Schürmann
 interface IOpenPgpService {
 
     /**
diff --git a/libopenpgp/src/main/aidl/org/openintents/openpgp/IOpenPgpService2.aidl b/libopenpgp/src/main/aidl/org/openintents/openpgp/IOpenPgpService2.aidl
index 8aa4dd2e1..c858cbaa6 100644
--- a/libopenpgp/src/main/aidl/org/openintents/openpgp/IOpenPgpService2.aidl
+++ b/libopenpgp/src/main/aidl/org/openintents/openpgp/IOpenPgpService2.aidl
@@ -1,21 +1,8 @@
-/*
- * Copyright (C) 2015 Dominik Schürmann <dominik@dominikschuermann.de>
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
- 
+// SPDX-License-Identifier: Apache-2.0
+
 package org.openintents.openpgp;
 
+// Copyright 2015 Dominik Schürmann
 interface IOpenPgpService2 {
 
     /**
diff --git a/libopenpgp/src/main/java/org/openintents/openpgp/AutocryptPeerUpdate.java b/libopenpgp/src/main/java/org/openintents/openpgp/AutocryptPeerUpdate.java
index f7357d1c0..db2cd1224 100644
--- a/libopenpgp/src/main/java/org/openintents/openpgp/AutocryptPeerUpdate.java
+++ b/libopenpgp/src/main/java/org/openintents/openpgp/AutocryptPeerUpdate.java
@@ -1,18 +1,4 @@
-/*
- * Copyright (C) 2014-2015 Dominik Schürmann <dominik@dominikschuermann.de>
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
+// SPDX-License-Identifier: Apache-2.0
 
 package org.openintents.openpgp;
 
@@ -23,6 +9,7 @@ import android.os.Parcel;
 import android.os.Parcelable;
 
 
+// Copyright 2014-2015 Dominik Schürmann
 @SuppressWarnings("unused")
 public class AutocryptPeerUpdate implements Parcelable {
     /**
diff --git a/libopenpgp/src/main/java/org/openintents/openpgp/OpenPgpDecryptionResult.java b/libopenpgp/src/main/java/org/openintents/openpgp/OpenPgpDecryptionResult.java
index de4f12a4c..5b00529e0 100644
--- a/libopenpgp/src/main/java/org/openintents/openpgp/OpenPgpDecryptionResult.java
+++ b/libopenpgp/src/main/java/org/openintents/openpgp/OpenPgpDecryptionResult.java
@@ -1,18 +1,4 @@
-/*
- * Copyright (C) 2015 Dominik Schürmann <dominik@dominikschuermann.de>
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
+// SPDX-License-Identifier: Apache-2.0
 
 package org.openintents.openpgp;
 
@@ -21,6 +7,7 @@ import java.util.Arrays;
 import android.os.Parcel;
 import android.os.Parcelable;
 
+// Copyright 2015 Dominik Schürmann
 public class OpenPgpDecryptionResult implements Parcelable {
     /**
      * Since there might be a case where new versions of the client using the library getting
diff --git a/libopenpgp/src/main/java/org/openintents/openpgp/OpenPgpError.java b/libopenpgp/src/main/java/org/openintents/openpgp/OpenPgpError.java
index a149be45f..0cf1c9455 100644
--- a/libopenpgp/src/main/java/org/openintents/openpgp/OpenPgpError.java
+++ b/libopenpgp/src/main/java/org/openintents/openpgp/OpenPgpError.java
@@ -1,24 +1,11 @@
-/*
- * Copyright (C) 2014-2015 Dominik Schürmann <dominik@dominikschuermann.de>
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
+// SPDX-License-Identifier: Apache-2.0
 
 package org.openintents.openpgp;
 
 import android.os.Parcel;
 import android.os.Parcelable;
 
+// Copyright 2014-2015 Dominik Schürmann
 public class OpenPgpError implements Parcelable {
     /**
      * Since there might be a case where new versions of the client using the library getting
diff --git a/libopenpgp/src/main/java/org/openintents/openpgp/OpenPgpMetadata.java b/libopenpgp/src/main/java/org/openintents/openpgp/OpenPgpMetadata.java
index 29c4113d3..8f2a21816 100644
--- a/libopenpgp/src/main/java/org/openintents/openpgp/OpenPgpMetadata.java
+++ b/libopenpgp/src/main/java/org/openintents/openpgp/OpenPgpMetadata.java
@@ -1,24 +1,11 @@
-/*
- * Copyright (C) 2014-2015 Dominik Schürmann <dominik@dominikschuermann.de>
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
+// SPDX-License-Identifier: Apache-2.0
 
 package org.openintents.openpgp;
 
 import android.os.Parcel;
 import android.os.Parcelable;
 
+// Copyright 2014-2015 Dominik Schürmann
 public class OpenPgpMetadata implements Parcelable {
     /**
      * Since there might be a case where new versions of the client using the library getting
diff --git a/libopenpgp/src/main/java/org/openintents/openpgp/OpenPgpSignatureResult.java b/libopenpgp/src/main/java/org/openintents/openpgp/OpenPgpSignatureResult.java
index cdf475ba6..33a1183a2 100644
--- a/libopenpgp/src/main/java/org/openintents/openpgp/OpenPgpSignatureResult.java
+++ b/libopenpgp/src/main/java/org/openintents/openpgp/OpenPgpSignatureResult.java
@@ -1,22 +1,7 @@
-/*
- * Copyright (C) 2014-2015 Dominik Schürmann <dominik@dominikschuermann.de>
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
+// SPDX-License-Identifier: Apache-2.0
 
 package org.openintents.openpgp;
 
-
 import java.util.Collections;
 import java.util.Date;
 import java.util.List;
@@ -26,6 +11,7 @@ import android.os.Parcelable;
 
 import org.openintents.openpgp.util.OpenPgpUtils;
 
+// Copyright 2014-2015 Dominik Schürmann
 @SuppressWarnings("unused")
 public class OpenPgpSignatureResult implements Parcelable {
     /**
diff --git a/libopenpgp/src/main/java/org/openintents/openpgp/util/OpenPgpApi.java b/libopenpgp/src/main/java/org/openintents/openpgp/util/OpenPgpApi.java
index 797cba5a0..3c4b2d62c 100644
--- a/libopenpgp/src/main/java/org/openintents/openpgp/util/OpenPgpApi.java
+++ b/libopenpgp/src/main/java/org/openintents/openpgp/util/OpenPgpApi.java
@@ -1,22 +1,7 @@
-/*
- * Copyright (C) 2014-2015 Dominik Schürmann <dominik@dominikschuermann.de>
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
+// SPDX-License-Identifier: Apache-2.0 AND GPL-3.0-or-later
 
 package org.openintents.openpgp.util;
 
-
 import android.content.Context;
 import android.content.Intent;
 import android.os.Handler;
@@ -35,6 +20,7 @@ import java.io.OutputStream;
 import java.util.concurrent.Executor;
 import java.util.concurrent.atomic.AtomicInteger;
 
+// Copyright 2014-2015 Dominik Schürmann
 @SuppressWarnings("unused")
 public class OpenPgpApi {
 
diff --git a/libopenpgp/src/main/java/org/openintents/openpgp/util/OpenPgpServiceConnection.java b/libopenpgp/src/main/java/org/openintents/openpgp/util/OpenPgpServiceConnection.java
index 23128f4a9..07951b343 100644
--- a/libopenpgp/src/main/java/org/openintents/openpgp/util/OpenPgpServiceConnection.java
+++ b/libopenpgp/src/main/java/org/openintents/openpgp/util/OpenPgpServiceConnection.java
@@ -1,18 +1,4 @@
-/*
- * Copyright (C) 2014-2015 Dominik Schürmann <dominik@dominikschuermann.de>
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
+// SPDX-License-Identifier: Apache-2.0
 
 package org.openintents.openpgp.util;
 
@@ -24,6 +10,7 @@ import android.os.IBinder;
 
 import org.openintents.openpgp.IOpenPgpService2;
 
+// Copyright 2014-2015 Dominik Schürmann
 public class OpenPgpServiceConnection {
 
     // callback interface
diff --git a/libopenpgp/src/main/java/org/openintents/openpgp/util/OpenPgpUtils.java b/libopenpgp/src/main/java/org/openintents/openpgp/util/OpenPgpUtils.java
index df2c540f8..d90dd4813 100644
--- a/libopenpgp/src/main/java/org/openintents/openpgp/util/OpenPgpUtils.java
+++ b/libopenpgp/src/main/java/org/openintents/openpgp/util/OpenPgpUtils.java
@@ -1,20 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- * Copyright (C) 2014-2015 Dominik Schürmann <dominik@dominikschuermann.de>
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: Apache-2.0 AND GPL-3.0-or-later
 
 package org.openintents.openpgp.util;
 
@@ -35,6 +19,7 @@ import java.util.Locale;
 import java.util.regex.Matcher;
 import java.util.regex.Pattern;
 
+// Copyright 2014-2015 Dominik Schürmann
 public class OpenPgpUtils {
 
     public static final Pattern PGP_MESSAGE = Pattern.compile(
diff --git a/libopenpgp/src/main/java/org/openintents/openpgp/util/ParcelFileDescriptorUtil.java b/libopenpgp/src/main/java/org/openintents/openpgp/util/ParcelFileDescriptorUtil.java
index 931ed845e..d0273f5e4 100644
--- a/libopenpgp/src/main/java/org/openintents/openpgp/util/ParcelFileDescriptorUtil.java
+++ b/libopenpgp/src/main/java/org/openintents/openpgp/util/ParcelFileDescriptorUtil.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2014-2015 Dominik Schürmann <dominik@dominikschuermann.de>
- *               2013 Florian Schmaus <flo@geekplace.eu>
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
+// SPDX-License-Identifier: Apache-2.0
 
 package org.openintents.openpgp.util;
 
@@ -24,6 +9,7 @@ import java.io.IOException;
 import java.io.InputStream;
 import java.io.OutputStream;
 
+// Copyright 2013 Florian Schmaus
 public class ParcelFileDescriptorUtil {
 
     public static ParcelFileDescriptor pipeFrom(InputStream inputStream)
diff --git a/libserver/build.gradle b/libserver/build.gradle
index 137842306..7bba08103 100644
--- a/libserver/build.gradle
+++ b/libserver/build.gradle
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 apply from: "$gradle.ext.appManagerRoot/common.gradle"
 
diff --git a/libserver/src/main/AndroidManifest.xml b/libserver/src/main/AndroidManifest.xml
index 5b7b0a2e4..2966c0dcc 100644
--- a/libserver/src/main/AndroidManifest.xml
+++ b/libserver/src/main/AndroidManifest.xml
@@ -1,19 +1,2 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <manifest package="io.github.muntashirakon.AppManager.server.common" />
\ No newline at end of file
diff --git a/libserver/src/main/aidl/io/github/muntashirakon/AppManager/server/common/IRootIPC.aidl b/libserver/src/main/aidl/io/github/muntashirakon/AppManager/server/common/IRootIPC.aidl
index 883332191..1ab078627 100644
--- a/libserver/src/main/aidl/io/github/muntashirakon/AppManager/server/common/IRootIPC.aidl
+++ b/libserver/src/main/aidl/io/github/muntashirakon/AppManager/server/common/IRootIPC.aidl
@@ -1,22 +1,8 @@
-/*
- * Copyright 2020 John "topjohnwu" Wu
- * Copyright 2020 Muntashir Al-Islam
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
+// SPDX-License-Identifier: Apache-2.0 AND GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.server.common;
 
+// Copyright 2020 John "topjohnwu" Wu
 interface IRootIPC {
     oneway void broadcast();
     IBinder bind(in Intent intent);
diff --git a/libserver/src/main/java/io/github/muntashirakon/AppManager/server/common/Actions.java b/libserver/src/main/java/io/github/muntashirakon/AppManager/server/common/Actions.java
index a29161699..94ee3f19f 100644
--- a/libserver/src/main/java/io/github/muntashirakon/AppManager/server/common/Actions.java
+++ b/libserver/src/main/java/io/github/muntashirakon/AppManager/server/common/Actions.java
@@ -1,22 +1,8 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: MIT AND GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.server.common;
 
+// Copyright 2017 Zheng Li
 public final class Actions {
     public static final String PACKAGE_NAME = "io.github.muntashirakon.AppManager";
     public static final String ACTION_SERVER_STARTED = PACKAGE_NAME + ".action.SERVER_STARTED";
diff --git a/libserver/src/main/java/io/github/muntashirakon/AppManager/server/common/BaseCaller.java b/libserver/src/main/java/io/github/muntashirakon/AppManager/server/common/BaseCaller.java
index a16d01fa5..6d4849422 100644
--- a/libserver/src/main/java/io/github/muntashirakon/AppManager/server/common/BaseCaller.java
+++ b/libserver/src/main/java/io/github/muntashirakon/AppManager/server/common/BaseCaller.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: MIT AND GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.server.common;
 
@@ -22,6 +7,7 @@ import android.os.Parcelable;
 
 import androidx.annotation.NonNull;
 
+// Copyright 2017 Zheng Li
 public class BaseCaller implements Parcelable {
 
     public static final int TYPE_CLOSE = -10;
diff --git a/libserver/src/main/java/io/github/muntashirakon/AppManager/server/common/Caller.java b/libserver/src/main/java/io/github/muntashirakon/AppManager/server/common/Caller.java
index b8917dcd9..5bf6786b3 100644
--- a/libserver/src/main/java/io/github/muntashirakon/AppManager/server/common/Caller.java
+++ b/libserver/src/main/java/io/github/muntashirakon/AppManager/server/common/Caller.java
@@ -1,24 +1,10 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: MIT AND GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.server.common;
 
 import android.os.Parcelable;
 
+// Copyright 2017 Zheng Li
 @SuppressWarnings("rawtypes")
 public abstract class Caller implements Parcelable {
     protected Class[] cParamsType;
diff --git a/libserver/src/main/java/io/github/muntashirakon/AppManager/server/common/CallerResult.java b/libserver/src/main/java/io/github/muntashirakon/AppManager/server/common/CallerResult.java
index f18274326..c79663c36 100644
--- a/libserver/src/main/java/io/github/muntashirakon/AppManager/server/common/CallerResult.java
+++ b/libserver/src/main/java/io/github/muntashirakon/AppManager/server/common/CallerResult.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: MIT AND GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.server.common;
 
@@ -22,6 +7,7 @@ import android.os.Parcelable;
 
 import androidx.annotation.NonNull;
 
+// Copyright 2017 Zheng Li
 public class CallerResult implements Parcelable {
     private byte[] reply;
     private Throwable throwable;
diff --git a/libserver/src/main/java/io/github/muntashirakon/AppManager/server/common/ClassUtils.java b/libserver/src/main/java/io/github/muntashirakon/AppManager/server/common/ClassUtils.java
index 4c6c52893..2c6d947eb 100644
--- a/libserver/src/main/java/io/github/muntashirakon/AppManager/server/common/ClassUtils.java
+++ b/libserver/src/main/java/io/github/muntashirakon/AppManager/server/common/ClassUtils.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: MIT AND GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.server.common;
 
@@ -33,6 +18,7 @@ import java.util.Map;
 
 import androidx.annotation.Nullable;
 
+// Copyright 2017 Zheng Li
 @SuppressWarnings("rawtypes")
 public class ClassUtils {
     private static final Map<String, Class> sDefaultClassMap = new HashMap<>();
diff --git a/libserver/src/main/java/io/github/muntashirakon/AppManager/server/common/ConfigParam.java b/libserver/src/main/java/io/github/muntashirakon/AppManager/server/common/ConfigParam.java
index 21fe623d7..e66a2c65e 100644
--- a/libserver/src/main/java/io/github/muntashirakon/AppManager/server/common/ConfigParam.java
+++ b/libserver/src/main/java/io/github/muntashirakon/AppManager/server/common/ConfigParam.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.server.common;
 
diff --git a/libserver/src/main/java/io/github/muntashirakon/AppManager/server/common/Constants.java b/libserver/src/main/java/io/github/muntashirakon/AppManager/server/common/Constants.java
index 52b74ceaa..51b3b0523 100644
--- a/libserver/src/main/java/io/github/muntashirakon/AppManager/server/common/Constants.java
+++ b/libserver/src/main/java/io/github/muntashirakon/AppManager/server/common/Constants.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.server.common;
 
diff --git a/libserver/src/main/java/io/github/muntashirakon/AppManager/server/common/DataTransmission.java b/libserver/src/main/java/io/github/muntashirakon/AppManager/server/common/DataTransmission.java
index bd80e6c6f..f003fa2dd 100644
--- a/libserver/src/main/java/io/github/muntashirakon/AppManager/server/common/DataTransmission.java
+++ b/libserver/src/main/java/io/github/muntashirakon/AppManager/server/common/DataTransmission.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: MIT AND GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.server.common;
 
@@ -32,6 +17,7 @@ import androidx.annotation.Nullable;
 /**
  * <code>DataTransmission</code> class handles the data sent and received by server or client.
  */
+// Copyright 2017 Zheng Li
 public final class DataTransmission {
     /**
      * Protocol version. Specification: <code>protocol-version,token</code>
diff --git a/libserver/src/main/java/io/github/muntashirakon/AppManager/server/common/FLog.java b/libserver/src/main/java/io/github/muntashirakon/AppManager/server/common/FLog.java
index 12543b0a9..191d449ea 100644
--- a/libserver/src/main/java/io/github/muntashirakon/AppManager/server/common/FLog.java
+++ b/libserver/src/main/java/io/github/muntashirakon/AppManager/server/common/FLog.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: MIT AND GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.server.common;
 
@@ -26,6 +11,7 @@ import java.io.FileOutputStream;
 import java.util.Date;
 import java.util.concurrent.atomic.AtomicInteger;
 
+// Copyright 2017 Zheng Li
 public class FLog {
 
     public static boolean writeLog = false;
diff --git a/libserver/src/main/java/io/github/muntashirakon/AppManager/server/common/ParamsFixer.java b/libserver/src/main/java/io/github/muntashirakon/AppManager/server/common/ParamsFixer.java
index 292fbda23..03d208105 100644
--- a/libserver/src/main/java/io/github/muntashirakon/AppManager/server/common/ParamsFixer.java
+++ b/libserver/src/main/java/io/github/muntashirakon/AppManager/server/common/ParamsFixer.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: MIT AND GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.server.common;
 
@@ -24,6 +9,7 @@ import java.io.IOException;
 
 import androidx.annotation.NonNull;
 
+// Copyright 2017 Zheng Li
 @SuppressWarnings("rawtypes")
 public class ParamsFixer {
     @NonNull
diff --git a/libserver/src/main/java/io/github/muntashirakon/AppManager/server/common/ParcelableUtil.java b/libserver/src/main/java/io/github/muntashirakon/AppManager/server/common/ParcelableUtil.java
index c69e59dd5..26461d53e 100644
--- a/libserver/src/main/java/io/github/muntashirakon/AppManager/server/common/ParcelableUtil.java
+++ b/libserver/src/main/java/io/github/muntashirakon/AppManager/server/common/ParcelableUtil.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: MIT AND GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.server.common;
 
@@ -22,6 +7,7 @@ import android.os.Parcelable;
 
 import androidx.annotation.NonNull;
 
+// Copyright 2017 Zheng Li
 public class ParcelableUtil {
 
     public static byte[] marshall(@NonNull Parcelable parcelable) {
diff --git a/libserver/src/main/java/io/github/muntashirakon/AppManager/server/common/ServerRunInfo.java b/libserver/src/main/java/io/github/muntashirakon/AppManager/server/common/ServerRunInfo.java
index 5fe7da3a4..146b619a6 100644
--- a/libserver/src/main/java/io/github/muntashirakon/AppManager/server/common/ServerRunInfo.java
+++ b/libserver/src/main/java/io/github/muntashirakon/AppManager/server/common/ServerRunInfo.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: MIT AND GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.server.common;
 
@@ -21,6 +6,7 @@ import android.os.Parcel;
 
 import androidx.annotation.NonNull;
 
+// Copyright 2017 Zheng Li
 public class ServerRunInfo implements android.os.Parcelable {
     public String protocolVersion = DataTransmission.PROTOCOL_VERSION;
 
diff --git a/libserver/src/main/java/io/github/muntashirakon/AppManager/server/common/ServerUtils.java b/libserver/src/main/java/io/github/muntashirakon/AppManager/server/common/ServerUtils.java
index b355d1f4b..4c53071a7 100644
--- a/libserver/src/main/java/io/github/muntashirakon/AppManager/server/common/ServerUtils.java
+++ b/libserver/src/main/java/io/github/muntashirakon/AppManager/server/common/ServerUtils.java
@@ -1,3 +1,4 @@
+// SPDX-License-Identifier: Apache-2.0 AND GPL-3.0-or-later
 package io.github.muntashirakon.AppManager.server.common;
 
 import android.content.ComponentName;
@@ -6,6 +7,7 @@ import android.os.Looper;
 
 import java.lang.reflect.Method;
 
+// Copyright 2020 John "topjohnwu" Wu
 // Must be accessed via reflection
 public final class ServerUtils {
     public static final String CMDLINE_STOP_SERVER = "stopServer";
diff --git a/libserver/src/main/java/io/github/muntashirakon/AppManager/server/common/Shell.java b/libserver/src/main/java/io/github/muntashirakon/AppManager/server/common/Shell.java
index 225d76cf3..cedeb2fb1 100644
--- a/libserver/src/main/java/io/github/muntashirakon/AppManager/server/common/Shell.java
+++ b/libserver/src/main/java/io/github/muntashirakon/AppManager/server/common/Shell.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: MIT AND GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.server.common;
 
@@ -29,6 +14,7 @@ import java.util.concurrent.atomic.AtomicInteger;
 
 import androidx.annotation.NonNull;
 
+// Copyright 2017 Zheng Li
 public final class Shell {
     private static final String TOKEN = "ZL@LOVE^TYS"; //U+1F430 U+2764 U+1F431
 
diff --git a/libserver/src/main/java/io/github/muntashirakon/AppManager/server/common/ShellCaller.java b/libserver/src/main/java/io/github/muntashirakon/AppManager/server/common/ShellCaller.java
index d08c99ed7..50c9d487c 100644
--- a/libserver/src/main/java/io/github/muntashirakon/AppManager/server/common/ShellCaller.java
+++ b/libserver/src/main/java/io/github/muntashirakon/AppManager/server/common/ShellCaller.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.server.common;
 
diff --git a/server/build.gradle b/server/build.gradle
index b5d227434..0e0994446 100644
--- a/server/build.gradle
+++ b/server/build.gradle
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: GPL-3.0-or-later
 
 apply from: "$gradle.ext.appManagerRoot/common.gradle"
 
diff --git a/server/src/main/AndroidManifest.xml b/server/src/main/AndroidManifest.xml
index d871fd2cf..6ca20004a 100644
--- a/server/src/main/AndroidManifest.xml
+++ b/server/src/main/AndroidManifest.xml
@@ -1,18 +1,2 @@
-<!--
-  ~ Copyright (C) 2020 Muntashir Al-Islam
-  ~
-  ~ This program is free software: you can redistribute it and/or modify
-  ~ it under the terms of the GNU General Public License as published by
-  ~ the Free Software Foundation, either version 3 of the License, or
-  ~ (at your option) any later version.
-  ~
-  ~ This program is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-  ~ GNU General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU General Public License
-  ~ along with this program.  If not, see <https://www.gnu.org/licenses/>.
-  -->
-
+<!-- SPDX-License-Identifier: GPL-3.0-or-later -->
 <manifest package="io.github.muntashirakon.AppManager.server" />
diff --git a/server/src/main/java/io/github/muntashirakon/AppManager/server/BroadcastSender.java b/server/src/main/java/io/github/muntashirakon/AppManager/server/BroadcastSender.java
index b7bd09e4b..f31e72161 100644
--- a/server/src/main/java/io/github/muntashirakon/AppManager/server/BroadcastSender.java
+++ b/server/src/main/java/io/github/muntashirakon/AppManager/server/BroadcastSender.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: MIT AND GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.server;
 
@@ -23,6 +8,7 @@ import android.content.Intent;
 
 import io.github.muntashirakon.AppManager.server.common.FLog;
 
+// Copyright 2017 Zheng Li
 class BroadcastSender {
     static void sendBroadcast(Intent intent) {
         try {
diff --git a/server/src/main/java/io/github/muntashirakon/AppManager/server/IPCMain.java b/server/src/main/java/io/github/muntashirakon/AppManager/server/IPCMain.java
index 2c1ccb56d..ed5c5a905 100644
--- a/server/src/main/java/io/github/muntashirakon/AppManager/server/IPCMain.java
+++ b/server/src/main/java/io/github/muntashirakon/AppManager/server/IPCMain.java
@@ -1,19 +1,4 @@
-/*
- * Copyright 2020 John "topjohnwu" Wu
- * Copyright 2020 Muntashir Al-Islam
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *     http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
+// SPDX-License-Identifier: Apache-2.0 AND GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.server;
 
@@ -46,10 +31,11 @@ import static io.github.muntashirakon.AppManager.server.common.ServerUtils.getSy
  * Expected command-line args:
  * args[0]: client service component name
  * args[1]: {@link ServerUtils#CMDLINE_STOP_SERVER} or class name of IPCServer
- *<p>
+ * <p>
  * <b>Note:</b> This class is hardcoded in {@code IPCClient#IPCMAIN_CLASSNAME}. Don't change the class name or package
  * path without changing them there.
  */
+// Copyright 2020 John "topjohnwu" Wu
 public class IPCMain {
     private static void stopRemoteService(ComponentName name) throws Exception {
         @SuppressLint("PrivateApi")
diff --git a/server/src/main/java/io/github/muntashirakon/AppManager/server/LifecycleAgent.java b/server/src/main/java/io/github/muntashirakon/AppManager/server/LifecycleAgent.java
index 14cb2aee2..fd0ec0ec2 100644
--- a/server/src/main/java/io/github/muntashirakon/AppManager/server/LifecycleAgent.java
+++ b/server/src/main/java/io/github/muntashirakon/AppManager/server/LifecycleAgent.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: MIT AND GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.server;
 
@@ -28,6 +13,7 @@ import io.github.muntashirakon.AppManager.server.common.ServerRunInfo;
 import static io.github.muntashirakon.AppManager.server.common.ConfigParam.PARAM_TOKEN;
 import static io.github.muntashirakon.AppManager.server.common.ConfigParam.PARAM_TYPE;
 
+// Copyright 2017 Zheng Li
 class LifecycleAgent {
     static volatile Map<String, String> sConfigParams;
     static ServerRunInfo serverRunInfo = new ServerRunInfo();
diff --git a/server/src/main/java/io/github/muntashirakon/AppManager/server/Server.java b/server/src/main/java/io/github/muntashirakon/AppManager/server/Server.java
index b45970386..f934e9b6a 100644
--- a/server/src/main/java/io/github/muntashirakon/AppManager/server/Server.java
+++ b/server/src/main/java/io/github/muntashirakon/AppManager/server/Server.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: MIT AND GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.server;
 
@@ -30,6 +15,7 @@ import androidx.annotation.NonNull;
 import io.github.muntashirakon.AppManager.server.common.DataTransmission;
 import io.github.muntashirakon.AppManager.server.common.FLog;
 
+// Copyright 2017 Zheng Li
 class Server {
     private boolean running = true;
     @NonNull
diff --git a/server/src/main/java/io/github/muntashirakon/AppManager/server/ServerHandler.java b/server/src/main/java/io/github/muntashirakon/AppManager/server/ServerHandler.java
index 2603d15d8..56f536115 100644
--- a/server/src/main/java/io/github/muntashirakon/AppManager/server/ServerHandler.java
+++ b/server/src/main/java/io/github/muntashirakon/AppManager/server/ServerHandler.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: MIT AND GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.server;
 
@@ -40,6 +25,7 @@ import static io.github.muntashirakon.AppManager.server.common.ConfigParam.PARAM
 import static io.github.muntashirakon.AppManager.server.common.ConfigParam.PARAM_RUN_IN_BACKGROUND;
 import static io.github.muntashirakon.AppManager.server.common.ConfigParam.PARAM_TOKEN;
 
+// Copyright 2017 Zheng Li
 class ServerHandler implements DataTransmission.OnReceiveCallback, AutoCloseable {
     private static final int MSG_TIMEOUT = 1;
     private static final int DEFAULT_TIMEOUT = 1000 * 60; // 1 min
diff --git a/server/src/main/java/io/github/muntashirakon/AppManager/server/ServerRunner.java b/server/src/main/java/io/github/muntashirakon/AppManager/server/ServerRunner.java
index d5ae55b7a..b805fe121 100644
--- a/server/src/main/java/io/github/muntashirakon/AppManager/server/ServerRunner.java
+++ b/server/src/main/java/io/github/muntashirakon/AppManager/server/ServerRunner.java
@@ -1,19 +1,4 @@
-/*
- * Copyright (C) 2020 Muntashir Al-Islam
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program.  If not, see <https://www.gnu.org/licenses/>.
- */
+// SPDX-License-Identifier: MIT AND GPL-3.0-or-later
 
 package io.github.muntashirakon.AppManager.server;
 
@@ -51,6 +36,7 @@ import static io.github.muntashirakon.AppManager.server.common.ConfigParam.PARAM
  *     </li>
  * </ol>
  */
+// Copyright 2017 Zheng Li
 public final class ServerRunner {
     /**
      * The main method
diff --git a/settings.gradle b/settings.gradle
index d93573796..fee686a8f 100644
--- a/settings.gradle
+++ b/settings.gradle
@@ -1,3 +1,4 @@
+// SPDX-License-Identifier: Apache-2.0 AND GPL-3.0-or-later
 include ':docs'
 include ':libserver'
 include ':libopenpgp'
-- 
GitLab