Skip to content

evanjmg/react-native-home-pressed

Repository files navigation

react-native-home-pressed

Getting started

$ npm install react-native-home-pressed --save

Automatic installation (no further setup required)

$ react-native link react-native-home-pressed

Manual installation

Android

  1. Open up android/app/src/main/java/[...]/MainActivity.java
  • Add import com.evanjmg.RNHomePressedPackage; to the imports at the top of the file
  • Add new RNHomePressedPackage() to the list returned by the getPackages() method
  1. Append the following lines to android/settings.gradle:
    include ':react-native-home-pressed'
    project(':react-native-home-pressed').projectDir = new File(rootProject.projectDir,   '../node_modules/react-native-home-pressed/android')
    
  2. Insert the following lines inside the dependencies block in android/app/build.gradle:
      compile project(':react-native-home-pressed')
    

Events

  • 'ON_HOME_BUTTON_PRESSED'
  • 'ON_RECENT_APP_BUTTON_PRESSED' - that button that lists your apps

Usage

import { DeviceEventEmitter } from 'react-native'

class ExampleComponent extends Component {
  ...
  componentDidMount() {
    DeviceEventEmitter.addListener(
     'ON_HOME_BUTTON_PRESSED',
     () => {
       console.log('You tapped the home button!')
    })
  }
  ...
}

TODOS

  • Export event names and listener
  • Support Other Buttons - e.g navigation button

Credit

Jack's Stackoverflow post - [https://stackoverflow.com/questions/8881951/detect-home-button-press-in-android]

About

A React Native Module to capture your home and recent app button on Android

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published