说明

本文提供的代码仅供参考。不建议用于生产环境。
可能有些地方在最新版本的Auto.js上面需要做修改,才能运行。

Auto.js简介

Auto.js是利用安卓系统的“辅助功能”实现类似于按键精灵一样,可以通过代码模拟一系列界面动作的辅助工作。
与“按键精灵”不同的是,它的模拟动作并不是简单的使用在界面定坐标点来实现,而是类似与win一般,找窗口句柄来实现的。

Auto.js使用JavaScript作为脚本语言,目前使用Rhino 1.7.7.2作为脚本引擎,支持ES5与部分ES6特性。

免责声明

本文所有教程及源码、软件仅为技术研究。不涉及计算机信息系统功能的删除、修改、增加、干扰,更不会影响计算机信息系统的正常运行。不得将代码用于非法用途。

示例代码


importClass(android.content.Intent);
importClass(android.net.Uri);
importClass(java.io.File);

/**
*完成时间: 2018年12月29日 下午10:04:56
*测试机型: meizu_M5 Note
 *Auto.js版本: 4.1.0 Alpha5
 *屏幕: 1080*1920
 *API: 24
*备注: 暂无备注
**/



function 分享单个文件(文件路径) {
    // var uri = new Uri.parse("/storage/emulated/0/建记/图片/img08.jpg");
    var uri = new Uri.parse(文件路径);
    new SystemShareUtils().share(context, uri);
};


function 分享文件夹中的所有文件(文件夹路径) {
    //不支持子文件夹中的文件。
    //var file= new File("/storage/emulated/0/超建记/文件夹");
    var file = new File(文件夹路径);
    var list = file.listFiles();

    var uris = list.map(function(file) {
        return new Uri.fromFile(file);
    });
    new SystemShareUtils().shareList(context, uris);
};

function SystemShareUtils() {

    this.shareText = function(ctx, text) {
        sendIntent = new Intent();
        sendIntent.setAction(Intent.ACTION_SEND);
        sendIntent.putExtra(Intent.EXTRA_TEXT, text);
        sendIntent.setType("text/plain");
        ctx.startActivity(Intent.createChooser(sendIntent, "分享至"));
    };

    this.share = function(ctx, uri) {
        sendIntent = new Intent();
        sendIntent.setAction(Intent.ACTION_SEND);
        sendIntent.putExtra(Intent.EXTRA_STREAM, uri);
        sendIntent.setType("*/*");
        ctx.startActivity(Intent.createChooser(sendIntent, "分享至"));
    };

    this.shareList = function(ctx, uris) {
        sendIntent = new Intent();
        sendIntent.setAction(Intent.ACTION_SEND_MULTIPLE);
        sendIntent.putExtra(Intent.EXTRA_STREAM, uris);
        sendIntent.setType("*/*");
        ctx.startActivity(Intent.createChooser(sendIntent, "分享至"));
    };
}

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注