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

Android में बैकग्राउंड सर्विस कैसे बनाएं?

Android में बैकग्राउंड सर्विस बनाना

उदाहरण में जाने से पहले, हमें पता होना चाहिए कि Android में सर्विस क्या है। सर्विस UI के साथ इंटरैक्ट किए बिना बैकग्राउंड ऑपरेशन करती है और एक्टिविटी नष्ट होने के बाद भी काम करती रहती है।

यह उदाहरण दर्शाता है कि Android में बैकग्राउंड सर्विस कैसे बनाएं।

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

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

चरण 2 - लेआउट फ़ाइल में कोड जोड़ें

res/layout/activity_main.xml में निम्नलिखित कोड जोड़ें:

<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout xmlns:android="https://schemas.android.com/apk/res/android"
    xmlns:app="https://schemas.android.com/apk/res-auto"
    xmlns:tools="https://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity">
    <TextView
        android:id="@+id/text"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Start Service"
        android:textSize="25sp"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintLeft_toLeftOf="parent"
        app:layout_constraintRight_toRightOf="parent"
        app:layout_constraintTop_toTopOf="parent" />
</android.support.constraint.ConstraintLayout>

उपरोक्त कोड में, हमने TextView लिया है, जब उपयोगकर्ता TextView पर क्लिक करता है, तो यह सर्विस शुरू और बंद करेगा।

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

src/MainActivity.java में निम्नलिखित कोड जोड़ें:

package com.example.andy.myapplication;

import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.TextView;

public class MainActivity extends AppCompatActivity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        final TextView text = findViewById(R.id.text);
        text.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                if (text.getText().toString().equals("Started")) {
                    text.setText("Stopped");
                    stopService(new Intent(MainActivity.this, BackgroundService.class));
                } else {
                    text.setText("Started");
                    startService(new Intent(MainActivity.this, BackgroundService.class));
                }
            }
        });
    }
}

सर्विस शुरू और बंद करने के लिए हमने इंटेंट का उपयोग किया है और कॉन्टेक्स्ट और सर्विस क्लास पास की है। अब पैकेज फोल्डर में BackgroundService.java नाम से सर्विस क्लास बनाएं और निम्नलिखित कोड जोड़ें:

package com.example.andy.myapplication;

import android.app.Service;
import android.content.Intent;
import android.os.IBinder;
import android.widget.Toast;

public class BackgroundService extends Service {
    @Override
    public IBinder onBind(Intent intent) {
        return null;
    }

    @Override
    public int onStartCommand(Intent intent, int flags, int startId) {
        Toast.makeText(this, "Service started by user.", Toast.LENGTH_LONG).show();
        return START_STICKY;
    }

    @Override
    public void onDestroy() {
        super.onDestroy();
        Toast.makeText(this, "Service destroyed by user.", Toast.LENGTH_LONG).show();
    }
}

चरण 4 - Manifest.xml में कोड जोड़ें

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="https://schemas.android.com/apk/res/android"
    package="com.example.andy.myapplication">
    <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">
        <activity android:name=".MainActivity">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <service android:name=".BackgroundService"/>
    </application>
</manifest>

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

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

उपरोक्त परिणाम प्रारंभिक स्क्रीन है, TextView पर क्लिक करें, यह सर्विस शुरू करेगा।

उपरोक्त परिणाम में, सर्विस शुरू हो गई है, अब TextView पर क्लिक करें, यह सर्विस बंद करेगा।

  1. Android सर्विस को हमेशा बैकग्राउंड में कैसे चलाएं? Android सर्विस को हमेशा बैकग्राउंड में कैसे चलाएं?

    Android में फोरग्राउंड सर्विस के साथ बैकग्राउंड एक्सेक्यूशन यह उदाहरण दर्शाता है कि START_STICKY और onTaskRemoved का उपयोग करके एक सर्विस को बैकग्राउंड में कैसे चलाया जाए जो ऐप किल होने पर भी रीस्टार्ट होती है। ⚠ महत्वपूर्ण चेतावनी: Android 8.0 (API 26) से, बैकग्राउंड सर्विसेज पर सख्त प्रतिबंध हैं

  1. एंड्रॉइड ऐप में TextToSpeech कैसे बनाएं? एंड्रॉइड ऐप में TextToSpeech कैसे बनाएं?

    एंड्रॉइड ऐप में टेक्स्ट-टू-स्पीच (TTS) लागू करना यह उदाहरण दिखाता है कि एंड्रॉइड ऐप में TextToSpeech फीचर कैसे जोड़ा जाता है, जिससे ऐप लिखे गए टेक्स्ट को आवाज़ में बदल सके। चरण 1: नया प्रोजेक्ट बनाएं Android Studio खोलें, File → New Project चुनें और आवश्यक विवरण भरकर नया प्रोजेक्ट बनाएं। चरण 2: ले

  1. Facebook पर Android ऐप कैसे बनाएं? Facebook पर Android ऐप कैसे बनाएं?

    Facebook Developer Console पर ऐप बनाकर App ID प्राप्त करने की चरण-दर-चरण प्रक्रिया। चरण 1: Facebook Developer Console पर ऐप बनाएं developers.facebook.com पर जाएं My Apps → Create App चुनें ऐप नाम और ईमेल दर्ज करें Create App ID पर क्लिक करें चरण 2: Android Studio में SDK जोड़ें प्रोजेक्ट-लेवल bu