Android - Push Notification Tutorial

Eine Benachrichtigung ist eine Nachricht, die Sie an den Benutzer außerhalb der normalen Benutzeroberfläche Ihrer Anwendung angezeigt werden können. Sie können Ihre eigenen Mitteilungen in android sehr einfach zu erstellen.
Android bietet NotificationManager Klasse für diesen Zweck. Um diese Klasse zu verwenden, müssen Sie ein Objekt dieser Klasse durch Anfordern des Android-System durch instanziieren getSystemService () -Methode. Die Syntax ist unten angegeben -
NotificationManager NM;
NM=(NotificationManager)getSystemService(Context.NOTIFICATION_SERVICE);
Danach werden Sie durch Mitteilung erstellen Benachrichtigungsklasse und geben Sie die Attribute wie Symbol, Titel und Zeit etc. Die Syntax ist unten angegeben -
Notification notify=new Notification(android.R.drawable.stat_notify_more,title,System.currentTimeMillis());
Das nächste, was Sie tun müssen, ist, einen zu erstellen PendingIntent indem Kontext und Absicht als Parameter. Indem sie eine PendingIntent zu einer anderen Anwendung, gewähren Sie es sich vor, die Operation, die Sie angegeben haben, als wenn die andere Anwendung war selbst durchführen.
PendingIntent pending=PendingIntent.getActivity(getApplicationContext(), 0, new Intent(),0);
Das letzte, was Sie tun müssen, ist anrufen setLatestEventInfo Verfahren des Notification-Klasse und übergeben die anstehenden Absicht zusammen mit Benachrichtigung Betreff und Details. Die Syntax ist unten angegeben. Und dann schließlich nennen benachrichtigen Verfahren der NotificationManager Klasse.
notify.setLatestEventInfo(getApplicationContext(), subject, body,pending);
NM.notify(0, notify);  
Abgesehen von der Benachrichtigungsverfahren, gibt es andere verfügbare Verfahren im NotificationManager Klasse. Sie sind: -
Sr.NoVerfahren & Beschreibung
1Abbrechen (int id)
Diese Methode Abbrechen einer zuvor dargestellten Meldung.
2Abbrechen (String-Tag, int id)
Diese Methode auch eine zuvor gezeigt, zu kündigen.
3cancelAll ()
Diese Methode brechen Sie alle zuvor gezeigt Benachrichtigungen.
4benachrichtigen (int id, Mitteilung Mitteilung)
Diese Methode Post eine Benachrichtigung in der Statusleiste angezeigt.
5benachrichtigen (String-Tag, int id, Mitteilung Mitteilung)
Diese Methode Stellen Sie auch eine Benachrichtigung in der Statusleiste angezeigt werden.

Beispiel

Das folgende Beispiel demonstriert die Verwendung von NotificationManager Klasse. Es Kästen einer einfachen Anwendung, die Sie, um eine Benachrichtigung zu erstellen.
Um bei diesem Beispiel zu experimentieren, müssen Sie diese auf einem Gerät oder einem Emulator laufen.
SchritteBezeichnung
1Sie werden Android-Studio verwenden, um ein Android-Anwendung unter einem packagecom.example.sairamkrishna.myapplication erstellen. Bei der Erstellung dieses Projekt, stellen Sie sicher SDK Ziel und Kompilieren Sie mit der neuesten Version des Android SDK zu höheren Ebenen der APIs verwenden.
2Ändern src / MainActivity.java Datei Benachrichtigung Code hinzufügen.
3Ändern Sie das Layout XML-Datei res / layout / activity_main.xml jede GUI-Komponente hinzufügen, wenn erforderlich.
4Führen Sie die Anwendung, und wählen Sie einen laufenden Android-Gerät und installieren Sie die Anwendung und überprüfen Sie die Ergebnisse.
Hier beträgt der Gehalt an MainActivity.java.
package com.example.sairamkrishna.myapplication;

import android.app.Notification;
import android.app.NotificationManager;
import android.app.PendingIntent;

import android.content.Context;
import android.content.Intent;
import android.content.SharedPreferences;

import android.graphics.Typeface;
import android.support.v7.app.ActionBarActivity;
import android.os.Bundle;

import android.view.Menu;
import android.view.MenuItem;
import android.view.View;

import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;
import android.widget.Toast;
import static java.lang.System.currentTimeMillis;

