0Pricing
Flutter Mobile Development · Lektion

Berechtigungen und Sensoren

Fordern Sie Laufzeitberechtigungen an und lesen Sie Gerätesensoren wie den Beschleunigungssensor in Flutter aus, um kontextbezogene, plattformintegrierte Apps zu entwickeln.

Berechtigungen und Sensoren ist eine kostenlose Flutter Mobile Development-Lektion auf CoddyKit. Dies ist Lektion 4 von 4. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des Flutter Mobile Development-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der Flutter Mobile Development-Kurs umfasst insgesamt 4 Lektionen.

Teile dieser Lektion wurden noch nicht übersetzt und werden auf Englisch angezeigt.

Why Permissions & Sensors?

Many platform features — camera, location, sensors — require runtime permission. And sensors like the accelerometer let your app react to physical movement.

The permission_handler Package

The permission_handler package gives a unified API for requesting and checking permissions across Android and iOS.

dependencies:
  permission_handler: ^11.0.0

Checking Status

Check whether a permission is granted before using a feature.

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

Requesting a Permission

Call request() to prompt the user. Always handle a denial gracefully.

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

Permanently Denied

If the user permanently denies, you cannot re-prompt — send them to settings instead.

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

Declaring Permissions

You must also declare permissions natively: AndroidManifest.xml on Android and Info.plist usage descriptions on iOS.

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

Meet the Sensors

The sensors_plus package exposes device motion sensors as streams.

  • Accelerometer
  • Gyroscope
  • Magnetometer
dependencies:
  sensors_plus: ^4.0.0

Reading the Accelerometer

Subscribe to the accelerometer stream to get x, y, z acceleration values.

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

The Gyroscope

The gyroscope reports rotation rate around each axis — useful for tilt and orientation effects.

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

Detecting a Shake

Combine accelerometer axes into a magnitude and compare against a threshold to detect a shake gesture.

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();
}

Cleaning Up Subscriptions

Sensor streams keep firing — cancel the subscription in dispose to save battery.

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

Quick Check

The user permanently denied location. What should your app do?

Recap

You learned permissions and sensors:

  • permission_handler: status, request, openAppSettings
  • Native declarations on Android and iOS
  • sensors_plus accelerometer and gyroscope streams
  • Shake detection and cleanup

Your apps can now responsibly access platform capabilities.

Häufig gestellte Fragen

Ist die Lektion „Berechtigungen und Sensoren“ kostenlos?

Ja — der vollständige Text von „Berechtigungen und Sensoren“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des Flutter Mobile Development-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der Flutter Mobile Development-Kurs umfasst insgesamt 4 Lektionen.

Was lerne ich in „Berechtigungen und Sensoren“?

Fordern Sie Laufzeitberechtigungen an und lesen Sie Gerätesensoren wie den Beschleunigungssensor in Flutter aus, um kontextbezogene, plattformintegrierte Apps zu entwickeln. Du übst Flutter Mobile Development mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.

Brauche ich Erfahrung, um Flutter Mobile Development zu starten?

Keine Vorkenntnisse erforderlich. Flutter Mobile Development auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 4 von 4.

Wie lange dauert die Lektion „Berechtigungen und Sensoren“?

Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.

Kann ich in dieser Flutter Mobile Development-Lektion Code schreiben und ausführen?

Ja. Jede Flutter Mobile Development-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.

Alle Lektionen in diesem Kurs

  1. Platform Channels (MethodChannel)
  2. Geolokalisierungs- und Kamera-Plugins
  3. Integration nativer Benutzeroberflächen
  4. Berechtigungen und Sensoren
← Zurück zu Flutter Mobile Development