Socket
Socket
Sign inDemoInstall

react-native-sms-x

Package Overview
Dependencies
514
Maintainers
1
Versions
7
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    react-native-sms-x

React native android native api to send SMS in javascript programmatically, no linking to SMS Messenger View.


Version published
Weekly downloads
31
increased by82.35%
Maintainers
1
Created
Weekly downloads
 

Readme

Source

react-native-sms-x


SendSMS

usage

import SendSMS from 'react-native-sms-x';
// you can put any number as Id to identify which message being process
SendSMS.send(123, "+959254687254", "Hey.., this is me!\nGood to see you. Have a nice day.", (msg)=>{ alert(msg) });

Response msg string will be one of the following:

  • "SMS sent" - for successful message
  • "Generic failure" - for general failure
  • "No service" - for no mobile operator service
  • "Radio off" - for no mobile signal
  • "Null PDU" - for no PDU
Note:
Minimum android version is 4.1 and supported RN >= v0.29.

Installation
npm install react-native-sms-x --save

Android Setup

1.In your android/settings.gradle file, make the following additions:

include ':react-native-sms-x'
project(':react-native-sms-x').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-sms-x/android/app')

2.In your android/app/build.gradle file, add the ':react-native-sms-x' project as a compile-time dependency:

...
dependencies {
    ...
    compile project(':react-native-sms-x')
}

3.Update the MainApplication.java file as follow:

import com.facebook.react.ReactApplication;
...
import com.someone.sendsms.SendSMSPackage; // <--- add here!


public class MainApplication extends Application implements ReactApplication {

  private final ReactNativeHost mReactNativeHost = new ReactNativeHost(this) {
    @Override
    protected boolean getUseDeveloperSupport() {
      return BuildConfig.DEBUG;
    }

    @Override
    protected List<ReactPackage> getPackages() {
      return Arrays.<ReactPackage>asList(
          new MainReactPackage(),
          new SendSMSPackage()     // <--- add here!
      );
    }
  };

  @Override
  public ReactNativeHost getReactNativeHost() {
      return mReactNativeHost;
  }
}

4.In your AndroidManifest.xml file, add a user permission for sending SMS.

<uses-permission android:name="android.permission.SEND_SMS" />

Example

import React, { Component } from 'react';
import {
  AppRegistry,
  StyleSheet,
  Text,
  View,
  TouchableOpacity,
  ToastAndroid
} from 'react-native';
import SendSMS from 'react-native-sms-x';

export default class RNSMS extends Component {
  sendSMSFunction() {
    SendSMS.send(123, "+95912345678", "Hey.., this is me!\nGood to see you. Have a nice day.",
      (msg)=>{
        ToastAndroid.show(msg, ToastAndroid.SHORT);
      }
    );
  }
  render() {
    return (
      <View style={styles.container}>        
        <TouchableOpacity style={styles.button} onPress={this.sendSMSFunction.bind(this)}>
          <Text>Send SMS</Text>
        </TouchableOpacity>
      </View>
    );
  }
}

const styles = StyleSheet.create({
  container: {
    flex: 1,
    justifyContent: 'center',
    alignItems: 'center',
    backgroundColor: '#F5FCFF',
  },  
  button: {
    padding: 10,
    borderWidth: .5,
    borderColor: '#bbb',
    margin: 10,
    alignItems: 'center',
    justifyContent: 'center'
  }
});

AppRegistry.registerComponent('RNSMS', () => RNSMS);

Support on Beerpay

Hey dude! Help me out for a couple of :beers:!

Beerpay Beerpay

Keywords

FAQs

Last updated on 22 May 2019

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc