gpt4 book ai didi

android - 我在哪里可以找到 Android 中保存的图像?

转载 作者:行者123 更新时间:2023-11-30 00:55:05 25 4
gpt4 key购买 nike

打扰一下,快速提问:

我有这个视频流例程,我接收数据包,将它们转换为 byte[] ,然后转换为位图,然后将它们显示在屏幕上:

dsocket.receive(packetReceived); // receive packet
byte[] buff = packetReceived.getData(); // convert packet to byte[]
final Bitmap ReceivedImage = BitmapFactory.decodeByteArray(buff, 0, buff.length); // convert byte[] to bitmap image

runOnUiThread(new Runnable()
{
@Override
public void run()
{
// this is executed on the main (UI) thread
imageView.setImageBitmap(ReceivedImage);
}
});

现在,我想实现一个录音功能。建议说我需要使用 FFmpeg(我不知道如何使用)但首先,我需要准备一个包含有序图像的目录,然后将其转换为视频文件。这样做我会在内部保存所有图像,我正在使用 this answer保存每张图片:

if(RecordVideo && !PauseRecording) {
saveToInternalStorage(ReceivedImage, ImageNumber);
ImageNumber++;
}
else
{
if(!RecordVideo)
ImageNumber = 0;
}

// ...

private void saveToInternalStorage(Bitmap bitmapImage, int counter){
ContextWrapper cw = new ContextWrapper(getApplicationContext());

// path to /data/data/yourapp/app_data/imageDir
File MyDirectory = cw.getDir("imageDir", Context.MODE_PRIVATE);

// Create imageDir
File MyPath = new File(MyDirectory,"Image" + counter + ".jpg");

FileOutputStream fos = null;
try {
fos = new FileOutputStream(MyPath);

// Use the compress method on the BitMap object to write image to the OutputStream
bitmapImage.compress(Bitmap.CompressFormat.PNG, 100, fos);

} catch (Exception e) {
e.printStackTrace();
} finally {
try {
fos.close();
} catch (IOException e) {
e.printStackTrace();
}
}
//return MyDirectory.getAbsolutePath();
}

但我似乎无法在我的设备上找到该目录(实际查看我是否成功创建目录)///data/data/yourapp/app_data/imageDir 的路径在哪里 位置准确吗?

最佳答案

ContextWrappergetDir 方法将根据docs 自动创建imageDir 目录,如果它不存在的话。 .此外,除非您具有 root 访问权限,否则您无法在应用程序代码之外访问 /data 目录中的任何内容。如果您想查看保存在此目录中的图像,可以在命令提示符下运行 adb 工具,将图像移动到可公开访问的目录中:

adb shell run-as com.your.packagename cp -r /data/data/com.your.packagename/app_data/imageDir /sdcard/imageDir

请注意,run-as 命令仅在您的应用程序可调试时才有效。

您可以将 /sdcard/imageDir 替换为您有权在设备上访问的任何目录。如果您想随后将文件从设备移到您的机器上,您可以使用 adb pull 从公共(public)目录中拉取文件:

adb pull /sdcard/myDir C:\Users\Desktop

同样,将 /sdcard/myDirC:\Users\Desktop 替换为适当的源目录和目标目录。

关于android - 我在哪里可以找到 Android 中保存的图像?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40323126/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com