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

Kotlin का उपयोग करके एक साथ सभी एंड्रॉइड एक्टिविटी कैसे बंद करें?

परिचय

कभी-कभी ऐप से पूरी तरह बाहर निकलने के लिए सभी एक्टिविटी को एक साथ बंद करने की आवश्यकता होती है। यह उदाहरण दिखाता है कि Kotlin में इसे कैसे प्राप्त करें।

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

Android Studio में नया प्रोजेक्ट बनाएं।

चरण 2: पहली एक्टिविटी का लेआउट

res/layout/activity_main.xml:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="https://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:padding="4dp">

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerHorizontal="true"
        android:layout_marginTop="70dp"
        android:background="#008080"
        android:padding="5dp"
        android:text="TutorialsPoint"
        android:textColor="#fff"
        android:textSize="24sp"
        android:textStyle="bold" />

    <TextView
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_above="@id/button"
        android:layout_marginBottom="20dp"
        android:gravity="center"
        android:text="एक्टिविटी वन"
        android:textColor="@android:color/black"
        android:textStyle="bold" />

    <Button
        android:id="@+id/button"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerInParent="true"
        android:text="दूसरी एक्टिविटी शुरू करें" />

</RelativeLayout>

चरण 3: MainActivity.kt

package com.example.q28

import android.content.Intent
import android.os.Bundle
import android.widget.Button
import androidx.appcompat.app.AppCompatActivity

class MainActivity : AppCompatActivity() {
    private lateinit var button: Button

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)
        title = "KotlinApp"

        button = findViewById(R.id.button)
        button.setOnClickListener {
            val intent = Intent(this@MainActivity, SecondActivity::class.java)
            startActivity(intent)
        }
    }
}

चरण 4: दूसरी एक्टिविटी बनाएं

activity_second.xml:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="https://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:padding="4dp">

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerHorizontal="true"
        android:layout_marginTop="70dp"
        android:background="#008080"
        android:padding="5dp"
        android:text="TutorialsPoint"
        android:textColor="#fff"
        android:textSize="24sp"
        android:textStyle="bold" />

    <TextView
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_above="@id/terminateButton"
        android:layout_marginBottom="20dp"
        android:gravity="center"
        android:text="एक्टिविटी टू"
        android:textColor="@android:color/black"
        android:textStyle="bold" />

    <Button
        android:id="@+id/terminateButton"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerInParent="true"
        android:text="सभी एक्टिविटी समाप्त करें" />

</RelativeLayout>

SecondActivity.kt:

import android.os.Bundle
import android.widget.Button
import androidx.appcompat.app.AppCompatActivity
import kotlin.system.exitProcess

class SecondActivity : AppCompatActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_second)
        title = "KotlinApp"

        val button: Button = findViewById(R.id.terminateButton)
        button.setOnClickListener {
            // वर्तमान एक्टिविटी समाप्त करें
            finish()
        }
    }

    override fun onDestroy() {
        super.onDestroy()
        // पूरी एप्लिकेशन प्रोसेस समाप्त करें
        exitProcess(0)
    }
}

चरण 5: AndroidManifest.xml

दोनों एक्टिविटी को मैनिफेस्ट में घोषित करना सुनिश्चित करें:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="https://schemas.android.com/apk/res/android"
    package="com.example.q11">

    <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>

        <activity android:name=".SecondActivity" />

    </application>
</manifest>

महत्वपूर्ण नोट

exitProcess(0) का उपयोग करना आमतौर पर अनुशंसित नहीं है क्योंकि यह एंड्रॉइड के सामान्य लाइफसाइकिल को बायपास करता है। बेहतर दृष्टिकोण:

  • finishAffinity() (API 16+) का उपयोग करें - वर्तमान टास्क में सभी एक्टिविटी समाप्त करता है
  • या ActivityCompat.finishAffinity(this) का उपयोग करें
  • या एक्टिविटी लॉन्च करते समय FLAG_ACTIVITY_CLEAR_TASK और FLAG_ACTIVITY_NEW_TASK फ्लैग का उपयोग करें

ऐप चलाएं

पहली एक्टिविटी से दूसरी पर जाएं, फिर "सभी एक्टिविटी समाप्त करें" दबाकर ऐप से बाहर निकलें।

  1. एंड्रॉइड में सभी एक्टिविटीज़ को एक साथ कैसे बंद करें? एंड्रॉइड में सभी एक्टिविटीज़ को एक साथ कैसे बंद करें?

    एंड्रॉइड ऐप में सभी एक्टिविटीज़ को प्रोग्रामेटिकली समाप्त करना यह गाइड एक ऐप की सभी एक्टिविटीज़ को एक साथ बंद करने के विभिन्न तरीकों को दर्शाता है, मॉडर्न बेस्ट प्रैक्टिसेज के साथ। विधि 1: finishAffinity() - API 16+ (अनुशंसित) // किसी भी एक्टिविटी से कॉल करें finishAffinity(); यह वर्तमान टास्क में

  1. - एंड्रॉइड में Kotlin का उपयोग करके GridView स्क्रॉलिंग को कैसे अक्षम करें?

    परिचय यह उदाहरण दर्शाता है कि एंड्रॉइड में Kotlin का उपयोग करके GridView की स्क्रॉलिंग कार्यक्षमता को कैसे अक्षम किया जाए। यह तब उपयोगी होता है जब आप ग्रिड आइटम को स्थिर रखना चाहते हैं और उपयोगकर्ता को स्क्रॉल करने से रोकना चाहते हैं। चरण 1: नया प्रोजेक्ट बनाएं Android Studio में जाएं, File → New P

  1. - Kotlin का उपयोग करके एक साथ सभी एंड्रॉइड एक्टिविटी कैसे बंद करें?

    परिचय कभी-कभी ऐप से पूरी तरह बाहर निकलने के लिए सभी एक्टिविटी को एक साथ बंद करने की आवश्यकता होती है। यह उदाहरण दिखाता है कि Kotlin में इसे कैसे प्राप्त करें। चरण 1: नया प्रोजेक्ट बनाएं Android Studio में नया प्रोजेक्ट बनाएं। चरण 2: पहली एक्टिविटी का लेआउट res/layout/activity_main.xml: <?xml ve