Home / Android-Entwicklung / Das Android-Arsenal – Push / Pull-Benachrichtigungen

Das Android-Arsenal – Push / Pull-Benachrichtigungen

#Schritt 1: Fügen Sie es am Ende der Repositorys in Ihr Stammverzeichnis build.gradle ein:


 allprojects {
  Repositories {
   maven {url  ' https://jitpack.io ' 

 }
  }
 } 

#Schritt 2: Fügen Sie die Abhängigkeit hinzu:

 Implementierung  ' com.github.mehrdadsafari: ZadakNotification: 0.0.2 ' 

Wahrscheinlich haben Sie es satt, Code zu schreiben Wenn Sie Benachrichtigungen in Ihren Anwendungen anzeigen, werden in der Bibliothek alle Benachrichtigungserstellungsprozesse in einer einzigen Codezeile zusammengefasst. Diese Bibliothek unterstützt Android Wear.

 ZadakNotification . 

 with (context)
    .Belastung()
    .notificationChannelId ( CHANNEL_ID 






)
    .identifier (bezeichner)
    .title (Titel)
    .message (Nachricht)
    .bigTextStyle (bigtext)
    .smallIcon (smallIcon)
    .largeIcon (largeIcon)
    .flags ( Benachrichtigung .  DEFAULT_ALL 











)
    .button (icon, title, pendingIntent)
    .click (cctivity, bundle)
    .dismiss (Aktivität, Bündel)
    .color (Farbe)
    .ticker (ticker)
    .wenn (wann)
    .vibrieren (vibrieren)
    .lights (farbe, ledOnMs, ledOfMs)
    .sound (Ton)
    .autoCancel (autoCancel)
    .einfach()
    .build (); 

Einfache Benachrichtigung mit nur Text und Nachricht.

 ZadakNotification . 

 with (context)
    .Belastung()
    .notificationChannelId ( CHANNEL_ID 



)
    .title (Titel)
    .message (Nachricht)
    .bigTextStyle (bigtext)
    .smallIcon ( R .  drawable . 
 ic_launcher)
    .largeIcon ( R .  drawable . 
 ic_launcher)
    .flags ( Benachrichtigung .  DEFAULT_ALL 

)
    .einfach()
    .build (); 

Einfache Benachrichtigung mit Fortschritt.

 ZadakNotification . 

 with (context)
    .Belastung()
    .notificationChannelId ( CHANNEL_ID 

)
    .identifier (bezeichner)
    .smallIcon ( R .  drawable . 


 ic_launcher)
    .Fortschritt()
    .value (Fortschritt, max, unbestimmt)
    .build (); 
 ZadakNotification . 

 with (context)
    .Belastung()
    .notificationChannelId ( CHANNEL_ID 

)
    .identifier (bezeichner)
    .smallIcon ( R .  drawable . 


 ic_launcher)
    .Fortschritt()
    .update (Identifier, Fortschritt, max, unbestimmt)
    .build (); 

Wir haben die Art und Weise geändert, wie die Bibliothek die Download-Bilder für benutzerdefinierte Benachrichtigungen behandelt. Zuvor respektlos wegen der Picasso-Bibliothek. Viele Benutzer fragten jedoch nach der Möglichkeit, das Herunterladen des Bildes selbst bestimmen zu können. Also bedienen wir die Anfragen und modifizieren die Bibliothek, um den Download der Bildverwaltung als Beispiel zu ermöglichen:

 ZadakNotification . 

 with (context)
    .Belastung()
    .notificationChannelId ( CHANNEL_ID 



)
    .title (Titel)
    .message (Nachricht)
    .bigTextStyle (bigtext)
    .smallIcon ( R .  drawable . 
 ic_launcher)
    .largeIcon ( R .  drawable . 
 ic_launcher)
    .flags ( Benachrichtigung .  DEFAULT_ALL 
)
    .color ( android .  R .  color . 


 background_dark)
    .Brauch()
    .background (url)
    .setImageLoader ( Rückruf 
)
    .setPlaceholder ( R .  drawable . 
 ic_placeholder)
    .bauen(); 
 ZadakNotification .  with (mContext) . 
 load ()
    .notificationChannelId ( CHANNEL_ID 
)
    .smallIcon ( R .  drawable . 
 ic_launcher)
    .autoCancel ( true 
)
    .largeIcon ( R .  drawable . 



 ic_launcher)
    .title (Titel)
    .message (Nachricht)
    .bigTextStyle (bigtext)
    .flags ( Benachrichtigung .  DEFAULT_ALL 

)
    .tragen()
    .background ( Bitmap 

)
    .setRemoteInput (Symbol, Titel, PendingIntent, RemoteInput)
    .setPages ( Liste < Benachrichtigung > 
 ListeBenachrichtigung)
    .setHideIcon ( Boolean 
)
    .build (); 

Jetzt implementiert nur der Client die ImageLoader-Schnittstelle und implementiert eine Möglichkeit zum Verwalten des Herunterladens des Images. Unten verwenden wir den Picasso:

 @Override 
 public  void  load ( string  uri,  final  OnImageLoadingCompleted 
 onCompleted) {
        viewTarget  = 
 getViewTarget (onCompleted);
         Picasso .  mit ( diesem ) .  load (uri) . 


 into (viewTarget);
    }
    
     privat  statisch  Ziel  getViewTarget ( final  OnImageLoadingCompleted 
 onCompleted) {
         return  new  Target 
 () {
             @Override 
 public  void  onBitmapLoaded  ( Bitmap  Bitmap  Picasso  from  LoadedFrom [19459
) {
                onCompleted . 


 imageLoadingCompleted (Bitmap);
            }

             @Override 
 public  void  onBitmapFailed  ( Drawable  errorDrawable 


) {
            }

             @Override 
 public  void  onPrepareLoad  ( Drawable  placeHolderDrawable 


) {
            }
        };
    } 

ZadakNotification unterstützt Platzhalter, wenn das Herunterladen des Bilds im Hintergrund nicht erfolgreich ist. Die Bibliothek hat bereits eine Standardplatzhaltergröße von 622 x 384.

Verwenden Sie zum Deaktivieren der Benachrichtigung zum Löschen durch Wischen


 .setOngoing (true)

Benachrichtigung abbrechen


 ZadakNotification.with (mContext) .cancel (identifier);

Wenn Sie den Download des Bildes mit Picasso verwalten, fügen Sie die folgende Zeile zu Ihrer Proguard-Datei hinzu:


 -dontwarn com.squareup.okhttp. **

.

About AndroidWeltEditor

Check Also

How to call a method in Java

In this post, we will learn how to call a method in Java. This is …

Leave a Reply

Your email address will not be published. Required fields are marked *