autojs05autojspro常⽤的代码和公共函数如何⽤Autojs来写脚本
如何⽤Autojs来写脚本,⼀部⼿机除了睡觉的时间之外,都可以给你来赚钱,⼿机不是⽤来看的,⼿机是⽤来赚钱的。我劝你把⼿机仍在⼀个⾓落⾥⾯,让它乖乖地给你去赚
钱,⽽你呢,你应该去做你⾃⼰想做的事情,⽐如对于我来说,我喜欢写程序,看书,喝茶,做家务,陪⼉⼦玩。那么这个时间你就不要去玩⼿机了,极简主义者连⼿机这种东
西都是不碰的,所以我今天要给⼤家倡导⼀个理念:让⼿机给你赚零花钱。
植⼊了理念,后⾯就谈怎么去做,如果你要让⼿机给你赚钱,赚的是什么钱,我们这⾥不做违法的事情,不做黄⾊的,不做赌博的,那么我们做什么,简单来说就是薅⽺⽑,就
是通过⾃动阅读新闻,观看视频,获取平台的收益,本来这个事情是需要你的⼿指去疯狂点击的,现在呢,就不需要了,要让计算机脚本语⾔帮助你去实现。
今天我介绍的⼀款软件是Autojs,这个是⼀个写⼿机运⾏脚本的⼯具,这个是国⼈开发的,⾃豪
这个⼤家可以在模拟器上⾯去安装,具体的操作步骤我就不讲了,我主要来讲解⼀下我们怎么去做这个薅⽺⽑的事情,
模拟器上⾯装好以后,就是看到这个界⾯
我们现在以刷宝为例⼦,来讲解,⾸先先下载“刷宝短视频”,百度搜索⼀下就可以了,安装后注册你的账号,通常是以号来登陆,绑定⼀下,这样才能够提现。
然后我们要下载⼀个JS code的软件,这个软件是⽅便你在电脑上去写脚本,原理上你从⼿机上去写也是可以的,完全可以,⼩编就是在去公司的班车上,在⼿机上来写薅⾦脚
本的!但是在⼿机上写,你会很累,所以你在JS code上下载⼀个插件,就可以来写了。这边我以⼿机端举例⼦,我们来讲解⼀个最简单的例⼦,循序渐进地讲,其实要很快学
会⼀门计算机编程语⾔,最快的⽅法,就是你想要去实现⼀个东西,然后你带着这个⽬标去学怎么写,这样是最快的。
今天我们就写⼀句代码,如何⾃动打开像趣头条,今⽇头条之类的平台,
launchApp("刷宝短视频");
1
lanchApp("刷宝短视频“) 解析
好的,我们来讲解⼀下这个代码的意思,launchApp的意思就是英⽂“加载App的意思”,这是⼀个函数,函数是⽤括号括起来的,⼤家学过初中数学的话知道函数是 y=f(x), 这个x
是⾃变量,y是应变量,就是说y和x存在⼀个对应的关系,输⼊⼀个x,通过⼀定的规则法则,就出来⼀个y, 这个就是⼀个规则,⽐如说:y=2x, 就是你放⼤了2倍, y=1/2*x,就是
缩⼩了⼀倍。这个是数学的概念,其实函数的思想可以⽤来阐述各种事物,计算机编程语⾔中的函数其实也是这个意思,launchApp就是⼀个规则,x是什么呢,就是“刷宝短视
频“,那么y是什么呢,这⾥没有给定,那就是⼀个空的返回值,可以不返回任何值,”刷宝短视频“就是你下载的应⽤App的名字,同样,你可以写“趣头条”,“今⽇头条”等等。
给⼤家看看,效果,执⾏这个脚本以后,程序⾃动开启“刷宝短视频”了,怎么样,好玩吗
——————————
1 /**
2 * 整理者: 家
3 * ⽇期: 20190224
4 * 妈呀: 整理了⼀宿,现在是早上6:34
5 * 功能: 把某些常⽤的函数集中起来,⽅便调⽤
6 * 函数来源: 都是⾥的⼤佬写的,稻草⼈,+攀登,Ai,破晓的星⾠,灶猫,家,浩然,⽩酒煮饭,⽣僻字⼤佬,内个谁,Xero,⽆名⼩,壞蛋┭,锦瑟安年Ω,专业滥竽充数,膜拜以上⼏位⼤神,不管你们同意不同意,我都把你们的代码搬到⼀块了,O(∩_∩)O哈哈~
7 * git: github/snailuncle/autojsCommonFunctions/blob/master/autojsCommonFunctions.js
8 */
9
10 //此代码由飞云脚本圈整理提供(www.feiyunjs)
11
12 // //导⼊模块
13 // function 导⼊常⽤函数模块(){
14 // var url='raw.githubusercontent/snailuncle/autojsCommonFunctions/master/autojsCommonFunctions.js'
15 // var r = (url)
16 // log("code = " + r.statusCode);
17 // var html=r.body.bytes()
18 // files.writeBytes('./autojsCommonFunctions.js',html)
19 // var common=require('./autojsCommonFunctions.js')
20 // return common
21 // }
22 // var common=导⼊常⽤函数模块()
23 // log(common)
24 // for(let i=0;i<33;i++){
25 // common.('fire in the hole')
26 // }
27
28
29
30
31 [
32 '点击控件',
33 '铃声',
34 '启动app',
35 '停⽌app',
36 '卸载app',
37 '卸载app没root',
38 '清除app数据',
39 '启动最新安装的app',
40 '停⽌最新安装的app',
41 '卸载最新安装的app',
42 '清除最新安装的app数据',
43 '静默安装app',
44 '获取app图标',
45 '控制app联⽹',
46 '获取⼿机上所有的app名字',
47 '点击输⼊框弹出输⼊法',
48 '使所有输⼊框点击时都能弹出输⼊法',
49 '失去焦点',
50 '是否root',
51 '获取指定应⽤的版本号',
52 '打开qq名⽚',
53 '打开qq名⽚',
54 'qq强制聊天',
55 '字节变为gbk中⽂',
56 '最新安装的app',
57 '⽂件修改时间',
58 '⽂件⼤⼩',
59 '字符串变字节',
60 '⽇期加N天',
61 'md5',
62 '是横屏还是竖屏',
63 '截图',
64 '随机字符',
65 '获取时间',
66 '调整⼿机⾳量',
67 '扫⼀扫',
68 '公共字符串',
69 '⽹络',
70 '安卓intent源码',
71 '获取⼿机ip地理位置',
72 '替换系统⽂件',
73 '编辑距离',
74 '数组交集',
75 '提取包含关键字的app',
76 '获取页⾯所有⽂字',
77 '悬浮控制',
78 '',
79 '打开开发者选项',
80 '⽓泡',
81 '随机字符串',
82 'wifi状态',
83 '开关飞⾏模式',
84 '上滑',
85 '获取deflate⽹页内容',
86 '获取gzip⽹页内容'
87 ]
88
89
90
91
92
93 var common = {}
94 Array.prototype.intersect = function () {
95 var result = new Array();
96 var obj = {};
97 for (var i = 0; i < arguments.length; i++) {
98 for (var j = 0; j < arguments[i].length; j++) {
99 var str = arguments[i][j];
100 if (!obj[str]) {
101 obj[str] = 1;
102 } else {
103 obj[str]++;
104 if (obj[str] == arguments.length) {
105 result.push(str);
106 }
107 } //end else
108 } //end for j
109 } //end for i
110 return result;
111 }
112 //集合去掉重复
113 Array.prototype.uniquelize = function () {
114 var tmp = {},
115 ret = [];
116 for (var i = 0, j = this.length; i < j; i++) {
117 if (!tmp[this[i]]) {
118 tmp[this[i]] = 1;
119 ret.push(this[i]);
120 }
121 }
122 return ret;
123 }
124 //并集
125 Array.prototype.union = function () {
126 var arr = new Array();
127 var obj = {};
128 for (var i = 0; i < arguments.length; i++) {
129 for (var j = 0; j < arguments[i].length; j++) {
130 var str = arguments[i][j];
131 if (!obj[str]) {
132 obj[str] = 1;
133 arr.push(str);
134 }
135 } //end for j
136 } //end for i
137 return arr;
138 }
139 //2个集合的差集在arr不存在
140 Array.prototype.minus = function (arr) {
141 var result = new Array();
142 var obj = {};
143 for (var i = 0; i < arr.length; i++) {
144 obj[arr[i]] = 1;
145 }
146 for (var j = 0; j < this.length; j++) {
147 if (!obj[this[j]]) {
148 obj[this[j]] = 1;
149 result.push(this[j]);
150 }
151 }
152 return result;
153 };
154 // console.log(Array.intersect(["1", "2", "3"], ["2", "3", "4", "5", "6"])); //[2,3]
155 // console.log([1, 2, 3, 2, 3, 4, 5, 6].uniquelize()); //[1,2,3,4,5,6]
156 // console.log(Array.union(["1", "2", "3"], ["2", "3", "4", "5", "6"], ["5", "6", "7", "8", "9"])) 157 // console.log(["2", "3", "4", "5", "6"].minus(["1", "2", "3"]));
158
159 common.点击控件 = function (view) {
160 log(arguments.callee.name + '开始')
161 log(view)
162 if (view) {
163 var x = view.bounds().centerX()
164 var y = view.bounds().centerY()
165 log('将要点击的坐标 %s,%s', x, y)
166 press(x, y, 1)
167 } else {
168 throw '传⼊点击控件中的view异常'
169 }
170 log(arguments.callee.name + '结束')
171 }
172 common.铃声 = function (铃声类型, 是否循环播放, 播放时长) {
173 var 铃声类型 = 铃声类型 || 0
174 var 播放时长 = 播放时长 || 6000
175 var 是否循环播放 = 是否循环播放 || false
176 if (是否循环播放) {
177 播放时长 = 666 * 1000
178 }
179 var 铃声选择结果 = dia.RingtoneManager.TYPE_NOTIFICATION
180 switch (铃声类型) {
181 case 0:
182 铃声选择结果 = dia.RingtoneManager.TYPE_RINGTONE
183 break;
184 case 1:
185 铃声选择结果 = dia.RingtoneManager.TYPE_ALARM
186 break;
187 case 2:
188 铃声选择结果 = dia.RingtoneManager.TYPE_ALL
189 break;
190 default:
191 break;
192 }
193 var mp = dia.MediaPlayer();
194 mp.setDataSource(context, DefaultUri(铃声选择结果)); 195 if (是否循环播放) mp.setLooping(true);
196 mp.prepare();
197 mp.start();
198 threads.start(function () {
199 sleep(播放时长)
200 if (mp.isPlaying()) {
201 mp.stop()
202 }
203 });
204 return mp;
205 }
206
207 common.启动app = function (appName) {
208 launchApp(appName)
209 }
210
211 common.停⽌app = function (appName) {
212 var packageName=getPackageName(appName);
213 shell('am force-stop ' + packageName,true);
214
215 }
216 common.卸载app = function (appName) {
217 var packageName=getPackageName(appName);
218 shell("pm uninstall "+packageName,true)
219 }
220
221 common.清除app数据 = function (appName) {
222 var packageName=getPackageName(appName);
223 shell('pm clear ' + packageName,true);
224 }
225
226
227 common.卸载最新安装的app=function (){
228 var pm = PackageManager()
229 var InstalledApplications(0)
230 var appInfoList=[]
231 for(let i=0;i<appList.size();i++){
232 var (i)
233 var appInfo={
234 appName:app.loadLabel(pm),
235 packageName:app.packageName,
236 isSystemApp:app.isSystemApp(),
237 PackageInfo(app.packageName,0).firstInstallTime
238 }
239 appInfoList.push(appInfo)
240
241 }
242 appInfoList.sort((a,b)=>{
243 return b.firstInstallTime-a.firstInstallTime
244 })
245 log('最新安装的app是=%j',appInfoList[0])
246
247 var packageName=appInfoList[0].packageName
248 shell("pm uninstall "+packageName,true)
249 return appInfoList[0].appName
250 }
251 common.清除最新安装的app数据=function (){
252 var pm = PackageManager()
253 var InstalledApplications(0)
254 var appInfoList=[]
255 for(let i=0;i<appList.size();i++){
256 var (i)
257 var appInfo={
258 appName:app.loadLabel(pm),
259 packageName:app.packageName,
260 isSystemApp:app.isSystemApp(),
261 PackageInfo(app.packageName,0).firstInstallTime
262 }
263 appInfoList.push(appInfo)
264
265 }
266 appInfoList.sort((a,b)=>{
267 return b.firstInstallTime-a.firstInstallTime
268 })
269 log('最新安装的app是=%j',appInfoList[0])
270
271 var packageName=appInfoList[0].packageName
272 shell('pm clear ' + packageName,true);
273 return appInfoList[0].appName
274 }
275 common.停⽌最新安装的app=function (){
276 var pm = PackageManager()
277 var InstalledApplications(0)
278 var appInfoList=[]
279 for(let i=0;i<appList.size();i++){
280 var (i)
281 var appInfo={
282 appName:app.loadLabel(pm),
283 packageName:app.packageName,
284 isSystemApp:app.isSystemApp(),
285 PackageInfo(app.packageName,0).firstInstallTime
286 }
287 appInfoList.push(appInfo)
288
289 }
290 appInfoList.sort((a,b)=>{
291 return b.firstInstallTime-a.firstInstallTime
292 })
293 log('最新安装的app是=%j',appInfoList[0])
294
295
296
297
298 var packageName=appInfoList[0].packageName
299 shell('am force-stop ' + packageName,true);
300 return appInfoList[0].appName
301 }
302
303 common.启动最新安装的app=function (){
304 var pm = PackageManager()
305 var InstalledApplications(0)
306 var appInfoList=[]
307 for(let i=0;i<appList.size();i++){
308 var (i)
309 var appInfo={
310 appName:app.loadLabel(pm),
311 packageName:app.packageName,
312 isSystemApp:app.isSystemApp(),
313 PackageInfo(app.packageName,0).firstInstallTime
314 }
315 appInfoList.push(appInfo)
316
317 }
318 appInfoList.sort((a,b)=>{
319 return b.firstInstallTime-a.firstInstallTime
320 })
321 log('最新安装的app是=%j',appInfoList[0])
322
323
324
325
326 var packageName=appInfoList[0].packageName
327 launch(packageName)
328 return appInfoList[0].appName
329 }
330
331 common.点击输⼊框弹出输⼊法=function (window,view){
332 (
333 "touch_down", function () {
334 questFocus();
335 questFocus();
336 }
337 )
338 (
339 "key", function (keyCode,event) {
340 Action()==event.ACTION_DOWN && keyCode == keys.back){
341 window.disableFocus()
342 sumed=true
343 }
344 questFocus();
345 questFocus();
346 }
347 )
348
349 }
350
351
352 common.使所有输⼊框点击时都能弹出输⼊法=function (window,inputBoxViewArr){ 353 for(let i=0;i<inputBoxViewArr.length;i++){
354 var view=inputBoxViewArr[i]
355 common.点击输⼊框弹出输⼊法(window,view)
356 }
357 }
358
359
360
361 common.失去焦点=function (window){
362 window.disableFocus()
363 }
364
365
366
367
368
369 common.是否root=function(){
370 var r=shell("ls /system/bin",true).String()
371 if(r.length>50){
372 return true
373 }else{
374 return false
375 }
376 }
377 common.获取指定应⽤的版本号 = function (appName) {
378 /**
379 * 获取指定应⽤的版本号
380 * @param {string} packageName 应⽤包名
381 */
382 function getPackageVersion(packageName) {
383 t);
384 var pckMan = PackageManager();
385 var packageInfo = PackageInfo(packageName, 0);
386 return packageInfo.versionName;
387 }
388 var packageName = getPackageName(appName);
389 return getPackageVersion(packageName)
390 }
391
392
393 common.打开qq名⽚=function (qq号){
394 app.startActivity({
395 action: "android.intent.action.VIEW",
396 data:"mqqapi://card/show_pslcard?card_type=group&uin="+qq号,
397 packageName: "bileqq",
398 });//打开qq名⽚
399
400
401 }
402
403
404
405 common.打开qq名⽚=function (qq号){
406 app.startActivity({
407 action: "android.intent.action.VIEW",
408 data:"mqqapi://card/show_pslcard?uin="+qq号,
409 packageName: "bileqq",
410 });//打开qq名⽚
411
412
413 }
414
415 common.qq强制聊天=function (qq号){
416 app.startActivity({
417 action: "android.intent.action.VIEW",
418 data:"mqq://im/chat?chat_type=wpa&version=1&src_type=web&uin="+qq号, 419 packageName: "bileqq",
420 });//qq强制聊天
421
422 }
423
424 common.字节变为gbk中⽂ = function (bytesContent) {
425 var str = new java.lang.String(bytesContent, "gbk")
426 return str
427 }
428 common.最新安装的app = function () {
429
430 var pm = PackageManager()
431 var InstalledApplications(0)
432 var appInfoList=[]
433 for(let i=0;i<appList.size();i++){
434 var (i)
435 var appInfo={
436 appName:app.loadLabel(pm),
437 packageName:app.packageName,
438 isSystemApp:app.isSystemApp(),
439 PackageInfo(app.packageName,0).firstInstallTime
440 }
441 appInfoList.push(appInfo)
442 }
443 appInfoList.sort((a,b)=>{
444 return b.firstInstallTime-a.firstInstallTime
445 })
446 log('最新安装的app是=%j',appInfoList[0])
447 return appInfoList[0]
448
449
450 }
451 common.⽂件修改时间 = function (path) {
452 var time=new java.io.File(files.path(path)).lastModified();
453 return time
454 }
455 common.⽂件⼤⼩ = function (path) {
456 var size = new java.io.File(path).length()
457 return size
458 }
459 common.字符串变字节 = function (string) {
460 return new java.lang.String(string).getBytes();
461 }
462 common.⽇期加N天 = function (n) {
463 var now = new Date();
464 now.Date()+n);
465 return (now);
466 }
467 common.md5 = function (string) {
468 return java.math.BigInteger(1,java.Instance("MD5")
469 .digest(java.lang.String(string).getBytes())).toString(16);
470 }
471 common.是横屏还是竖屏 = function () {
472 var a = (ientation);
473 if (a === 1) {
474 toastLog("这是竖屏!!");
475 return '竖屏'
476 }
477
478 else {
479 toastLog("这是横屏!!");}
480 return '横屏'
481
482 }
483 common.截图 = function (path) {
484 var path=path || '/sdcard/1temp.png'
485
486 var dd = shell("screencap -p "+path,true)
487 var img
488 de ==0){
489 img = ad(path)
490 }else{
491 log("错误信息:")
492 )
493 }
494 return img
495
496
497 }
498 common.随机字符=function (n){
下载app里的视频499 var n= n || 8
500 var str="";
501 for(var i=0;i<n;i++){
502 str+=String.fromCharCode(random(0,65535));
503 }
504 return str;
505 }
506
507 common.获取时间=function (time) {
508 if (time) {
509 return SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date(time)); 510 } else {
511 return SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(new Date());
512 }
513 }
514
515 common.调整⼿机⾳量=function (){
516
517 var am = SystemService(context.AUDIO_SERVICE)
518 // STREAM_MUSIC这个⾃⼰试试,是调整那种⾳量,范围0-6 ⾃⼰试试,我也不知道
519 var STREAM_MUSIC = 1
520 // 1 增⼤⾳量 -1 降低⾳量 0 不变
521 var ADJUST_RAISE = -1
522 // 1 显⽰调整⾳量界⾯ 0 不显⽰界⾯
523 var FLAG_SHOW_UI = 1
524 am.adjustStreamVolume(STREAM_MUSIC, ADJUST_RAISE, FLAG_SHOW_UI)
525
526
527 //获取最⼤⾳量
528 var max = am.getStreamMaxVolume(STREAM_MUSIC);
529 log(max)
530 //获取当前⾳量
531 toastLog('最⼤⾳量'+max)
532 sleep(2000)
533 var current = am.getStreamVolume(STREAM_MUSIC);
534 log(current)
535 toastLog('当前⾳量'+current)
536
537 }
538
539 common.扫⼀扫=function (){
540 context.startActivity(app.intent({
541 action: "VIEW",
542 className:"ui.LauncherUI",
543 packageName:"",
544 extras: {
545 "LauncherUI.From.Scaner.Shortcut": true
546 }
547 }).setFlags(335544320));
548 }
549 common.公共字符串=function (str1,str2){
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论