我的活动不会在android wear上显示
我制作了一个简单的应用程序,它需要(是的,它确实需要)显示一个沉浸式的警告。我已经通过从服务启动的活动实现了这一点。大多数情况下,它都能正确显示,但当可穿戴设备空闲时,它却不能正确显示。onStart()和onResume()会运行,但视图不会显示在屏幕上。有什么想法吗 (这是通过I/O在Android Gear Live上实现的) 它由以下服务触发:我的活动不会在android wear上显示,android,android-activity,wear-os,Android,Android Activity,Wear Os,我制作了一个简单的应用程序,它需要(是的,它确实需要)显示一个沉浸式的警告。我已经通过从服务启动的活动实现了这一点。大多数情况下,它都能正确显示,但当可穿戴设备空闲时,它却不能正确显示。onStart()和onResume()会运行,但视图不会显示在屏幕上。有什么想法吗 (这是通过I/O在Android Gear Live上实现的) 它由以下服务触发: Intent i = new Intent(MyService.this, MyActivity.class); i.addFlag
Intent i = new Intent(MyService.this, MyActivity.class);
i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TOP);
i.setAction("disconnected");
startActivity(i);
部分活动代码:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Log.d("MyActivity", "onCreate");
getWindow().addFlags(WindowManager.LayoutParams.FLAG_TURN_SCREEN_ON|
WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON|
WindowManager.LayoutParams.FLAG_FULLSCREEN |
WindowManager.LayoutParams.FLAG_DISMISS_KEYGUARD|
WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED);
setContentView(R.layout.activity);
disconnectedView = (TextView)findViewById(R.id.disconnectedView);
}
@Override
protected void onStart() {
super.onStart();
Log.d("MyActivity", "onStart");
}
@Override
protected void onResume() {
// Corrected after comment from MikeC
//super.onStart();
super.onResume();
Log.d("MyActivity", "onResume");
if (getIntent().getAction() != null && getIntent().getAction().equals("disconnected"))
startVibration();
}
尝试在
onResume()
中设置标志,这似乎对我很有用
@Override
public void onResume()
{
super.onResume();
// Keep awake
getWindow().addFlags( WindowManager.LayoutParams.FLAG_TURN_SCREEN_ON |
WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON );
}
为什么您的onResume会调用super.onStart()?噢,不应该这样。不幸的是,这不是真正的问题。我仍然看到同样的行为。但感谢您的帮助。请将代码更新为正确的代码(不带super.onStart())。(在电话上)也会显示通知吗?或者它不只是在磨损时工作?它只在磨损装置上运行。我仍然看到这个问题。