← Alla tillägg

Inbyggt tillägg

KlugTorch

com.klug.torch.Torch

INGEN APM BEHÖVS. Ladda ner och njut. Det blir inte enklare än så.

Identifierar om en enhet har kameralampa och tänder och släcker den. På iOS fungerar detta även medan kameran streamar, utan att avbryta strömmen.

iOSAndroid I produktion Från €19 / år · Köp

Översikt

En kameraapp behöver ofta ljus: en övervakningskamera i ett mörkt rum, en skanner, ett videosamtal på natten. KlugTorch tänder och släcker kameralampan (LED:en bredvid bakkameran) medan kameran fortsätter att köra.

KlugTorch identifierar först om enheten över huvud taget har en kameralampa. Många surfplattor och vissa telefoner saknar en, så att en app helt enkelt kan dölja sin lampknapp där.

Det fungerar vid sidan av en pågående kameraström. KlugTorch öppnar ingen egen kamera och konkurrerar därför aldrig med strömmen om kameran.

Appar som streamar med KlugMedia kan också använda dess inbyggda lampkontroll. KlugTorch används dagligen i våra appar, vårt proof of concept.

Funktioner

  • Fristående: ett ANE, inget kärnbibliotek eller beroende-ANE:er att lägga till
  • Identifierar om enheten har kameralampa
  • Tänd och släck kameralampan med ett enda anrop
  • Fungerar medan kameran streamar på iOS, utan avbrott
  • Läser lampans aktuella tillstånd
  • En ändringshändelse efter varje växling, även när den misslyckas
  • Ett API för iOS och Android

Plattformar som stöds

iOS arm64
Android arm64 · armv7

På enheter utan kameralampa, och på andra plattformar, returnerar isSupported false, så att samma kod kan ligga kvar i alla appar.

Kom igång

Lägg till tillägget i din applikationsbeskrivning (application descriptor):

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

Lampan sitter bredvid bakkameran, så bakkameran bör vara den aktiva.

Kodexempel

Tre kompletta flöden. on() och off() returnerar direkt; en ändringshändelse följer efter varje anrop, och mode talar om resultatet. Fullständig dokumentation →

1 · Visa lampknappen bara där det finns en lampa
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 · Slå på lampan och följ resultatet
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
}
På Android slår systemet inte på lampan medan en annan del av appen håller kameran öppen, till exempel en ström från AIR:s flash.media.Camera. on() slutar då med en ändringshändelse och mode förblir false. Appar som streamar med KlugMedia använder i stället dess setTorch().
3 · Släck lampan när kameran stoppas
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-översikt

Torch.getInstance()Returnerar den enda instansen.
isSupportedTrue bara om enheten har en användbar kameralampa: på iOS har standardkameran (bakre) en lampa, på Android 6+ har en bakåtvänd kamera blixt.
on()Tänder kameralampan; en ändringshändelse följer.
off()Släcker kameralampan; en ändringshändelse följer.
modeTrue medan lampan är tänd. iOS läser kamerans lampstatus; Android rapporterar tillståndet efter det senaste lyckade on() / off().

Händelser

Event.CHANGE ("change")Skickas efter varje on() och off(), även när lampan inte kunde växlas. Läs mode för resultatet.

Köp KlugTorch

En årslicens för en AIR-applikation, med alla uppdateringar i 12 månader. Efter betalning får du tillägget, ActionScript-biblioteket och dokumentationen via e-post, vanligtvis inom en arbetsdag. Licens och villkor

Enkel
€19 / år
  • Licens för en AIR-applikation
  • Alla uppdateringar i 12 månader
  • Ingen support
Köp Enkel
Standard
€149 / år
  • Licens för en AIR-applikation
  • Alla uppdateringar i 12 månader
  • Svar via e-post inom 7 dagar
Köp Standard
Prioritet
€299 / år
  • Licens för en AIR-applikation
  • Alla uppdateringar i 12 månader
  • Svar via e-post inom 48 timmar
Köp Prioritet
Skatter beräknas i kassan av Link (Stripe). Du anger application ID för din AIR-app under köpet.

Krav

AIR SDK51.x (HARMAN)
iOSiOS 17 eller senare
AndroidAndroid 6.0 (API 23) eller senare
BehörigheterInga egna
HårdvaraEn kameralampa bredvid bakkameran