@@ -75,6 +75,10 @@ public UpdateDeviceListTask(JMenu deviceMenu) {
75
75
@ Override
76
76
public void run () {
77
77
if (androidMode == null || androidMode .getSDK () == null ) return ;
78
+
79
+ if (AndroidBuild .publishOption == AndroidBuild .WATCHFACE ) {
80
+ Devices .enableBlueToothDebugging ();
81
+ }
78
82
79
83
final Devices devices = Devices .getInstance ();
80
84
java .util .List <Device > deviceList = devices .findMultiple (false );
@@ -144,6 +148,44 @@ public void actionPerformed(ActionEvent e) {
144
148
}
145
149
}
146
150
}
151
+
152
+
153
+ class UpdateSDKListTask extends TimerTask {
154
+
155
+ private JMenu sdkMenu ;
156
+
157
+ public UpdateSDKListTask (JMenu sdkMenu ) {
158
+ this .sdkMenu = sdkMenu ;
159
+ }
160
+
161
+ @ Override
162
+ public void run () {
163
+ while (androidMode == null || androidMode .getSDK () == null ) {
164
+ try {
165
+ Thread .sleep (3000 );
166
+ } catch (InterruptedException e ) {
167
+ e .printStackTrace ();
168
+ }
169
+ updateSdkMenu (sdkMenu );
170
+ }
171
+
172
+ /*
173
+ new Thread() {
174
+ @Override
175
+ public void run() {
176
+ while(androidMode == null || androidMode.getSDK() == null) {
177
+ try {
178
+ Thread.sleep(3000);
179
+ } catch (InterruptedException e) {
180
+ e.printStackTrace();
181
+ }
182
+ }
183
+ updateSdkMenu(sdkMenu);
184
+ }
185
+ }.start();
186
+ */
187
+ }
188
+ }
147
189
148
190
149
191
public EditorToolbar createToolbar () {
@@ -275,59 +317,35 @@ public void actionPerformed(ActionEvent e) {
275
317
menu .add (watchfaceItem );
276
318
277
319
menu .addSeparator ();
278
-
279
-
280
- /*item = new JMenuItem("Signing Key Setup");
281
- item.addActionListener(new ActionListener() {
282
- public void actionPerformed(ActionEvent e) {
283
- new Keys(AndroidEditor.this);
284
- }
285
- });
286
- item.setEnabled(false);
287
- menu.add(item); */
288
320
289
321
final JMenu mobDeveMenu = new JMenu ("Devices" );
290
322
291
323
JMenuItem noMobDevItem = new JMenuItem ("No connected devices" );
292
324
noMobDevItem .setEnabled (false );
293
325
mobDeveMenu .add (noMobDevItem );
294
326
menu .add (mobDeveMenu );
295
-
327
+
296
328
// start updating device menus
297
- UpdateDeviceListTask task = new UpdateDeviceListTask (mobDeveMenu );
298
- java .util .Timer timer = new java .util .Timer ();
299
- timer .schedule (task , 5000 , 5000 );
300
-
301
- // final JMenu wearDevMenu = new JMenu("Select wearable device");
302
- //
303
- // JMenuItem noWearDevicesItem = new JMenuItem("No connected devices");
304
- // noWearDevicesItem.setEnabled(false);
305
- // wearDevMenu.add(noWearDevicesItem);
306
- // menu.add(wearDevMenu);
329
+ UpdateDeviceListTask devTask = new UpdateDeviceListTask (mobDeveMenu );
330
+ java .util .Timer devTimer = new java .util .Timer ();
331
+ devTimer .schedule (devTask , 5000 , 5000 );
307
332
308
333
menu .addSeparator ();
309
334
310
335
// TODO: The SDK selection menu will be removed once app publishing is fully
311
- // functional (correct SDK level can be inferred from app type (fragment,
312
- // wallpaper, etc).
313
- final JMenu sdkMenu = new JMenu ("Select target SDK" );
314
- JMenuItem defaultItem = new JCheckBoxMenuItem ("No available targets" );
315
- defaultItem .setEnabled (false );
316
- sdkMenu .add (defaultItem );
317
-
318
- new Thread () {
319
- @ Override
320
- public void run () {
321
- while (androidMode == null || androidMode .getSDK () == null ) {
322
- try {
323
- Thread .sleep (3000 );
324
- } catch (InterruptedException e ) {
325
- e .printStackTrace ();
326
- }
327
- }
328
- updateSdkMenu (sdkMenu );
329
- }
330
- }.start ();
336
+ // functional: correct minimum SDK level can be inferred from app type
337
+ // (fragment, wallpaper, etc), and target SDK from the highest available in
338
+ // the SDK.
339
+ final JMenu sdkMenu = new JMenu ("Target SDK" );
340
+
341
+ JMenuItem noAvailSDKItem = new JCheckBoxMenuItem ("No available targets" );
342
+ noAvailSDKItem .setEnabled (false );
343
+ sdkMenu .add (noAvailSDKItem );
344
+ menu .add (sdkMenu );
345
+
346
+ UpdateSDKListTask sdkTask = new UpdateSDKListTask (sdkMenu );
347
+ java .util .Timer sdkTimer = new java .util .Timer ();
348
+ sdkTimer .schedule (sdkTask , 500 , 5000 );
331
349
332
350
menu .add (sdkMenu );
333
351
@@ -381,8 +399,8 @@ private void updateSdkMenu(final JMenu sdkMenu) {
381
399
boolean savedTargetSet = false ;
382
400
383
401
for (final AndroidSDK .SDKTarget target : targets ) {
384
- if (target .version < 11 ) {
385
- //We do not support API level less than 11
402
+ if (target .version < 19 ) {
403
+ //We do not support API level less than 19
386
404
continue ;
387
405
}
388
406
0 commit comments