Flutter मोबाइल विकास · पाठ

अनुमतियाँ और सेंसर

Flutter में रनटाइम अनुमतियाँ माँगना और एक्सेलेरोमीटर जैसे डिवाइस सेंसर पढ़ना सीखिए, ताकि संदर्भ-सचेत और प्लेटफ़ॉर्म-संगत ऐप बनाए जा सकें।

पाठ 4, कुल 4 में से13 चरण

अनुमतियाँ और सेंसर, CoddyKit पर Flutter मोबाइल विकास का एक निःशुल्क पाठ है। यह 4 में से 4वाँ पाठ है। इस अध्ययन पथ के 3 तक कोई भी पाठ पूरा पढ़ना निःशुल्क है — इसके बाद CoddyKit PRO हर पाठ अनलॉक करता है, साथ ही अंतर्निर्मित कोड संपादक और चौबीसों घंटे एआई शिक्षक के साथ व्यावहारिक अभ्यास भी उपलब्ध कराता है। यह Flutter मोबाइल विकास सीखने के मार्ग का हिस्सा है और आपकी प्रगति वेब तथा CoddyKit ऐप पर सिंक होती रहती है। Flutter मोबाइल विकास पाठ्यक्रम में कुल 4 पाठ शामिल हैं।

अनुमतियाँ और सेंसर क्यों?

कैमरा, स्थान और सेंसर जैसी कई प्लेटफ़ॉर्म सुविधाओं के लिए रनटाइम अनुमति आवश्यक होती है। साथ ही, एक्सेलेरोमीटर जैसे सेंसर आपके ऐप को भौतिक गति पर प्रतिक्रिया करने देते हैं।

permission_handler पैकेज

permission_handler पैकेज Android और iOS पर अनुमतियाँ माँगने और जाँचने के लिए एकीकृत API प्रदान करता है।

dependencies:
  permission_handler: ^11.0.0

स्थिति जाँचना

किसी सुविधा का उपयोग करने से पहले जाँच लें कि अनुमति दी गई है या नहीं।

final status = await Permission.camera.status;
if (status.isGranted) {
  openCamera();
}

अनुमति माँगना

उपयोगकर्ता को संकेत देने के लिए request() कॉल करें। अस्वीकृति को हमेशा सहज ढंग से संभालें।

final result = await Permission.location.request();
if (result.isGranted) {
  startTracking();
}

स्थायी रूप से अस्वीकृत

यदि उपयोगकर्ता अनुमति को स्थायी रूप से अस्वीकार कर देता है, तो आप दोबारा अनुरोध नहीं कर सकते — इसके बजाय उसे सेटिंग्स पर भेजें।

if (status.isPermanentlyDenied) {
  await openAppSettings();
}

अनुमतियाँ घोषित करना

आपको अनुमतियाँ मूल रूप से भी घोषित करनी होंगी: Android पर AndroidManifest.xml में और iOS पर Info.plist में उपयोग-विवरण के रूप में।

<!-- Android -->
<uses-permission android:name="android.permission.CAMERA" />
<!-- iOS Info.plist -->
<key>NSCameraUsageDescription</key>
<string>We need the camera to scan codes</string>

सेंसरों से परिचय

sensors_plus पैकेज डिवाइस के गति-सेंसरों को स्ट्रीम के रूप में उपलब्ध कराता है।

  • एक्सेलेरोमीटर
  • जाइरोस्कोप
  • मैग्नेटोमीटर
dependencies:
  sensors_plus: ^4.0.0

एक्सेलेरोमीटर से मान पढ़ना

x, y और z त्वरण मान पाने के लिए एक्सेलेरोमीटर स्ट्रीम की सदस्यता लें।

accelerometerEventStream().listen((event) {
  print('x: ' + event.x.toString() + ' y: ' + event.y.toString());
});

जाइरोस्कोप

जाइरोस्कोप प्रत्येक अक्ष के चारों ओर घूर्णन दर बताता है — यह झुकाव और अभिविन्यास प्रभावों के लिए उपयोगी है।

gyroscopeEventStream().listen((event) {
  print('rotation: ' + event.x.toString());
});

झटका पहचानना

झटके के इशारे को पहचानने के लिए एक्सेलेरोमीटर की अक्षों को मिलाकर परिमाण निकालें और उसकी तुलना एक सीमा से करें।

import 'dart:math';

void onEvent(AccelerometerEvent e) {
  final magnitude = sqrt(e.x * e.x + e.y * e.y + e.z * e.z);
  if (magnitude > 15) onShake();
}

सदस्यताएँ साफ़ करना

