Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> Android

ऐप खोले बिना Android नोटिफिकेशन एक्शन कैसे इम्प्लीमेंट करें?

ऐप खोले बिना Android नोटिफिकेशन एक्शन इम्प्लीमेंट करना

यह उदाहरण दर्शाता है कि ऐप खोले बिना Android नोटिफिकेशन एक्शन कैसे इम्प्लीमेंट किया जाता है।

चरण 1 - नया प्रोजेक्ट बनाएं

Android Studio में File → New Project पर जाएं और नया प्रोजेक्ट बनाने के लिए सभी आवश्यक विवरण भरें।

चरण 2 - res/layout/activity_main.xml में कोड जोड़ें

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="https://schemas.android.com/apk/res/android"
    xmlns:tools="https://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:padding="16dp"
    tools:context=".MainActivity">
    <Button
        android:onClick="createNotification"
        android:text="create notification"
        android:layout_centerInParent="true"
        android:layout_width="match_parent"
        android:layout_height="wrap_content" />
</RelativeLayout>

चरण 3 - src/MainActivity.java में कोड जोड़ें

package app.tutorialspoint.com.notifyme;
import android.app.NotificationChannel;
import android.app.NotificationManager;
import android.app.PendingIntent;
import android.content.Intent;
import android.os.Bundle;
import android.support.v4.app.NotificationCompat;
import android.support.v7.app.AppCompatActivity;
import android.view.View;

public class MainActivity extends AppCompatActivity {
    public static final String NOTIFICATION_CHANNEL_ID = "10001";
    private final static String default_notification_channel_id = "default";

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
    }

    public void createNotification(View view) {
        int NOTIFICATION_ID = (int) System.currentTimeMillis();
        PendingIntent pendingIntent = PendingIntent.getActivity(this, 0, new Intent(), 0);
        Intent buttonIntent = new Intent(this, NotificationBroadcastReceiver.class);
        buttonIntent.putExtra("notificationId", NOTIFICATION_ID);
        PendingIntent btPendingIntent = PendingIntent.getBroadcast(this, 0, buttonIntent, 0);
        NotificationManager mNotificationManager = (NotificationManager) getSystemService(NOTIFICATION_SERVICE);
        NotificationCompat.Builder mBuilder = new NotificationCompat.Builder(getApplicationContext(), default_notification_channel_id);
        mBuilder.setContentTitle("My Notification");
        mBuilder.setContentIntent(pendingIntent);
        mBuilder.addAction(R.drawable.ic_launcher_foreground, "Cancel", btPendingIntent);
        mBuilder.setContentText("Notification Listener Service Example");
        mBuilder.setSmallIcon(R.drawable.ic_launcher_foreground);
        mBuilder.setAutoCancel(true);
        mBuilder.setDeleteIntent(getDeleteIntent());
        if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.O) {
            int importance = NotificationManager.IMPORTANCE_HIGH;
            NotificationChannel notificationChannel = new NotificationChannel(NOTIFICATION_CHANNEL_ID, "NOTIFICATION_CHANNEL_NAME", importance);
            mBuilder.setChannelId(NOTIFICATION_CHANNEL_ID);
            assert mNotificationManager != null;
            mNotificationManager.createNotificationChannel(notificationChannel);
        }
        assert mNotificationManager != null;
        mNotificationManager.notify(NOTIFICATION_ID, mBuilder.build());
    }

    protected PendingIntent getDeleteIntent() {
        Intent intent = new Intent(MainActivity.this, NotificationBroadcastReceiver.class);
        intent.setAction("notification_cancelled");
        return PendingIntent.getBroadcast(MainActivity.this, 0, intent, PendingIntent.FLAG_CANCEL_CURRENT);
    }
}

चरण 4 - src/NotificationBroadcastReceiver.java में कोड जोड़ें

package app.tutorialspoint.com.notifyme;
import android.app.NotificationManager;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;

public class NotificationBroadcastReceiver extends BroadcastReceiver {
    @Override
    public void onReceive(Context context, Intent intent) {
        int notificationId = intent.getIntExtra("notificationId", 0);
        NotificationManager manager = (NotificationManager) context.getSystemService(Context.NOTIFICATION_SERVICE);
        manager.cancel(notificationId);
    }
}

चरण 5 - AndroidManifest.xml में कोड जोड़ें

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="https://schemas.android.com/apk/res/android"
    package="app.tutorialspoint.com.notifyme">
    <uses-permission android:name="android.permission.VIBRATE" />
    <uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
    <application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:roundIcon="@mipmap/ic_launcher_round"
        android:supportsRtl="true"
        android:theme="@style/AppTheme">
        <receiver
            android:name=".NotificationBroadcastReceiver"
            android:enabled="true"
            android:exported="true">
        </receiver>
        <activity android:name=".MainActivity">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>
</manifest>

एप्लिकेशन चलाएं

अपने Android डिवाइस को कंप्यूटर से कनेक्ट करें। Android Studio से ऐप चलाएं और अपने मोबाइल डिवाइस पर डिफ़ॉल्ट स्क्रीन देखें।


  1. एंड्रॉइड ऐप का बिल्ड वर्जन नंबर कैसे प्राप्त करें? एंड्रॉइड ऐप का बिल्ड वर्जन नंबर कैसे प्राप्त करें?

    एंड्रॉइड में ऐप वर्जन नाम और कोड प्राप्त करें यह उदाहरण दर्शाता है कि BuildConfig का उपयोग करके ऐप का वर्जन नाम और वर्जन कोड कैसे प्राप्त करें। चरण 1: नया प्रोजेक्ट बनाएं Android Studio में File → New Project पर जाएं। चरण 2: लेआउट में TextViews जोड़ें res/layout/activity_main.xml: <?xml version

  1. एंड्रॉइड में एक्शन बार की ऊंचाई कैसे प्राप्त करें? एंड्रॉइड में एक्शन बार की ऊंचाई कैसे प्राप्त करें?

    Toolbar.getHeight() के साथ एक्शन बार ऊंचाई मापें यह उदाहरण दर्शाता है कि Toolbar/ActionBar की रनटाइम ऊंचाई पिक्सेल में कैसे प्राप्त करें। चरण 1: नया प्रोजेक्ट बनाएं Android Studio में File → New Project चुनें। चरण 2: लेआउट में Toolbar और बटन res/layout/activity_main.xml: <?xml version=1.0 encod

  1. एंड्रॉइड पर फेसबुक का उपयोग कैसे करें बिना सभी आक्रामक अनुमतियों के एंड्रॉइड पर फेसबुक का उपयोग कैसे करें बिना सभी आक्रामक अनुमतियों के

    क्या आप अपनी गोपनीयता को लेकर चिंतित हैं? NSA और निजी उपयोगकर्ता डेटा साझा करने के बारे में इन दिनों सभी बातों के साथ, यह स्वाभाविक है कि आप ऑनलाइन आपकी जानकारी के साथ क्या होता है, इसके बारे में चिंतित हों। यहां तक कि आपका स्मार्टफोन भी आपको जितना आप जानते हैं उससे अधिक तरीकों से ट्रैक करता है। फेस