0

圖像可用監聽器拾取片段的圖像,一旦圖像可用,就會連續調用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事情設備上實現,但我得到一個警告說'一個TextureView或一個子類只能用於啓用硬件加速'和onimageavailble()永遠不會被調用。我在代碼中進行了必要的更改以解決警告,但仍然不會調用onimageavailble()

在調試Android的東西在樹莓派的代碼,我注意到相機流沒有顯示在片段中,因爲哪一個圖像監聽器無法選擇一個。

請爲我提供這個問題

+2

您使用的是Android版本的什麼版本? –

+0

版本是Android的東西3 –

回答

1

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

用於R皮中的硬件加速AndroidThings只推出瞭解決方案0.5.0

參閱發行說明在這裏:

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

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

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

+0

我更新到Android版本0.5.0,但我無法從Raspberry Pi3設備上顯示任何顯示到我的顯示器上,這是以前並非如此。甚至沒有顯示啓動屏幕。我現在所能看到的只是一個黑屏。我的顯示屏分辨率爲1366 * 768 –

相關問題