Code Monkey home page Code Monkey logo

fcm-push-plugin's Introduction

JetBrains IntelliJ Plugins

FCM push sender

Sends push notifications using Firebase Cloud Messaging (FCM).
Uses Stetho's prefs dumpapp plugin to find the application Firebase Registration ID token in app shared preferences

Installation

You can install the plugin from the IntelliJ Plugin Repository.

Or you can download the latest binary from releases on this repo

Setup

You need to set the "Authorization Key" in plugin settings:

Settings1

Usage

The plugin installs one menu entry under tools menu:

Menu

And a toolbar button:

Toolbar

When using this option the FCM push sender dialog will be shown:

Dialog1

At this point the plugin tries to find the app Firebase Id in the configured shared preference key, if the id is found it will be shown, otherwise you can set it manually.

The "Remember" check allows to store the current data for next plugin executions.

JSON type

The plugin uses the legacy Firebase Cloud Messaging HTTP protocol to send push notifications.

You can select "Data only" or "Full message" JSON types:

Data only

This type allows only to provide the data field of the payload.

{
  "to" : "bk3RNwTe3H0:CI2k_HHwgIpoDKCIZvvDMExUdFQ3P1...",
  "data" : [Provided JSON object]
}

Full message

This type allows full control over the message payload. The plugin will add the to field for you.

{
  "to" : "bk3RNwTe3H0:CI2k_HHwgIpoDKCIZvvDMExUdFQ3P1...",
  [Provided JSON object]
}

See Firebase Cloud Messaging HTTP protocol for more information about the HTTP syntax.

Extra configuration

Also you can create, import and export templates:

Settings2

Then you can use the templates in the send dialog:

Dialog2

Notes

One of the main features of this plugin is the ability of search automatically the Firebase Registration ID token in app shared preferences using stetho dumpapp plugin, however you can disable the stetho integration in plugin settings and set the ID manually.

When using stetho to find the Id, the plugin works with connected devices on debug mode (ADB accessible). If more than one debuggable device is connected, the plugin will show a dialog to select the target device:

Popup Devices

If the target device has more than one stetho-enabled process running, the plugin will ask to select the target process:

Popup Processes

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.