我的用例如下:
我需要在白日梦选择菜单中显示我的一项活动,并且应该以白日梦开始。
目前在我实施白日梦开始的代码中,我得到一个黑屏,但当我按下后,我看到我的活动背后。
<service
android:name=".ui.daydream.DayDream"
android:exported="true"
android:permission="android.permission.BIND_DREAM_SERVICE">
<intent-filter>
<action android:name="android.service.dreams.DreamService" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</service>
在我的白日梦服务中,我实现了以下代码:
public class DayDream extends DreamService {
@Override
public void onAttachedToWindow() {
super.onAttachedToWindow();
// Allow user touch
setInteractive(true);
// Hide system UI
setFullscreen(true);
}
@Override
public void onDreamingStarted() {
super.onDreamingStarted();
onDreamingStopped();
// setContentView(R.layout.unassisted_fragment_dslr);
Intent intent = new Intent(this, ActivityUnassisted.class);
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TOP);
intent.addFlags(Intent.FLAG_ACTIVITY_BROUGHT_TO_FRONT);
startActivity(intent);
}
@Override
public void onDreamingStopped() {
}
}
我的痛点是如何直接开始我作为白日梦屏幕保护程序的活动。