【问题标题】:Handle device features in codename one处理代号一中的设备功能
【发布时间】:2017-05-06 13:38:11
【问题描述】:

出于学习目的,我正在尝试编写一个简单的睡眠定时器应用程序。目的应该是有一个选择器,选择几分钟,然后在该时间之后执行某些操作。最重要的是,激活飞行模式并关闭所有其他应用程序以节省电池。

我有一个自定义选择器和我的可运行线程,它们工作正常:

@Override
public void run() {

    while((System.currentTimeMillis() - startTime ) / 1000 < minutes){
        try {
            Thread.sleep(1000);
        } catch (InterruptedException e) {
            System.out.println("interrupted, go again.");
            return;
        }
    }

    System.out.println("Wait time is over, go to sleep.");
    app.timeToSleep();

但是,在“timeToSleep”内,我现在想做以下事情:

Device.setFlightmodeEnabled(true);或

TaskManager.killall();

我将如何实现这样的目标?到目前为止我还没有找到任何东西,但也许我要查找的关键词有误。

感谢和问候

【问题讨论】:

    标签: codenameone


    【解决方案1】:

    您可以通过 API 访问一些设备功能,也可以通过本机接口访问一些设备功能,但我认为在没有运营商或 Google 授权的情况下将设备设置为飞行模式在技术上是不可能的,而这只能在 Android 上实现...

    【讨论】:

    • 感谢您的提示。 “原生界面”是我在搜索过程中缺少的关键字,所以我找到了,这很好。现在我在 android native 子文件夹中有我的 android 代码文件,我假设我可以像其他人一样直接使用代码。所以在寻找关闭Wifi的时候,我发现了这篇文章:[stackoverflow.com/questions/5674333/…。但是,我没有 Android 清单来为此设置权限吗?还有什么我错过的吗?我也没有在 CN1 设置中找到任何内容。
    • 在原生接口中查看codenameone.com/manual/advanced-topics.html,您需要创建一个抽象您与原生层交互的接口。要向 Android 清单添加内容,请查看该文章顶部的构建提示。您可以搜索 codenameone.com 以查找更多详细信息codenameone.com/search.html
    猜你喜欢
    • 1970-01-01
    • 2022-12-10
    • 2020-06-15
    • 1970-01-01
    • 2018-08-29
    • 2020-10-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多