npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

@angelkrak/react-native-intent-launcher

v1.0.2

Published

call native function about intent in react-native android

Downloads

8

Readme

React Native Intent Launcher

npm version downloads MIT Platform - Android

call native function startActivity in react-native

Description

You can call native function startActivity in react-native to do something with Intent which can only be solved with android native code

Installation

  1. npm install @angelkrak/react-native-intent-launcher
  2. react-native link @angelkrak/react-native-intent-launcher

Usage

import IntentLauncher from '@angelkrak/react-native-intent-launcher';

IntentLauncher.startActivity({
	action: 'android.settings.APPLICATION_DETAILS_SETTINGS',
	data: 'package:com.example'
})

// check if app is installed by package name
IntentLauncher.isAppInstalled('com.android.chrome')
  .then((result) => {
    console.log('isAppInstalled yes');
  })
  .catch((error) => console.warn('isAppInstalled: no', error));

// open another app by package name
IntentLauncher.startAppByPackageName('com.android.chrome')
  .then((result) => {
    console.log('startAppByPackageName started');
  })
  .catch((error) => console.warn('startAppByPackageName: could not open', error));

Usage with IntentLauncherClass.js

You can also use IntentLauncherClass.js directly in your project. Here's how to import and use it:

import { IntentLauncherClass } from '@angelkrak/react-native-intent-launcher'; 

// Example of how to launch an activity
const params = {
  action: 'android.settings.APPLICATION_DETAILS_SETTINGS',
  data: 'package:com.example'
};
IntentLauncherClass.startActivity(params);

// Example of how to launch a series of intents sequentially
const intents = [
  { action: 'android.settings.APPLICATION_DETAILS_SETTINGS', data: 'package:com.example' },
  {
    action: 'android.intent.action.VIEW',
    packageName: 'com.android.settings',
    className: 'com.android.settings.InstalledAppDetails',
    extra: {
      'com.android.settings.ApplicationPkgName': "com.example",
      'pkg': "com.example"
    }
  },
  'android.settings.MANAGE_APPLICATIONS_SETTINGS',
  'android.provider.Settings.ACTION_SETTINGS',
];
IntentLauncherClass.launchIntents(intents);

// Example of how to check if an application is installed
const packageName = 'com.android.chrome'; // Chrome application package
IntentLauncherClass.isAppInstalled(packageName)
  .then((result) => {
    console.log('The application is installed');
  })
  .catch((error) => {
    console.warn('The application is not installed', error);
  });

// Example of how to start another application by its package name
const packageName = 'com.android.chrome'; // Chrome application package
IntentLauncherClass.startAppByPackageName(packageName)
  .then((result) => {
    console.log('The application has been started');
  })
  .catch((error) => {
    console.warn('Failed to start the application', error);
  });

Properties

  • action String
  • data String
  • category String
  • flags String
  • extra Object
  • packageName String
  • className String
  • flags Number

In the IntentConstant, we provide some constants for these properties, you can look up document provided by google to find out property we didn't support currently.

License

MIT