安卓版本:8.1.0
设备:Infinix X604B
工作管理器:1.0.0-alpha11(最新版本)
安排一个 PeriodicWorkRequest 在每 15 分钟后运行一次。工作请求每 15 分钟运行一次,持续大约一小时。然后 PeriodicWorkRequest 停止工作。在 8 小时内,根本没有安排后台工作。我没有杀死我的应用程序,它在后台。
当我将应用程序带回前台时,PeriodicWorkRequest 再次运行后台任务。在我将我的应用程序置于后台后,没有重复的类似经验。
我为我的应用禁用了电池优化。
这是 My Worker 类示例。
class TestWorker extends Worker {
public TestWorker(
@NonNull Context context,
@NonNull WorkerParameters params) {
super(context, params);
}
@NonNull
@Override
public Result doWork() {
// Adding timestamp of background execution to firestore.
Map<String, String> value = new TreeMap<>();
SimpleDateFormat df = new SimpleDateFormat("hh:mm");
String dateFormat = df.format(Calendar.getInstance().getTime());
value.put("time", dateFormat);
FirebaseFirestore.getInstance()
.collection("my-collection")
.add(value);
return Result.SUCCESS;
}
Run Code Online (Sandbox Code Playgroud)
}
我是这样称呼它的:
PeriodicWorkRequest.Builder testBuilder …Run Code Online (Sandbox Code Playgroud) 我正在创建一个原始的自动完成小部件。问题是,如果小部件位于屏幕的中心或底部周围,当我开始输入时,显示的自动建议会隐藏在软键盘下。如何构建optionsViewBuilder来克服键盘下选项的隐藏?
示例源代码:
class AutoCompleteWidget extends StatefulWidget {
const AutoCompleteWidget(
Key key,
) : super(key: key);
@override
_AutoCompleteWidgetState createState() => _AutoCompleteWidgetState();
}
class _AutoCompleteWidgetState extends State<AutoCompleteWidget> {
late TextEditingController _textEditingController;
String? _errorText;
final FocusNode _focusNode = FocusNode();
final GlobalKey _autocompleteKey = GlobalKey();
List<String> _autoSuggestions = ['abc', 'def', 'hij', 'aub', 'bted' 'donfr', 'xyz'];
@override
void initState() {
super.initState();
_textEditingController = TextEditingController();
}
@override
void dispose() {
_textEditingController.dispose();
super.dispose();
}
@override
Widget build(BuildContext context) {
return RawAutocomplete<String>(
key: _autocompleteKey,
focusNode: _focusNode,
textEditingController: _textEditingController, …Run Code Online (Sandbox Code Playgroud)