2.0.1 • Published 7 years ago

nativescript-flashlight v2.0.1

Weekly downloads
19
License
MIT
Repository
github
Last release
7 years ago

NativeScript Flashlight Plugin

A plugin for using your device's flashlight in NativeScript Android and iOS apps.

NPM version Downloads

Installation

Run the following command from the root of your project:

$ tns plugin add nativescript-flashlight

This command automatically installs the necessary files, as well as stores nativescript-flashlight as a dependency in your project's package.json file.

Usage

To use the flashlight module you must first require() it:

// JavaScript
var flashlight = require("nativescript-flashlight");

Or if you’re using TypeScript, import the module:

// TypeScript
import * as flashlight from "nativescript-flashlight";

After you have a reference to the module you can then call its on(), off(), and toggle() methods. For example, the code below turns your device's flashlight on with an intensity setting of 25%.

The optional intensity is supported only on iOS and is by default 1.0, which is 100% brightness.

// my-page.js
var flashlight = require("nativescript-flashlight");
flashlight.on({
    intensity: 0.25
});

In most cases you'll want to wrap your on() call with a check of isAvailable(), to handle devices where a flashlight is not available:

// my-page.js
var flashlight = require("nativescript-flashlight");
if (flashlight.isAvailable()) {
	flashlight.on();
} else {
	alert("A flashlight is not available on your device.");
}

Examples

The code below creates a button that toggles the device's flashlight:

<!-- my-page.xml -->
<Page loaded="pageLoaded">
    <StackLayout>
        <Button text="{{ flashlightState }}" tap="{{ toggleFlashlight }}" />
    </StackLayout>
</Page>
// my-page.js
var flashlight = require("nativescript-flashlight");
var observable = require("data/observable");
var viewModel = new observable.Observable();

// Set the initial text of the button
viewModel.set("flashlightState", "Turn on");

// A tap handle for the page's button. Toggle the state of the flashlight
// and the button's text
viewModel.toggleFlashlight = function() {
    if (flashlight.isAvailable()) {
        flashlight.toggle({
            intensity: 0.6 // optional, supported on iOS only (default: 1.0 which is 100% brightness)
        });
        viewModel.set("flashlightState", (flashlight.isOn() ? "Turn off" : "Turn on"));
    } else {
        alert("A flashlight is not available on your device.");
    }
};

function pageLoaded(args) {
    var page = args.object;
    page.bindingContext = viewModel;
}

exports.pageLoaded = pageLoaded;
2.0.1

7 years ago

2.0.0

8 years ago

1.2.1

9 years ago

1.2.0

10 years ago

1.1.0

10 years ago

1.0.1

11 years ago

1.0.0

11 years ago

0.2.1

11 years ago

0.2.0

11 years ago

0.1.2

11 years ago

0.1.1

11 years ago

0.1.0

11 years ago