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

Android में GPS प्रोग्रामेटिकली कैसे इनेबल/डिसेबल करें?

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

⚠️ महत्वपूर्ण: सुरक्षा कारणों से Android ऐप्स को सीधे GPS ऑन/ऑफ करने की अनुमति नहीं देता (Android 2.3+ से)। ऐप केवल यूजर को लोकेशन सेटिंग्स स्क्रीन पर भेज सकता है।

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

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

चरण 2: लेआउट XML

res/layout/activity_main.xml - बटन और स्टेटस TextView:

<?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"
    tools:context="MainActivity">
    <Button
        android:id="@+id/button1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignTop="@+id/textView1"
        android:layout_centerHorizontal="true"
        android:layout_marginTop="70dp"
        android:text="Click Here to Enable/Disable GPS location service!" />
    <TextView
        android:id="@+id/textView1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true"
        android:layout_centerHorizontal="true"
        android:layout_marginTop="132dp"
        android:gravity="center"
        android:text="Location service status shows here"
        android:textAppearance="?android:attr/textAppearanceLarge" />
</RelativeLayout>

चरण 3: MainActivity.java में GPS स्टेटस चेक और सेटिंग्स खोलें

src/MainActivity.java - LocationManager और Settings.ACTION_LOCATION_SOURCE_SETTINGS:

import android.content.Context;
import android.content.Intent;
import android.location.LocationManager;
import android.provider.Settings;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;

public class MainActivity extends AppCompatActivity {
    Button button;
    Context context;
    Intent intent1;
    TextView textview;
    LocationManager locationManager;
    boolean gpsStatus;

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

        button = findViewById(R.id.button1);
        textview = findViewById(R.id.textView1);
        context = getApplicationContext();

        checkGpsStatus();

        button.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                // यूजर को लोकेशन सेटिंग्स स्क्रीन पर ले जाएं
                intent1 = new Intent(Settings.ACTION_LOCATION_SOURCE_SETTINGS);
                startActivity(intent1);
            }
        });
    }

    public void checkGpsStatus() {
        locationManager = (LocationManager) context.getSystemService(Context.LOCATION_SERVICE);
        assert locationManager != null;
        gpsStatus = locationManager.isProviderEnabled(LocationManager.GPS_PROVIDER);

        if (gpsStatus) {
            textview.setText("GPS Is Enabled");
        } else {
            textview.setText("GPS Is Disabled");
        }
    }

    @Override
    protected void onResume() {
        super.onResume();
        checkGpsStatus(); // वापस आने पर स्टेटस अपडेट करें
    }
}

चरण 4: AndroidManifest.xml में परमिशन

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="https://schemas.android.com/apk/res/android" package="app.com.sample">
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
    <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>
    </application>
</manifest>

ऐप चलाएं

GPS स्टेटस दिखेगा। बटन दबाने पर लोकेशन सेटिंग्स खुलेगी जहां यूजर GPS टॉगल कर सकता है।

Android में GPS प्रोग्रामेटिकली कैसे इनेबल/डिसेबल करें?

Android में GPS प्रोग्रामेटिकली कैसे इनेबल/डिसेबल करें?

Android में GPS प्रोग्रामेटिकली कैसे इनेबल/डिसेबल करें?

  1. Android में इनकमिंग कॉल को प्रोग्रामेटिकली कैसे उठाएं? Android में इनकमिंग कॉल को प्रोग्रामेटिकली कैसे उठाएं?

    Android में इनकमिंग कॉल प्रोग्रामेटिकली उठाना ⚠️ महत्वपूर्ण चेतावनी: Android 4.1 (API 16) से, थर्ड-पार्टी ऐप्स प्रोग्रामेटिकली कॉल नहीं उठा सकते। यह सुरक्षा प्रतिबंध है। केवल सिस्टम ऐप्स या डिफॉल्ट डायलर (CALL_PRIVILEGED परमिशन के साथ) ऐसा कर सकते हैं। इतिहास और वर्तमान स्थिति Android वर्जनकॉल उठा

  1. Android में ScrollView को प्रोग्रामेटिकली कैसे डिसेबल करें? Android में ScrollView को प्रोग्रामेटिकली कैसे डिसेबल करें?

    परिचय यह उदाहरण दर्शाता है कि Android में ScrollView को प्रोग्रामेटिक रूप से कैसे डिसेबल किया जाए। हम OnTouchListener का उपयोग करके टच इवेंट को इंटरसेप्ट करेंगे। चरण 1: नया प्रोजेक्ट बनाएं Android Studio में File → New Project के माध्यम से नया प्रोजेक्ट बनाएं। चरण 2: लेआउट XML में ScrollView res/l

  1. Android पर Google Feed इनेबल या डिसेबल करें: चरण-दर-चरण गाइड Android पर Google Feed इनेबल या डिसेबल करें: चरण-दर-चरण गाइड

    Google Feed Google की एक बहुत ही दिलचस्प और उपयोगी विशेषता है। यह आपकी रुचियों के आधार पर विशेष रूप से आपके लिए क्यूरेट की गई खबरों और सूचनाओं का संग्रह है। Google Feed आपको उन कहानियों और समाचार स्निपेट्स के साथ प्रदान करता है जो आपके लिए आकर्षक हो सकते हैं। उदाहरण के लिए, आपके द्वारा फॉलो की जाने