回答編集履歴
6
追記
test
CHANGED
@@ -16,7 +16,7 @@
|
|
16
16
|
|
17
17
|
[追記]出来る限りコードの初めで`MainThreadEventExecutor.Initialize()`を呼んでください。
|
18
18
|
|
19
|
-
例) AdmobManagerがあればその`Awake()`、ゲーム起動時 タイトル画面 `Awake()`、ゲーム画面 `GameManager`の`Awake()`
|
19
|
+
例) AdmobManagerがあればその`Awake()`、ゲーム起動時 タイトル画面 `Awake()`、ゲーム画面 `GameManager`の`Awake()` 複数回呼んでも問題無いです。
|
20
20
|
|
21
21
|
|
22
22
|
|
5
追記
test
CHANGED
@@ -16,7 +16,7 @@
|
|
16
16
|
|
17
17
|
[追記]出来る限りコードの初めで`MainThreadEventExecutor.Initialize()`を呼んでください。
|
18
18
|
|
19
|
-
例) ゲーム起動時 タイトル画面 `Awake()`、ゲーム画面 `GameManager`の`Awake()` 2回呼んでも問題無いです。
|
19
|
+
例) AdmobManagerがあればその`Awake()`、ゲーム起動時 タイトル画面 `Awake()`、ゲーム画面 `GameManager`の`Awake()` 2回呼んでも問題無いです。
|
20
20
|
|
21
21
|
|
22
22
|
|
@@ -140,6 +140,36 @@
|
|
140
140
|
|
141
141
|
### 使い方
|
142
142
|
|
143
|
+
**初期化**
|
144
|
+
|
145
|
+
例) `AdmobManager`があるとして`Awake()`で初期化
|
146
|
+
|
147
|
+
```C#
|
148
|
+
|
149
|
+
using UnityEngine;
|
150
|
+
|
151
|
+
|
152
|
+
|
153
|
+
public sealed class AdmobManager : MonoBehaviour
|
154
|
+
|
155
|
+
{
|
156
|
+
|
157
|
+
void Awake()
|
158
|
+
|
159
|
+
{
|
160
|
+
|
161
|
+
MainThreadEventExecutor.Initialize();
|
162
|
+
|
163
|
+
}
|
164
|
+
|
165
|
+
}
|
166
|
+
|
167
|
+
```
|
168
|
+
|
169
|
+
|
170
|
+
|
171
|
+
**使用**
|
172
|
+
|
143
173
|
Admobイベント内で実行したい内容を`MainThreadEventExecutor.Execute`内に書く
|
144
174
|
|
145
175
|
|
4
追記
test
CHANGED
@@ -15,6 +15,8 @@
|
|
15
15
|
下記コードを「MainThreadEventExecutor.cs」としてプロジェクト内に保存
|
16
16
|
|
17
17
|
[追記]出来る限りコードの初めで`MainThreadEventExecutor.Initialize()`を呼んでください。
|
18
|
+
|
19
|
+
例) ゲーム起動時 タイトル画面 `Awake()`、ゲーム画面 `GameManager`の`Awake()` 2回呼んでも問題無いです。
|
18
20
|
|
19
21
|
|
20
22
|
|
3
修正
test
CHANGED
@@ -13,6 +13,8 @@
|
|
13
13
|
### メインスレッドで実行させるスクリプト
|
14
14
|
|
15
15
|
下記コードを「MainThreadEventExecutor.cs」としてプロジェクト内に保存
|
16
|
+
|
17
|
+
[追記]出来る限りコードの初めで`MainThreadEventExecutor.Initialize()`を呼んでください。
|
16
18
|
|
17
19
|
|
18
20
|
|
@@ -73,8 +75,6 @@
|
|
73
75
|
lock (queues)
|
74
76
|
|
75
77
|
{
|
76
|
-
|
77
|
-
Initialize();
|
78
78
|
|
79
79
|
queues.Add(action);
|
80
80
|
|
2
追記
test
CHANGED
@@ -170,4 +170,4 @@
|
|
170
170
|
|
171
171
|
存在について何処にも書かれて居ない為、もしかすると今後消される可能性があります。
|
172
172
|
|
173
|
-
突然消されても困るので改変して作成した
|
173
|
+
突然消されても困るので改変して作成したMainThreadEventExecutorを使っています。
|
1
修正
test
CHANGED
@@ -1,8 +1,12 @@
|
|
1
|
-
Admobのイベントは別スレッドで実行され
|
1
|
+
Admobのイベントは別スレッドで実行されます。
|
2
2
|
|
3
|
-
メインスレッドで実行
|
3
|
+
メインスレッドでしか実行できないUnity API(`Debug.Log`など)は走りません。
|
4
4
|
|
5
|
+
|
6
|
+
|
7
|
+
メインスレッドで実行されるようにするにはUpdate内でフラグを立てるのが簡単ですが
|
8
|
+
|
5
|
-
|
9
|
+
僕が使っているスクリプトを差し上げるのでこれ使ってみてください。
|
6
10
|
|
7
11
|
|
8
12
|
|