App Debugging & Inspection Tool for Android
Clone or download
Kritarie Merge pull request #143 from amitav13/pie-permission-fix
Fix for SecurityException on API 28 (#141)
Latest commit abfcccf Aug 20, 2018
Permalink
Failed to load latest commit information.
.circleci Fix circleci config to assemble project. Feb 3, 2018
art Update build number to prepare for open source. Jan 26, 2018
gradle/wrapper Bump version to v0.9.22. Apr 12, 2018
hyperion-attr-appcompat-v7 Update build tools and gradle plugin versions. Update support library… Mar 26, 2018
hyperion-attr-design Update build tools and gradle plugin versions. Update support library… Mar 26, 2018
hyperion-attr-recyclerview Update build tools and gradle plugin versions. Update support library… Mar 26, 2018
hyperion-attr-support-v4 Update build tools and gradle plugin versions. Update support library… Mar 26, 2018
hyperion-attr Resolved CR issues for proguard placement Apr 27, 2018
hyperion-build-config Added BuildConfig name override through resources Jul 20, 2018
hyperion-core-no-op Extra documentation on core plugin Jul 31, 2018
hyperion-core Fix for SecurityException on API 28 (#141) Aug 20, 2018
hyperion-crash Include nested throwables in crash report. May 3, 2018
hyperion-disk #78 Add descriptions to plugin menu items Apr 11, 2018
hyperion-geiger-counter Fix Geiger Counter plugin list item view height May 3, 2018
hyperion-location Update build tools and gradle plugin versions. Update support library… Mar 26, 2018
hyperion-measurement #78 Add descriptions to plugin menu items Apr 11, 2018
hyperion-phoenix Merge pull request #88 from kvithayathil/feature/phoenix_confirmation… Apr 12, 2018
hyperion-plugin Merge pull request #74 from ToxicBakery/feature/alphabetical-sort Apr 10, 2018
hyperion-recorder Fix crash occurring when app theme is not set to Theme.AppCompat for … Jul 12, 2018
hyperion-sample #132 Fixed Jul 9, 2018
hyperion-shared-preferences #78 Add descriptions to plugin menu items Apr 11, 2018
hyperion-sqlite - Using listeners to handle click events on list items for database/t… May 9, 2018
hyperion-timber Add support for sending custom data to the log buffer Apr 17, 2018
.gitignore Update ignore for local keystores and module build directories Apr 25, 2018
CHANGELOG.md Adds Contributing, Changelog, and README updates. Dec 30, 2017
CODEOWNERS Adds Kritarie as codeowner. Aug 3, 2017
CODE_OF_CONDUCT.md Adds Contributing, Changelog, and README updates. Dec 30, 2017
CONTRIBUTING.md Fix readme, add CONTRIBUTING.MD to match iOS Mar 8, 2018
LICENSE Add open source license. Jan 26, 2018
README.md Bump version number to 0.9.24. Jul 9, 2018
build.gradle Bump version number to 0.9.24. Jul 9, 2018
gradle.properties Bump version to v0.9.22. Apr 12, 2018
gradlew Initial commit. May 26, 2017
gradlew.bat Initial commit. May 26, 2017
publish.gradle Adds dependencies to the pom.xml generation. Jan 27, 2018
settings.gradle #132 Fixed Jul 9, 2018

README.md

Hyperion

CircleCI Maven Central License MIT Public Yes

Hyperion Logo

Hyperion - App Inspection Tool

What is it?

Hyperion is a hidden plugin drawer that can easily be integrated into any app. The drawer sits discreetly 🙊 under the app so that it is there when you need it and out of the way when you don't. Hyperion plugins are designed to make inspection of your app quick and simple.

Please see our annoucement blog post for a feature showcase.

Demo Attribute inspector

Third-Party Plugins

Be one of the first to create a third-party plugin. The plugin creation guide is a work in progress, but if you are feeling ambitious you can reference the plugins we have already created.

To create your own plugin, implement the Plugin interface and expose the implementation as a service. The plugins made available in this repository leverage Google's AutoService annotation processor to generate the service metadata and simplify the process.

How To Show Hyperion Plugin List

Once Hyperion is integrated into your app, simply shake your phone to activate. If you are running your app on an emulator, you can manually open the menu by calling Hyperion.open(Activity activity). You can also open the menu by selecting the foreground notification that appears while the client app is in the foreground.

Sample App

Want to learn how to use Hyperion? The sample app will teach you!

Build the example project by cloning the repo, run ./gradlew assemble from the root directory, then open in Android Studio and run.

Requirements

min SDK 15

Download

Download via Maven:

<dependency>
  <groupId>com.willowtreeapps.hyperion</groupId>
  <artifactId>hyperion-core</artifactId>
  <version>0.9.24</version>
</dependency>

or Gradle:

debugImplementation 'com.willowtreeapps.hyperion:hyperion-core:0.9.24'

If you reference Hyperion from your code, you should also compile the no-op artifact for release variants. For most users, this will not be necessary:

releaseImplementation 'com.willowtreeapps.hyperion:hyperion-core-no-op:0.9.24'

Usage

Include the core library along with any number of plugins.

debugImplementation 'com.willowtreeapps.hyperion:hyperion-core:0.9.24'
debugImplementation 'com.willowtreeapps.hyperion:hyperion-attr:0.9.24'
debugImplementation 'com.willowtreeapps.hyperion:hyperion-measurement:0.9.24'
debugImplementation 'com.willowtreeapps.hyperion:hyperion-disk:0.9.24'
debugImplementation 'com.willowtreeapps.hyperion:hyperion-recorder:0.9.24'
debugImplementation 'com.willowtreeapps.hyperion:hyperion-phoenix:0.9.24'
debugImplementation 'com.willowtreeapps.hyperion:hyperion-crash:0.9.24'
debugImplementation 'com.willowtreeapps.hyperion:hyperion-shared-preferences:0.9.24'
debugImplementation 'com.willowtreeapps.hyperion:hyperion-geiger-counter:0.9.24'
debugImplementation 'com.willowtreeapps.hyperion:hyperion-timber:0.9.24'
debugImplementation 'com.willowtreeapps.hyperion:hyperion-build-config:0.9.24'

Adding Plugins

Hyperion plugins need to be added into the app at build time. By default, Hyperion automatically finds every plugin that is available in the project using the Java Service Locator.

Contributing to Hyperion

Contributions are welcome. Please see the Contributing guidelines.

Hyperion has adopted a code of conduct defined by the Contributor Covenant, the same used by the Swift language and countless other open source software teams.

Plugin Descriptions

The following is a list of all plugins that integrate with Hyperion. Please make a pull request if you would like to see your plugin here:

Third Party Plugins

Core Plugins

License

Hyperion is available under the MIT license. See the LICENSE file for more info.

About WillowTree!

WillowTree Logo

We build apps, responsive sites, bots—any digital product that lives on a screen—for the world’s leading companies. Our elite teams challenge themselves to build extraordinary experiences by bridging the latest strategy and design thinking with enterprise-grade software development.

Interested in working on more unique projects like Hyperion? Check out our careers page.