2015-09-22 2 views
1

Я пытаюсь настроить живые обои и одну из функций - когда пользователь нажимает на экран, они будут перенесены на определенную ссылку, и я заметил, что метод onCommand обозревателя обоев называется когда я нажимаю значок приложения на экране. Есть ли способ исправить это ????Android Wallpaper onCommand открывает приложения

@Override 
    public Bundle onCommand(String action, int x, int y, int z, Bundle extras, boolean resultRequested) { 
     if (action.equals(WallpaperManager.COMMAND_TAP)) { 
      Uri uri = Uri.parse("blalbla"); 
      try { 
       Intent intent = new Intent(Intent.ACTION_VIEW, uri); 
       intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); 
       startActivity(intent); 
      } catch (Exception e) { 
       Log.i("Wopps","i do"); 
      } 
     } 
     return super.onCommand(action, x, y, z, extras, false); 
    } 
+0

Это еще проблема, она должна быть только отправка COMMAND_TAP для пустого пространства кранами. Я зарегистрировал проблему на Android-трекере: https://issuetracker.google.com/issues/68467342 – Flyview

ответ

0

Так двойное нажатие решить эту проблему:) ... OnCommand был неправильный Approch

gestureDetector = new GestureDetector(getApplicationContext(), new GestureDetector.SimpleOnGestureListener() { 
     @Override 
     public boolean onDoubleTap(MotionEvent event) { 
      Uri uri = Uri.parse(uri); 
      try { 
       Intent intent = new Intent(Intent.ACTION_VIEW, uri); 
       intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); 
       startActivity(intent); 
      } catch (Exception e) { 
       Log.i("Double tap ", "went wrong"); 
      } 
      return true; 
     } 
    }); 
Смежные вопросы