Я хотел бы использовать этот InputStream как вход в функцию ETC1Util.loadTexture().
Ответ 1
Это может работать
ByteArrayOutputStream bos = new ByteArrayOutputStream();
bitmap.compress(CompressFormat.PNG, 0 /*ignored for PNG*/, bos);
byte[] bitmapdata = bos.toByteArray();
ByteArrayInputStream bs = new ByteArrayInputStream(bitmapdata);
Ответ 2
Это мой способ:
// Your Bitmap.
Bitmap bitmap = XXX;
int byteSize = bitmap.getRowBytes() * bitmap.getHeight();
ByteBuffer byteBuffer = ByteBuffer.allocate(byteSize);
bitmap.copyPixelsToBuffer(byteBuffer);
// Get the byteArray.
byte[] byteArray = byteBuffer.array();
// Get the ByteArrayInputStream.
ByteArrayInputStream bs = new ByteArrayInputStream(byteArray);