質問編集履歴

2

追記を追加

2020/03/22 08:15

投稿

mi_ho
mi_ho

スコア34

test CHANGED
File without changes
test CHANGED
@@ -127,3 +127,9 @@
127
127
  }
128
128
 
129
129
  ```
130
+
131
+
132
+
133
+ ### 追記(2020/3/22)
134
+
135
+ popupを立ち上げた状態だと,通信に成功しました.おそらく,popupページは常に立ち上がっているわけではないので,popupを展開させていない状態では,popupでメッセージを受信できなかったんだと思います.popupを展開させていないときでも,メッセージを受信できるようにするには,どのようにすればよいのでしょう.

1

補足情報の追記

2020/03/22 08:15

投稿

mi_ho
mi_ho

スコア34

test CHANGED
File without changes
test CHANGED
@@ -28,6 +28,8 @@
28
28
 
29
29
  sendResponse(response);
30
30
 
31
+ return true;
32
+
31
33
  });
32
34
 
33
35
  }
@@ -36,4 +38,92 @@
36
38
 
37
39
 
38
40
 
39
- 以下のようなbackground.jsでメッセージを受信し
41
+ 以下のようなbackground.jsでメッセージを受信します.
42
+
43
+ ```Javascript
44
+
45
+ chrome.runtime.sendMessage("Message", function (response){
46
+
47
+ console.log("Send message from background.js");
48
+
49
+ if(response){
50
+
51
+ console.log("Got response from popup.js");
52
+
53
+ }else{
54
+
55
+ console.log("Failed to get response from popup.js");
56
+
57
+ }
58
+
59
+ });
60
+
61
+ ```
62
+
63
+
64
+
65
+ ### 検証結果
66
+
67
+ ![コンソール](9c5a370e5a66b88437d21a4e1e31b50a.png)
68
+
69
+ メッセージ送信は成功しているが,受信に失敗しているようです.原因がわからずに困っています.
70
+
71
+
72
+
73
+ ### 補足情報
74
+
75
+ manifest.jsonは以下です.
76
+
77
+ ```JSon
78
+
79
+ {
80
+
81
+ "manifest_version": 2,
82
+
83
+ "name": "MassageTest",
84
+
85
+ "description": "Gather your browsing generously",
86
+
87
+ "content_security_policy": "script-src 'self' https://ajax.googleapis.com; object-src 'self'",
88
+
89
+ "version": "1.0",
90
+
91
+ "background": {
92
+
93
+ "scripts": [
94
+
95
+ "background.js"
96
+
97
+ ],
98
+
99
+ "persistent": false
100
+
101
+ },
102
+
103
+ "browser_action":{
104
+
105
+ "default_title": "TestTitle",
106
+
107
+ "default_popup": "popup.html"
108
+
109
+ },
110
+
111
+ "permissions": [
112
+
113
+ "tabs",
114
+
115
+ "background",
116
+
117
+ "<all_urls>",
118
+
119
+ "http://*/*",
120
+
121
+ "https://*/*",
122
+
123
+ "activeTab"
124
+
125
+ ]
126
+
127
+ }
128
+
129
+ ```