QPython (Python 3.10) SL4A 函数:拍照录音录像、截屏录屏、外置卡读写

以下SL4A函数,适用于 QPython 3C ( Python 3.10 )

以下函数需要打开相机权限:

takePicture( path = None ) (新增)

拍照(路径=空)
用系统相机拍照,可指定路径或用默认路径。
拍照成功返回路径,拍照取消返回None。

takeVideo( path = None, quality = 1 ) (新增)

录像(路径=空,画质=高清)
用系统相机录像,可指定路径或用默认路径。
画质:1表示高清画质,0表示渣画质。也可以用takeVideo.QUALITY_HIGH=1, takeVideo.QUALITY_LOW=0两个常数。
录像成功返回路径,录像取消返回None。
scanBarcode( title = None ) (升级)
扫描二维码/条形码(扫码窗口标题=空)
返回二维码/条形码所代表的字符串。

以下函数需要打开录音权限:

recorderStartScreenRecord( path = None, audio = True, quality = 1, rotation = False, autoStart = True ) (新增)

开始录屏(路径=空,音频=有,画质=高清,旋转=否,自动开始=是)
可指定路径或用默认路径。
第一次录屏前会弹出授权对话框。
音频:有声录屏或无声录屏。
画质:1表示高清画质,0表示渣画质。也可以用recorderStartScreenRecord.QUALITY_HIGH=1, recorderStartScreenRecord.QUALITY_LOW=0两个常数。
旋转:录屏源宽度和高度旋转调换。
自动开始:如果某些情况不能自动开始录屏,会先建立一个空文件,通过recorderStart()手动开始。
部分机型只能竖屏启动录屏,横屏启动录屏会有异常,如果遇到这种情况录横屏:在竖屏以rotation=True,autoStart=False启动录屏,然后再转向横屏,用recorderStart()手动开始录屏。
返回录屏视频路径。
视频演示:https://www.bilibili.com/BV1v... Part2

recorderStart() (新增)

准备录制完成后,手动开始录制,一般与recorderStartScreenRecord配合使用。

imageReaderGetScreenShot(path = None, delayMilliSec = 1000) (新增)

ImageReader截屏(路径=空,延迟毫秒数=1000)
可指定路径或用默认路径。
第一次截屏前会弹出授权对话框。
返回截图路径。

recorderStartMicrophone( targetPath = None ) (升级)

开始录音(目标路径=空)
可指定路径或用默认路径。
返回录音音频路径。

recorderPause() (新增)

暂停之前开始的录制。
需要 Android >= 7.0 。

recorderResume() (新增)

恢复之前暂停的录制。
需要 Android >= 7.0 。

recorderStop() (升级)

停止之前开始的录制。

screenRecord() (新增)

打开默认窗口操作录屏,返回最后录屏视频路径。

其他函数:

recordAudio() (新增)

录音()
用系统录音机录音。
录音成功返回路径,录音取消返回None。

fullGetScreenShot( path = None ) (新增)

获取全屏窗口截屏(路径=空)
QPython 全屏应用 ( Future Activity / SL4A-GUI ) 截屏到指定路径(或用默认路径),无需授权。
跨应用截屏需要imageReaderGetScreenShot。

外置卡读写函数(新增):

documentTreeShowOpen( rootPath='/sdcard' ) (推荐)

documentFileShowOpen( rootPath='/sdcard' )

以上俩函数功能相同
打开外置卡写入权限请求窗口(根路径="/sdcard")
如果被授权,返回True,
使用这两个和以下函数,写入外置存储卡。

documentFileMkdir( Dir ) (推荐)

documentFileMkdirs( Dir )

以上俩函数功能相同
外置卡新建一级/多级文件夹(文件夹路径)
如果成功返回True。

documentFileCopyFile( Src, Dest )

外置卡复制文件(源,目标)
返回None。

documentFileCopyTree( Src, Dest )

外置卡复制目录树(源,目标)
返回None。

documentFileRenameTo( Src, Dest ) (推荐)

documentFileMoveTo( Src, Dest )

以上俩函数功能相同
移动或重命名_文件或目录树(源路径,目标路径)

documentFileDelete( FileOrTree )

外置卡删除(文件或目录树)
如果成功返回True。

documentFileInputStream( srcFile, EncodingFormat )

外置卡读取文件(源文件名,编码格式)
如果编码格式被省略(默认为空),这个函数返回Bytes;
如果编码格式是Base64,这个函数返回Base64字符串;
如果编码格式是UTF-8或GBK等,这个函数返回普通字符串。

documentFileOutputStream( destFile, src, EncodingFormat )

外置卡写入文件(目标文件,源数据,编码格式)
如果编码格式被省略(默认为空),源数据是Bytes;
如果编码格式是Base64, 源数据是Base64字符串;
如果编码格式是UTF-8或GBK等,源数据是普通字符串;
这个函数总是返回None。

QPython 3C ( Python 3.10 ) 视频演示

https://www.bilibili.com/BV1N...
作者:乘着船@SegmentFault

你可能感兴趣的:(QPython (Python 3.10) SL4A 函数:拍照录音录像、截屏录屏、外置卡读写)