LoginSignup
8
8

More than 5 years have passed since last update.

[Monaca] CordovaプラグインとOnsen UIの利用について

Posted at

Monacaでは、CordovaプラグインとOnsen UIを使用することができます。

Monacaで開発しているアプリでCordovaプラグインやOnsen UIを利用する場合は、アプリ内でCordovaの準備およびOnsen UIの準備を確認する必要があります。Cordovaの準備およびOnsen UIの準備が完了する前に機能にアクセスしても、正しい結果を得ることはできません。

Cordovaの準備完了を確認する

Cordovaの準備の完了を確認するには、「deviceready」イベントで確認することができます。
index.html内での例です。

<script>
    document.addEventListener("deviceready", onDeviceReady, false);
    function onDeviceReady() {
        alert("onDeviceReady");
    }
</script>

document.addEventListenerに「deviceready」を設定することで、Cordovaの準備が完了したことを確認することができます。

Onsen UIの準備完了を確認する

Onsen UIの準備の完了を確認するには、「ons.ready()」で確認することができます。
index.html内での例です。

<script>
    ons.ready(function() {
        alert(“ons.ready”);
    });
</script>

アプリでプッシュ通知を利用している場合

プッシュ通知を利用しているアプリでは、プッシュ通知のsetHandler()内で、CordovaプラグインやOnsen UIの機能を利用する場合、

<script>
    monaca.cloud.Push.setHandler(function(data) {
        alert(“Cordovaプラグインの処理を記述します。”);
        alert(“Onsen UIの処理を記述します。”);
    });
</script>

と記述した場合、CordovaプラグインやOnsen UIの準備ができていない場合は、処理が失敗してしまいます。CordovaプラグインやOnsen UIを利用している場合は、

<script>
    document.addEventListener("deviceready", onDeviceReady, false);
    function onDeviceReady() {
        monaca.cloud.Push.setHandler(function(data) {
            alert(“Cordovaプラグインの処理を記述します。”);
        });
    }
</script>

<script>
    ons.ready(function() {
        monaca.cloud.Push.setHandler(function(data) {
            alert(“Onsen UIの処理を記述します。”);
        });
    });
</script>

のように、CordovaプラグインやOnsen UIの準備が整った後に処理を記述する必要があります。

ons.ready()は、Onsen UIコンポーネントの読み込みが完了し、devicereadyイベントの後に起動しますので、CordovaプラグインとOnsen UIを両方利用している場合は、下記のようにons.ready()内で処理をまとめることが可能です。

<script>
    ons.ready(function() {
        monaca.cloud.Push.setHandler(function(data) {
            alert(“Cordovaプラグインの処理を記述します。”);
            alert(“Onsen UIの処理を記述します。”);
        });
    });
</script>

処理のタイミングを正しく把握することにより、Monacaでの効率の良いアプリ開発に役立ててください。

Monacaのイベントの発生順序につきましては、下記も参考にしてください。
[Monaca] イベントの発生順序について

8
8
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
8
8