public class MainActivity extends ActionBarActivity {
   EditText ed1,ed2,ed3;
   protected void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);
      setContentView(R.layout.activity_main);
      
      ed1=(EditText)findViewById(R.id.editText);
      ed2=(EditText)findViewById(R.id.editText2);
      ed3=(EditText)findViewById(R.id.editText3);
      Button b1=(Button)findViewById(R.id.button);
      
      b1.setOnClickListener(new View.OnClickListener() {
         @Override
         public void onClick(View v) {
            String tittle=ed1.getText().toString().trim();
            String subject=ed2.getText().toString().trim();
            String body=ed3.getText().toString().trim();
            
            NotificationManager notif=(NotificationManager)getSystemService(Context.NOTIFICATION_SERVICE);
            Notification notify=new Notification(R.drawable.noti,tittle,System.currentTimeMillis());
            PendingIntent pending= PendingIntent.getActivity(getApplicationContext(), 0, new Intent(), 0);
            
            notify.setLatestEventInfo(getApplicationContext(),subject,body,pending);
            notif.notify(0, notify);
         }
      });
   }
   
   @Override
   public boolean onCreateOptionsMenu(Menu menu) {
      // Inflate the menu; this adds items to the action bar if it is present.
      getMenuInflater().inflate(R.menu.menu_main, menu);
      return true;
   }
   
   @Override
   public boolean onOptionsItemSelected(MenuItem item) {
      // Handle action bar item clicks here. The action bar will
      // automatically handle clicks on the Home/Up button, so long
      // as you specify a parent activity in AndroidManifest.xml.
      
      int id = item.getItemId();
      
      //noinspection SimplifiableIfStatement
      if (id == R.id.action_settings) {
         return true;
      }
      return super.onOptionsItemSelected(item);
   }
}
Hier beträgt der Gehalt an activity_main.xml
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
   xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"
   android:layout_height="match_parent" android:paddingLeft="@dimen/activity_horizontal_margin"
   android:paddingRight="@dimen/activity_horizontal_margin"
   android:paddingTop="@dimen/activity_vertical_margin"
   android:paddingBottom="@dimen/activity_vertical_margin" tools:context=".MainActivity">
   
   <TextView
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:text="Notification"
      android:id="@+id/textView"
      android:layout_alignParentTop="true"
      android:layout_centerHorizontal="true"
      android:textSize="30dp" />
      .
   <TextView
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:text="Tutorials Point"
      android:id="@+id/textView2"
      android:layout_below="@+id/textView"
      android:layout_centerHorizontal="true"
      android:textSize="35dp"
      android:textColor="#ff16ff01" />
      
   <EditText
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:id="@+id/editText"
      android:layout_below="@+id/textView2"
      android:layout_alignLeft="@+id/textView2"
      android:layout_alignStart="@+id/textView2"
      android:layout_marginTop="52dp"
      android:layout_alignRight="@+id/textView2"
      android:layout_alignEnd="@+id/textView2"
      android:hint="Name" />
   
   <EditText
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:id="@+id/editText2"
      android:hint="Subject"
      android:layout_below="@+id/editText"
      android:layout_alignLeft="@+id/editText"
      android:layout_alignStart="@+id/editText"
      android:layout_alignRight="@+id/editText"
      android:layout_alignEnd="@+id/editText" />
      
   <EditText
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:inputType="textPersonName"
      android:ems="10"
      android:id="@+id/editText3"
      android:hint="Body"
      android:layout_below="@+id/editText2"
      android:layout_alignLeft="@+id/editText2"
      android:layout_alignStart="@+id/editText2"
      android:layout_alignRight="@+id/editText2"
      android:layout_alignEnd="@+id/editText2" />
      
   <Button
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:text="Notification"
      android:id="@+id/button"
      android:layout_marginTop="77dp"
      android:layout_below="@+id/editText3"
      android:layout_alignRight="@+id/textView"
      android:layout_alignEnd="@+id/textView" />

</RelativeLayout/7gt;
Hier beträgt der Gehalt an AndroidManifest.xml.
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
   package="com.example.sairamkrishna.myapplication" >
   
   <application
      android:allowBackup="true"
      android:icon="@mipmap/ic_launcher"
      android:label="@string/app_name"
      android:theme="@style/AppTheme" >
      
      <activity
         android:name=".MainActivity"
         android:label="@string/app_name" >
         
         <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
         </intent-filter>
         
      </activity>
      
   </application>
</manifest>
Lassen Sie uns versuchen, unsere Anwendung auszuführen. Um die App vom Android-Studio, öffnen Sie eine der Aktivität Dateien Ihres Projekt auszuführen, und klicken Sie auf Eclipse-Run IconAusführen-Symbol in der Werkzeugleiste. Vor dem Start der Anwendung wird Android Studio Display folgende Fenster, um eine Option, wo Sie Ihre Android-Anwendung ausgeführt werden soll.

Nun füllen Sie das Feld mit dem Titel, Thema und den Körper. Dies wurde in der Figur unten gezeigt, -
Android Push Notification Tutorial
Klicken Sie nun auf die Meldungstaste und Sie erhalten eine Benachrichtigung in der Benachrichtigungsleiste oben zu sehen. Es wurde unten -
Android Push Notification Tutorial
Jetzt scrollen Sie die Benachrichtigungsleiste und finden Sie in der Benachrichtigung. Dies wurde in der Figur unten gezeigt, -
Android Push Notification Tutorial

Share on Google Plus

About ptjqatar

This is a short description in the author block about the author. You edit it by entering text in the "Biographical Info" field in the user admin panel.

0 التعليقات:

Kommentar veröffentlichen