使用Auto.js Pro获取手机号的探索,本机号码怎么稳定取?

有一天,群里有人问怎么用Auto.js Pro获取手机号码。
我百度了一下,随手丢了一个链接给他。由此引发了一伙人的测试与交流。
通过JAVA代码获取手机的一些基本信息(本机号码,SDK版本,系统版本,手机型号)

这篇文章是java的代码。需要翻译成Auto.js Pro的代码。
由于Auto.js支持直接调用Android的API,对于Auto.js没有内置的函数,可以直接通过修改Android代码为JavaScript代码实现。

参考文档

java代码:

package com.zzw.getPhoneInfos;

import android.app.Activity;
import android.content.Context;
import android.os.Build;
import android.os.Bundle;
import android.telephony.TelephonyManager;
import android.util.Log;

public class MainActivity extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        // 获取电话管理对象
        TelephonyManager mTelephonyManager = (TelephonyManager) this.getSystemService(Context.TELEPHONY_SERVICE);

        // 获取手机号码
        String phoneNumber = mTelephonyManager.getLine1Number();
        Log.d("获取本机电话号码--->", phoneNumber);
    }
}

下面是群里的小伙伴翻译的Autojs.Pro代码:

// importClass(android.telephony.TelephonyManager);
// importClass(android.content);
log(获取本机号码())

function 获取本机号码() {
  var mTelephonyManager = context.getSystemService(context.TELEPHONY_SERVICE);
  var phoneNumber = mTelephonyManager.getLine1Number();
  return phoneNumber;
};

经过飞云测试和群友反馈,有的手机能获取到手机号,有的获取不到。
就算在手机设置里,手动给Auto.js Pro设置了允许获取手机号的权限,也是同样的结果。

最后讨论不了了之。飞云的结论是,这个方法不太稳定。有的手机能获取到,有的手机获取不到。要想稳定的获取手机号,还得另辟蹊径。

开发环境与工具

开发IDE:Visual Studio Code1.3.5.1
Auto.js:Pro 7.0.3-7
终端设备1:红米NOTE5A高配版
终端设备1分辨率:720X1280像素
终端设备1安卓版本:7.1.2
终端设备2:红米NOTE7
终端设备2分辨率:1080X2340像素
终端设备2安卓版本:9

Auto.js Pro文档

文档地址

相关教程

跟我学Auto.js Pro安卓免ROOT引流脚本开发教程

1. 官方交流QQ群,添加多个不批。建议使用安卓手机或电脑申请。
Auto.js学习交流③群:286635606
Auto.js学习交流②群:712194666(满员)
IOS免越狱自动化测试群:691997586
EasyClick学习交流①群:737066890
2. 盗版,破解有损他人权益和违法作为,请各位会员支持正版。
3. 本站部分资源来源于用户上传和网络搜集,如有侵权请提供版权证明并联系站长删除。
4.如未特别申明,本站的技术性文章均为原创,未经授权,禁止转载/搬运等侵权行为。
5.全站所有付费服务均为虚拟商品,购买后自动发货。售出后概不接受任何理由的退、换。注册即为接受此条款。
6.如果站内内容侵犯了您的权益,请联系站长删除。
飞云脚本 » 使用Auto.js Pro获取手机号的探索,本机号码怎么稳定取?

企业级大数据智能营销管理系统

了解详情