質問編集履歴

1

情報の追加

2018/11/20 04:35

投稿

giwagiwagiwa
giwagiwagiwa

スコア34

test CHANGED
File without changes
test CHANGED
@@ -1,8 +1,12 @@
1
1
  Monaca + Ionic を使用してアプリ開発を行っています。
2
2
 
3
- cordova-plugin-local-notifications使用してローカル通知を表示して
3
+ iBeaconの電波受信してローカル通知を表示⇒ローカル通知をタップすると
4
4
 
5
- 通知をタップすると特定の画面を表示させるという風に考えてす。
5
+ 専用の画面に遷移させるというような機能を実装したす。
6
+
7
+
8
+
9
+ ローカル通知にはcordova-plugin-local-notificationsを使用しています。
6
10
 
7
11
 
8
12
 
@@ -55,3 +59,57 @@
55
59
  でも実現可能なのでしょうか。
56
60
 
57
61
  [https://teratail.com/questions/100237](https://teratail.com/questions/100237)
62
+
63
+
64
+
65
+ 追記=====================================
66
+
67
+
68
+
69
+ devicereadyからcordova.plugins.notification.local.launchDetails
70
+
71
+ の値を参照すれば通知から起動されたかは判断できるということがわかりました。
72
+
73
+ ただ、アプリ起動中(バックグラウンド・フォアグラウンド)にローカル通知をタップしてもこの判定は動かないので困っています。。。
74
+
75
+ アプリが起動していないとiBeaconの電波受信もできずローカル通知自体が来ないです。
76
+
77
+ 通知が来た状態でアプリのプロセスをキルし、通知からアプリ起動すると以下のプログラムで動作しました。
78
+
79
+ ```Js
80
+
81
+ function onLoad() {
82
+
83
+ console.log('onLoad');
84
+
85
+ window.skipLocalNotificationReady = true;
86
+
87
+
88
+
89
+ document.addEventListener("deviceready", onDeviceReady, false);
90
+
91
+ }
92
+
93
+
94
+
95
+ function onDeviceReady() {
96
+
97
+ //通知から起動してきたかを判定
98
+
99
+ cordova.plugins.notification.local.fireQueuedEvents();
100
+
101
+ console.log('launchDetails-notification:'+cordova.plugins.notification.local.launchDetails);
102
+
103
+ var launchDetails = cordova.plugins.notification.local.launchDetails
104
+
105
+ if(launchDetails){
106
+
107
+ $('#LaunchMsg').text('LaunchApp from notification');
108
+
109
+ }
110
+
111
+ }
112
+
113
+ ```
114
+
115
+ 何か良い方法はないでしょうか。