Convert JSON to Android Notification. This is very useful for push notification (GCM).

Overview

json2notification

Android Arsenal Download JitPack javadoc Build Status Join the chat at https://gitter.im/8tory/json2notification

Contributors..

Convert JSON to Android Notification. This is very useful for push notification (GCM).

Usage

Notification notification = Json2Notification.from(context).with(json).notification();
NotificationManager notificationManager = (NotificationManager) context.getSystemService(Context.NOTIFICATION_SERVICE);
notificationManager.notify(1, notification);

or

Json2Notification.from(context).with(json).notify(1);

Integration of Parse push notification

public SimpleParsePushBroadcastReceiver extends ParsePushBroadcastReceiver {
    @Override public void onReceive(final Context context, Intent intent) {
        String json = intent.getStringExtra("com.parse.Data");

        Json2Notification.from(context).with(json).notify(1);
    }
}

Installation

via jitpack:

repositories {
    maven { url "https://jitpack.io" }
}

dependencies {
    compile 'com.github.8tory:json2notification:-SNAPSHOT'
}

via jcenter:

repositories {
    jcenter()
}

dependencies {
    compile 'com.infstory:json2notification:1.0.1'
}

Input json format

{
    "android": {
        "notification": {
            "autoCancel": true,
            "bigPictureStyle": {
                "contentTitle": "json2notification",
                "summaryText": "JSON to Android Notification",
                "bigLargeIcon": "http://upload.wikimedia.org/wikipedia/en/b/bc/Wiki.png",
                "bigPicture": "http://upload.wikimedia.org/wikipedia/en/b/bc/Wiki.png"
            },
            "contentInfo": "json2notification.Json2Notification.from(context).with(json).notification();",
            "contentIntent": {
                "getActivity": true,
                "intent": {
                    "action": "android.intent.action.VIEW",
                    "uri": "https://play.google.com/store/apps/details?id=com.story8.android.gallery"
                }
            },
            "contentText": "JSON to Android Notification",
            "contentTitle": "json2notification",
            "deleteIntent": {
                "getActivity": true,
                "intent": {
                    "action": "android.intent.action.VIEW",
                    "uri": "https://play.google.com/store/apps/details?id=com.story8.android.gallery"
                }
            },
            "largeIcon": "http://upload.wikimedia.org/wikipedia/en/b/bc/Wiki.png",
            "smallIcon": "R.drawable.ic_launcher",
            "sound": "content://settings/system/notification_sound"
        }
    }
}

Bonus: serialization

Intent intent = new Intent(Intent.ACTION_MAIN);
intent.addCategory(Intent.CATEGORY_HOME);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);

new NotificationCompat.Builder(context)
    .setContentTitle("Hello World!")
    .setContentText("Hello World!")
    .setContentIntent(PendingIntent.getActivity(context, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT))
    .build();

String json = Json2Notification.from(context).with(notifiction).serialize();

Live Demo

LICENSE

Copyright 2015 8tory, Inc.

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

   http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
You might also like...
Android library for Tesla Authentication based on Tesla JSON API (Unofficial)

TeslaAndroidAuth Lightweight Android library for Tesla SSO Authentication based

A Android Web IDE supports code auto-completion and highlight, plugin (Supports Html, Css, JS, Json, Php etc)

WebDevOps A Android Web IDE supports code auto-completion and highlight, plugin (Supports Html, Css, JS, Json, Php etc) Join us QQ group number: 10314

Quote-App-Kotlin - Quote App Based on MVVM clean architecture getting quote from json file stored in assets

Quotify - Simple Quotes App This app shows the use of ViewModel and ViewModelFac

Restaurants - A simple app which displays a list of restaurants from a stored JSON, ordered by opening status, favorites and filter chosen from the dropdown

Restaurants - A simple app which displays a list of restaurants from a stored JSON, ordered by opening status, favorites and filter chosen from the dropdown

News-App - A news app Which displays news with the help of JSON data
News-App - A news app Which displays news with the help of JSON data

News-App This is a news app Which displays news with the help of JSON data

An easy way to create and access JSON Files!
An easy way to create and access JSON Files!

JsonFile This is the JsonFile API, this class is meant to facilitate the process of creating and accessing a JSON file UPDATES Updates Version About C

