用QT开发Android投屏软件--上传文件和安装apk

增强Android投屏软件:文件上传与APK安装功能实现

这篇文章我们给Android投屏软件增加文件上传和安装apk的功能。
上传文件和安装apk对pc端的操作基本没有差别,因为apk也是一种文件格式。通过点击按钮或者拖动待上传(安装)的文件到投屏窗口,软件获取到文件路径,执行不同的adb命令。

上传文件的adb命令:

adb -s 设备序列号 push <电脑上的文件路径> <设备上的目标路径>

安装apk的adb命令:

adb  -s 设备序列号 install  [-r] <电脑上的apk文件路径>
//-r 是安装命令的可选项,是否覆盖已有安装包

先看一下界面的截图:
投屏软件截图
红框里面的两个按钮分别是上传文件和安装apk,为了操作更简便,支持拖动文件到投屏窗口。
QT可以很方便的实现拖动文件到窗口里,投屏窗口继承QDialog。
打开 setAcceptDrops(true) 设置,重写下面的事件处理方法即可

void DeviceForm::dragEnterEvent(QDragEnterEvent *event)
{
    if(event->mimeData()->hasUrls())
        event->acceptProposedAction();
}
void DeviceForm::dropEvent(QDropEvent *event)
{
    const QMimeData *qmd = event->mimeData();
    QList<QUrl> urls = qmd->urls();

    for (const QUrl &url : urls)
    {
        QString file = url.toLocalFile();
        QFileInfo fileInfo(file);

        if (!fileInfo.exists()) {
            //file does not exist
            continue;
        }
        if(fileInfo.isFile())
        {
            emit pushFileAction(fileInfo);
        }
    }
}

QQ: 2276769057
github : https://github.com/linkedbyte/tomobile

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值