← Alle Erweiterungen

Native Erweiterung

KlugTorch

com.klug.torch.Torch

KEIN APM NÖTIG. Herunterladen und loslegen. Einfacher geht es nicht.

Erkennt, ob ein Gerät ein Kameralicht hat, und schaltet es ein und aus. Unter iOS funktioniert das auch, während die Kamera streamt, ohne den Stream zu unterbrechen.

iOSAndroid Im Produktiveinsatz Ab €19 / Jahr · Kaufen

Überblick

Eine Kamera-App braucht oft Licht: eine Überwachungskamera in einem dunklen Raum, ein Scanner, ein Videoanruf bei Nacht. KlugTorch schaltet das Kameralicht (die LED neben der Rückkamera) ein und aus, während die Kamera weiterläuft.

KlugTorch erkennt zuerst, ob das Gerät überhaupt ein Kameralicht hat. Viele Tablets und manche Smartphones haben keines, sodass eine App dort einfach ihre Licht-Schaltfläche ausblenden kann.

Es funktioniert neben einem laufenden Kamera-Stream. KlugTorch öffnet keine eigene Kamera und konkurriert daher nie mit dem Stream um die Kamera.

Apps, die mit KlugMedia streamen, können auch dessen eingebaute Taschenlampensteuerung nutzen. KlugTorch ist in unseren Apps täglich im Einsatz, unserem Praxisbeweis.

Funktionen

  • Eigenständig: eine ANE, keine Kernbibliothek und keine abhängigen ANEs, die Sie ergänzen müssten
  • Erkennt, ob das Gerät ein Kameralicht hat
  • Kameralicht mit einem Aufruf ein- und ausschalten
  • Funktioniert unter iOS, während die Kamera streamt, ohne Unterbrechung
  • Liest den aktuellen Zustand des Lichts
  • Ein Change-Ereignis nach jedem Schalten, auch wenn es fehlschlägt
  • Eine API für iOS und Android

Unterstützte Plattformen

iOS arm64
Android arm64 · armv7

Auf Geräten ohne Kameralicht und auf anderen Plattformen gibt isSupported false zurück, sodass derselbe Code in jeder App bleiben kann.

Erste Schritte

Fügen Sie die Erweiterung Ihrem Application Descriptor hinzu:

app.xml
<extensions>
    <extensionID>com.klug.torch.Torch</extensionID>
</extensions>

Das Licht sitzt neben der Rückkamera, daher sollte die Rückkamera die aktive sein.

Codebeispiele

Drei vollständige Abläufe. on() und off() kehren sofort zurück; nach jedem Aufruf folgt ein Change-Ereignis, und mode nennt das Ergebnis. Vollständige Dokumentation →

1 · Die Licht-Schaltfläche nur zeigen, wo es ein Licht gibt
Setup.as
import com.klug.torch.Torch;
import flash.events.Event;

var torch:Torch = Torch.getInstance();

// iOS: true if the default (back) camera has a torch.
// Android 6+: true if a back-facing camera has a flash.
// False on devices without a light and on other platforms.
lightButton.visible = torch.isSupported;   // lightButton: your app's toggle button
2 · Das Licht schalten und dem Ergebnis folgen
Light.as
var wantLight:Boolean = false;

torch.addEventListener( Event.CHANGE, onTorchChange );   // after every on() / off()

function setLight( on:Boolean ):void
{
    wantLight = on;
    if ( on ) torch.on();
    else      torch.off();
}

function onTorchChange( e:Event ):void
{
    // the event carries no detail: read mode for the current state
    lightButton.selected = torch.mode;

    if ( torch.mode != wantLight )   // the light could not be switched
        showMessage( "The light is not available right now." );   // your app
}
Unter Android schaltet das System das Licht nicht, solange ein anderer Teil der App die Kamera geöffnet hält, zum Beispiel ein Stream aus der flash.media.Camera von AIR. on() endet dann mit einem Change-Ereignis, und mode bleibt false. Apps, die mit KlugMedia streamen, verwenden stattdessen dessen setTorch().
3 · Das Licht ausschalten, wenn die Kamera stoppt
Stream.as
function stopStreaming():void
{
    if ( torch.mode ) setLight( false );   // first the light, then the camera
    stopCamera();                          // your app's stream shutdown
    torch.removeEventListener( Event.CHANGE, onTorchChange );
}

API-Übersicht

Torch.getInstance()Gibt die einzige Instanz zurück.
isSupportedTrue nur, wenn das Gerät ein nutzbares Kameralicht hat: Unter iOS hat die Standardkamera (hinten) eine Taschenlampe, unter Android 6+ hat eine nach hinten gerichtete Kamera einen Blitz.
on()Schaltet das Kameralicht ein; ein Change-Ereignis folgt.
off()Schaltet das Kameralicht aus; ein Change-Ereignis folgt.
modeTrue, solange das Licht an ist. iOS liest den Taschenlampenzustand der Kamera; Android meldet den Zustand des letzten erfolgreichen on() / off().

Ereignisse

Event.CHANGE ("change")Wird nach jedem on() und off() ausgelöst, auch wenn das Licht nicht geschaltet werden konnte. Lesen Sie mode für das Ergebnis.

KlugTorch kaufen

Eine Jahreslizenz für eine AIR-Anwendung, mit allen Updates für 12 Monate. Nach der Zahlung erhalten Sie die Erweiterung, die ActionScript-Bibliothek und die Dokumentation per E-Mail, in der Regel innerhalb eines Werktags. Lizenz und Bedingungen

Simple
€19 / Jahr
  • Lizenz für eine AIR-Anwendung
  • Alle Updates für 12 Monate
  • Kein Support
Simple kaufen
Standard
€149 / Jahr
  • Lizenz für eine AIR-Anwendung
  • Alle Updates für 12 Monate
  • Antwort per E-Mail innerhalb von 7 Tagen
Standard kaufen
Priority
€299 / Jahr
  • Lizenz für eine AIR-Anwendung
  • Alle Updates für 12 Monate
  • Antwort per E-Mail innerhalb von 48 Stunden
Priority kaufen
Die Steuern werden an der Kasse von Link (Stripe) berechnet. Die Application-ID Ihrer AIR-App geben Sie beim Bezahlen ein.

Voraussetzungen

AIR SDK51.x (HARMAN)
iOSiOS 17 oder neuer
AndroidAndroid 6.0 (API 23) oder neuer
BerechtigungenKeine eigenen
HardwareEin Kameralicht neben der Rückkamera