Latihan Notification dengan NotificationBuilder, NotificatonManager, dan Penting Intent

Latihan-Background-Process-dan-Networking-4 Latihan Notification dengan NotificationBuilder, NotificatonManager, dan Penting Intent Codelab kali ini a

A real time notification App which reminds its user with daily schedules

On Time Pro ⌚ A real time notification App which reminds its user with daily schedules, time-table ⌛ , due assignments 📜 , regular classes with just

A small bot for gitlab notification

Welcome to gitty 👋 A small bot for gitlab notification with integration on different platform Usage You gotta change variables in .env on your own do

Comments
  • UIL doesn't support scheme(protocol) by default

    UIL doesn't support scheme(protocol) by default

    why im getting this? E/ImageLoader﹕ UIL doesn't support scheme(protocol) by default [R.mipmap.ic_notification]. You should implement this support yourself (BaseImageDownloader.getStreamFromOtherSource(...)) java.lang.UnsupportedOperationException: UIL doesn't support scheme(protocol) by default [R.mipmap.ic_notification]. You should implement this support yourself (BaseImageDownloader.getStreamFromOtherSource(...))

    question 
    opened by gustavomc 1
  • Add a Gitter chat badge to README.md

    Add a Gitter chat badge to README.md

    8tory/AndroidNotificationJson now has a Chat Room on Gitter

    @yongjhih has just created a chat room. You can visit it here: https://gitter.im/8tory/AndroidNotificationJson.

    This pull-request adds this badge to your README.md:

    Gitter

    If my aim is a little off, please let me know.

    Happy chatting.

    PS: Click here if you would prefer not to receive automatic pull-requests from Gitter in future.

    opened by gitter-badger 0
Owner
8tory - Facebook Memories
SNS 8tory Facebook Memories / Stories
8tory - Facebook Memories
Optimize notification icons for ColorOS and adapt to native notification icon specifications

Optimize notification icons for ColorOS and adapt to native notification icon specifications

Fankesyooni 23 Jan 4, 2023
Push Notifications Android

Push Notifications Android This repository shows how to use Huawei or Google services for Push-notification in different flavors. Preparations You nee

MobileUp 3 Oct 3, 2022
Here OneSignal push and in-app-message have been implemented

OneSIgnal demo project Here we have implemented OneSignal inAppMessage and Push Notification ANDROID SDK SETUP WITH ONESIGNAL: https://documentation.o

Fakhrul Alam Siddiqei 2 Dec 7, 2022
Bringing webhooks into Telegram. Push messages to chats via URL with a simple API.

Webhooks over Telegram (WoT) WoT aims to provide a simple API for registering webhooks and sending messages to Telegram chats via them using a single

d1s utils 2 Oct 5, 2022
DroidFish is a feature-rich graphical chess user interface, combined with the very strong Stockfish chess engine.

Introduction DroidFish is a feature-rich graphical chess user interface, combined with the very strong Stockfish chess engine. DroidFish is primarily

Peter Österlund 233 Jan 4, 2023
Unicopy is an application for Android devices and helps users to copy useful special characters

Unicopy Android Application Unicopy is an application for Android 'Phone' Devices. This helps you to copy and paste some special and complicated Unico

Jacob Lim 1 Oct 28, 2021
Andorid app which provides a bunch of useful Linux commands.

Linux Command Library for Android The app currently has 3203 manual pages, 1351 one-line scripts and a bunch of general terminal tips. It works 100% o

Simon Schubert 285 Jan 3, 2023
Implementation of useful hooks inspired by React for Compose

useCompose React inspired hooks for Compose Installation Step 1. Add the JitPack repository to your build file Add it in your root build.gradle at the

Pavitra Golchha 20 Nov 14, 2022
This app is used to divide a particular task in subtask and assign it to others with priorities. This may be useful for team projects or collaborative work

TaskDivider-Android-App This app is used to divide a particular task in subtask and assign it to others with priorities. This may be useful for team p

Manikant Rai 1 Jan 10, 2022
Loco-strings-sync - A custom Gradle Plugin useful to sync loco string resources to local projects

loco-strings-sync A custom Gradle Plugin useful to sync loco string resources to

Jonathan Imperato 1 Feb 14, 2022