Skip to content

Instantly share code, notes, and snippets.

@kingjinho
kingjinho / NotificationBuilder.kt
Created July 22, 2020 12:39
NotificationBuilder.kt setters
fun setSmallIcon(smallIconRes: Int): NotificationBuilder {
mNotificationBuilder.setSmallIcon(smallIconRes)
return this
}
fun setTitle(titleRes: Int): NotificationBuilder {
mNotificationBuilder.setContentTitle(CONTEXT.getString(titleRes))
return this
}
@kingjinho
kingjinho / NotificationBuilder.Compat.kt
Created July 22, 2020 12:31
NotificationBuilder.Compat.kt
public static class Builder {
...
...
CharSequence mContentTitle;
CharSequence mContentText;
PendingIntent mContentIntent;
PendingIntent mFullScreenIntent;
RemoteViews mTickerView;
Bitmap mLargeIcon;
@kingjinho
kingjinho / MainActivity.kt
Created July 22, 2020 12:13
MainActivity.kt
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
...
btn_display_basic_notification.setOnClickListener {
NotificationBuilder.from(this)
.createNotificationBuilder("HelloWorld")
.setTitle(R.string.app_name)
.setContent(R.string.app_name)
.setSmallIcon(R.drawable.ic_baseline_add_circle_24)
@kingjinho
kingjinho / NotificationBuilder.kt
Last active July 22, 2020 12:19
NotificationBuilder.kt
package com.example.pushnotificaiton.utils.push
/**
* Created by KING JINHO on 2020-06-23
*/
class NotificationBuilder {
companion object {
private lateinit var CHANNEL_ID: String
@kingjinho
kingjinho / activity_main.xml
Last active July 21, 2020 13:45
Notification activity_main.xml
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">
<androidx.appcompat.widget.AppCompatButton
android:id="@+id/btn_display_basic_notification"