Take screenshot from UnityPlayer

i have to take screenshot from scene in Java code to further process, i tried to extend UnityPlayerActivity and take screen with

public Bitmap takeScreenshot() {
    View rootView = mUnityPlayer().getRootView();
    rootView.setDrawingCacheEnabled(true);
    Bitmap bmp = Bitmap.createBitmap(rootView.getDrawingCache());
    rootView.setDrawingCacheEnabled(false);
    return bmp;
}

how ever i get blackscreen then. Some people are using glReadPixels however i cant find how to get GL10 instance.

anybody knows which reason the capture is blackscreen? I also get similiar problem