Android-Car应用程序屏幕刷新率

问题描述 投票:0回答:1

我希望在我的 Android 汽车应用程序中及时显示信息。

我使用 GridTemplate,我想在其中更新项目的文本。为了进行测试,我有一个简单的计数器,带有一个计时器(10ms),递归地调用一个函数,它将新值写入一个变量,该变量又在构建时由网格使用。一切正常,但我无法让屏幕更新速度超过一秒。为了重绘屏幕,我使用 invalidate() 重新调用 onGetTemplate。是否有另一种可能性来显示实时数据或加快屏幕的重新加载速度?

这里有一些简单的代码:

public  class MyScreen extends Screen  {
    private int run = 0;

    public MyScreen(CarContext carContext) {
        super(carContext);
    }
    @NonNull
    @Override
    public Template onGetTemplate() {
        looping();
        Row row = new Row.Builder().setTitle("Count:").addText(run+"").build();
        return new PaneTemplate.Builder(new Pane.Builder().addRow(row).build()).setTitle("Wasup").build();
    }

    private void looping() {
        Timer timer = new Timer();
        new Timer().schedule(new TimerTask() {
            @Override
            public void run() {
                looping();
            }
        }, 100);


        run++;

        Log.d("Test",run+"");
        invalidate();
        if(run >=1000){run = 0;}
    }
}
java screen reload androidx android-auto
1个回答
0
投票

作为开发人员,您无法提高模板的刷新率。此外,为了限制驾驶员分心,一般不建议频繁更新(请参阅https://developer.android.com/training/cars/Android%20for%20Cars%20App%20Library%20design%20guidelines.pdf第8页) )

© www.soinside.com 2019 - 2024. All rights reserved.