簡體   English   中英

圖像偵聽器無法從片段中拾取圖像

[英]Image Listener unable to pick image from the fragment

可用圖像的偵聽器拾取該片段的圖像,並在圖像可用后立即連續調用onimageavailble() 該代碼的一個實例如下:

protected void onCreate(final Bundle savedInstanceState) {
    super.onCreate(null);
    getWindow().setFlags(WindowManager.LayoutParams.FLAG_HARDWARE_ACCELERATED,
           WindowManager.LayoutParams.FLAG_HARDWARE_ACCELERATED);
    getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
    setContentView(R.layout.activity_camera);
    setFragment();
}

setFragment()代碼為:

    protected void setFragment() {
        final Fragment fragment =
            CameraConnectionFragment.newInstance(
                new CameraConnectionFragment.ConnectionCallback() {
                  @Override
                  public void onPreviewSizeChosen(final Size size, final int rotation) {
                    CameraActivity.this.onPreviewSizeChosen(size, rotation);

                  }
                },
                this,
                getLayoutId(),
                getDesiredPreviewFrameSize());
        getFragmentManager()
            .beginTransaction()
            .replace(R.id.container, fragment)
            .commit();
   }

該代碼可在Android上正確運行,因此我希望它在Android Things設備上實現,但我收到一條警告,指出“ TextureView或子類只能在啟用了硬件加速的情況下使用 ”,並且永遠不會調用onimageavailble() 我對代碼進行了必要的更改以解決警告,但始終不會調用onimageavailble()

在調試raspberry Pi3中用於android的代碼時,我注意到片段中未顯示相機流,因為該圖像偵聽器無法選擇其中一個。

請為我提供此問題的解決方案

您正在使用WindowManager.LayoutParams.FLAG_HARDWARE_ACCELERATED (與AndroidThings 0.3.0

R Pi的硬件​​加速僅在AndroidThings 0.5.0引入

請在此處查看發行說明:

https://developer.android.com/things/preview/releases.html

隨着Android O的更新,現在支持OpenGL ES 2.0。 帶有GPU的平台(例如Raspberry Pi 3)現在也支持硬件加速。

請更新您使用的AndroidThings的版本。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM