ShizuStore

Island

oasisfeng

6.2.1 · GitHub

Download APK
Software management Android 7.0+ 1 year ago Apache-2.0
37 ShizuStore
286.3k GitHub
3.9k Stars
3 MB Size
Detected trackers (3)
Google CrashLytics Crash reporting
Google Analytics Analytics
Google Firebase Analytics Analytics

Matched by Exodus Privacy code signatures. Not a complete list.

More about this app

Isolate and clone apps for privacy protection and parallel running

Island

Island for Android

Build Instructions

Island depends on "deagle" library, which must be cloned alongside Island in the same path.

\--
  \- island
  \- deagle

This project is constructed into several modules, with assembly module as the build portal, to support separate "light" build for core modules, in the form of "product flavor" in Gradle build configuration.

The "engine" module shares the same package name with the "complete" build, to inherit the profile/device owner privilege. The "mobile" and other modules can be installed and updated separately alongside "engine" module for development convenience.

Open API

Due to the exclusivity nature, user could only use one Android DPC app at a time, and price of switching DPC is far too heavy. To encourage active exploration and broader development in the capabilities of DPC and therefore better benefit users, Island is devoted to build an open collaboration for community developers, either in development of this project or opening DPC capabilities to 3rd-party apps via open API. Island itself will not focus on the rich set of features, but mainly focuses on building a powerful engine as an open platform for much more apps from the community.

Starting from the first public version of Island, all APIs are open to 3rd-party apps with the standard runtime-permission of Android as user authorization. Developers can start building apps now to take advantage of the Island open APIs.

The protocol of all APIs are well defined and maintained in the class "Api".

Contribution

If you found bugs, made minor improvements or translated the strings, please feel free to send us pull-requests.

If you are interested in improving the functionality of Island, please create an issue first to discuss your thoughts with us, we are open to collaboration in future development.

If you need new APIs for your apps to take advantage of the DPC capabilities, please feel free to create an issue to describe your app and its use case of those APIs. We are still in the early stage of building a rich set of open APIs.

Close

How Shizuku is used

Can clone apps into Island profiles via Shizuku using `PackageInstaller.installExistingPackage`

This is an AI-assisted analysis of Shizuku-related usages in the app's public source code. It is best effort, so it may not catch every single usage.

How this app uses Shizuku

Shizuku is used to clone an app that already exists on the device into another Island profile without a full reinstall.

  • Clone apps to profile: when cloning is chosen with the Shizuku option, the app is made available in the selected profile with PackageInstaller.installExistingPackage run through Shizuku, showing the same success message as other clone methods.

Android APIs or commands used

  • PackageInstaller.installExistingPackage
  • PackageManager.installExistingPackageAsUser
  • ActivityThread.currentActivityThread
  • ActivityThread.getSystemContext

Notable details

Cloning also works without Shizuku through the system installer or the Play Store, Shizuku is offered as an additional cloning choice in the clone dialog.

Close

Changelog

What's new for version 6.2.1

Fixed minor crashes.

Close

Permissions

22 permissions requested

  • com.android.launcher.permission.INSTALL_SHORTCUT
  • com.android.launcher.permission.UNINSTALL_SHORTCUT
  • android.permission.INTERNET
  • android.permission.INTERACT_ACROSS_USERS
  • android.permission.ACCESS_NETWORK_STATE
  • android.permission.WRITE_SECURE_SETTINGS
  • android.permission.PACKAGE_USAGE_STATS
  • android.permission.RECEIVE_BOOT_COMPLETED
  • android.permission.REQUEST_DELETE_PACKAGES
  • android.permission.FOREGROUND_SERVICE
  • android.permission.REQUEST_INSTALL_PACKAGES
  • android.permission.SYSTEM_ALERT_WINDOW
  • android.permission.QUERY_ALL_PACKAGES
  • com.oasisfeng.island.permission.INSTALLER
  • android.permission.WAKE_LOCK
  • android.permission.GET_APP_OPS_STATS
  • android.permission.USE_BIOMETRIC
  • android.permission.USE_FINGERPRINT
  • com.google.android.finsky.permission.BIND_GET_INSTALL_REFERRER_SERVICE
  • com.google.android.gms.permission.AD_ID
  • com.oasisfeng.island.DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION
  • moe.shizuku.manager.permission.API_V23
Close