सेंसर स्ट्रीम लगातार सक्रिय रहती हैं — बैटरी बचाने के लिए dispose में सदस्यता रद्द करें।

late StreamSubscription sub;
@override
void dispose() {
  sub.cancel();
  super.dispose();
}

त्वरित जाँच

उपयोगकर्ता ने स्थान की अनुमति स्थायी रूप से अस्वीकार कर दी है। आपके ऐप को क्या करना चाहिए?

पुनरावलोकन

आपने अनुमतियों और सेंसरों के बारे में सीखा:

  • permission_handler: स्थिति, अनुरोध और openAppSettings
  • Android और iOS पर मूल घोषणाएँ
  • sensors_plus के एक्सेलेरोमीटर और जाइरोस्कोप स्ट्रीम
  • झटका पहचानना और सफ़ाई करना

अब आपके ऐप प्लेटफ़ॉर्म की क्षमताओं तक ज़िम्मेदारी से पहुँच सकते हैं।

शुरुआत निःशुल्क

एआई शिक्षक के साथ Dart सीखें — निःशुल्क

अपने ब्राउज़र में वास्तविक कोड लिखें और चलाएँ, चौबीसों घंटे एआई शिक्षक से तुरंत सहायता पाएँ, और वेब या ऐप पर वहीं से शुरू करें जहाँ आपने छोड़ा था।

पाठ्यक्रम
22
पाठ
88

अक्सर पूछे जाने वाले प्रश्न

क्या “अनुमतियाँ और सेंसर” पाठ निःशुल्क है?

हाँ — Flutter मोबाइल विकास अध्ययन पथ के 3 तक कोई भी पाठ, जिसमें “अनुमतियाँ और सेंसर” भी शामिल है, यहाँ वेब पर पूरा पढ़ना निःशुल्क है। इसके बाद CoddyKit PRO हर पाठ अनलॉक करता है, साथ ही अंतर्निर्मित कोड संपादक और चौबीसों घंटे एआई शिक्षक के साथ इंटरैक्टिव अभ्यास भी उपलब्ध कराता है। Flutter मोबाइल विकास पाठ्यक्रम में कुल 4 पाठ शामिल हैं।

“अनुमतियाँ और सेंसर” में मैं क्या सीखूँगा?

Flutter में रनटाइम अनुमतियाँ माँगना और एक्सेलेरोमीटर जैसे डिवाइस सेंसर पढ़ना सीखिए, ताकि संदर्भ-सचेत और प्लेटफ़ॉर्म-संगत ऐप बनाए जा सकें। आप ब्राउज़र में सीधे चलाए जाने वाले व्यावहारिक कोड के साथ Flutter मोबाइल विकास का अभ्यास करते हैं, और पाठ पूरा करते समय 24/7 एआई ट्यूटर आपके प्रश्नों के उत्तर देता है।

क्या Flutter मोबाइल विकास शुरू करने के लिए मुझे किसी अनुभव की आवश्यकता है?

पहले के अनुभव की आवश्यकता नहीं है। CoddyKit पर Flutter मोबाइल विकास शुरुआती से लेकर उन्नत शिक्षार्थियों तक सभी के लिए व्यवस्थित किया गया है, इसलिए आप यहीं से या शुरुआत से सीखना शुरू कर सकते हैं और अपनी गति से आगे बढ़ सकते हैं। यह 4 में से 4वाँ पाठ है।

“अनुमतियाँ और सेंसर” पाठ पूरा करने में कितना समय लगता है?

CoddyKit का अधिकांश पाठ लगभग 5–10 मिनट में पूरा हो जाता है। हर पाठ छोटा और संवादात्मक है, इसलिए आप लगातार प्रगति करते हैं और वेब या ऐप पर वहीं से सीखना जारी रख सकते हैं जहाँ आपने छोड़ा था।

क्या मैं इस Flutter मोबाइल विकास पाठ में कोड लिख और चला सकता हूँ?

हाँ। हर Flutter मोबाइल विकास पाठ में एक अंतर्निर्मित कोड संपादक शामिल है, जिससे आप सीधे अपने ब्राउज़र में वास्तविक कोड लिख और चला सकते हैं और तुरंत एआई प्रतिक्रिया पा सकते हैं—स्थानीय सेटअप की आवश्यकता नहीं है।

इस पाठ्यक्रम के सभी पाठ

  1. प्लेटफ़ॉर्म चैनल (MethodChannel)
  2. भौगोलिक स्थान और कैमरा प्लगइन
  3. मूल UI एकीकरण
  4. अनुमतियाँ और सेंसर
← Flutter मोबाइल विकास पर वापस जाएँ