精华内容
下载资源
问答
  • 安卓系统模拟位置(刷为系统app)

    万次阅读 2019-05-08 11:45:14
    现在安卓玩pokemongo,虚拟定位比较常用的欺骗方法是将fake gps软件弄为系统app,用其他普通的方法模拟定位会被检测出来。不过之前不明白是什么原理,所以到github上找了找,找到了...

    现在安卓玩pokemongo,虚拟定位比较常用的欺骗方法是将fake gps软件弄为系统app,用其他普通的方法模拟定位会被检测出来。不过之前不明白是什么原理,所以到github上找了找,找到了https://github.com/xiangtailiang/FakeGPS

    实现就是依靠通过反射得到LocationManager对象的ILocationManager这个对象,调用其reportLocation方法上传坐标,需要INSTALL_LOCATION_PROVIDER权限。ILocationManager是一个AIDL接口,所以还需要创建android.location.ILocationManager.aidl文件

        private static ILocationManager mILocationManager;
        private void mock(){
            mLocationManager = (LocationManager) this.getSystemService(Context.LOCATION_SERVICE);
            Field declaredField = null;
            try {
                declaredField = Class.forName(mLocationManager.getClass().getName()).getDeclaredField("mService");
                declaredField.setAccessible(true);
                mILocationManager = (ILocationManager) declaredField.get(mLocationManager);
            } catch (Exception e) {
                e.printStackTrace();
            }
            new Thread(new Runnable() {
                @Override
                public void run() {
                    while(true){
                        try {
                            Thread.sleep(100);
                        } catch (InterruptedException e) {
                            e.printStackTrace();
                        }
                        Location location = new Location(LocationManager.GPS_PROVIDER);
                        try {
                            location.setLatitude(35.6925);
                            location.setLongitude(139.7564);
                            location.setAltitude(5);
                            if (Build.VERSION.SDK_INT > Build.VERSION_CODES.JELLY_BEAN_MR1) {
                                location.setElapsedRealtimeNanos(SystemClock.elapsedRealtimeNanos());
                            }
                            location.setAccuracy(10);
                            location.setSpeed(0);
                            location.setTime(System.currentTimeMillis());
                            mILocationManager.reportLocation(location, false);
                        } catch (Exception e) {
                            e.printStackTrace();
                        }
                    }
                }
            }).start();
        }
    

    这个只上报了gps provider。所以用的时候需要手机定位模式设为only gps。

    此方法不需要打开模拟位置开关也不需要手机root,所以能够避免被pokemongo检测到,移动应用刷twrp用其文件管理器移动到/system/priv-app中即可。

    其次这个方法:只是往系统的API中增加了一个GPS Provider,并没有改变原来GPS的读取。如果真实的GPS也定位成功,一个真信号一个假信号会交替出现,就会发生瞬移的现象。

         所以为了屏蔽真实的gps信号,买个gps屏蔽器就行了,某宝50元就能买到。

     

     

    展开全文
  • 安卓app的文件读写方法

    千次阅读 2016-02-29 17:18:07
    最近在学习安卓,总结记录下app读写文件的位置和方法; 安卓app可以读写的位置为: 1、内置data目录下对应app名称的目录; 2、扩展SD卡(包括虚拟的内置SD卡和外置SD卡); 那么先讲讲内置data目录下...

    最近在学习安卓,总结记录下app读写文件的位置和方法;


    安卓的app可以读写的位置为:

    1、内置data目录下对应app名称的目录;

    2、扩展SD卡(包括虚拟的内置SD卡和外置SD卡);


    那么先讲讲内置data目录下文件的读写,这个位置的读写有提供一套单独的API来读写,如下:

    //写数据
        private void writeDataFile(String fileName,String writestr) throws IOException{
            try{
                FileOutputStream fout =openFileOutput(fileName, Context.MODE_PRIVATE | Context.MODE_APPEND);
    
                byte[] bytes = writestr.getBytes();
    
    //            String str = new String(bytes);
    
    //            Log.i(TAG, "writeDataFile:" + "bytes.toString=" + str + ";");
    
                fout.write(bytes);
    
                fout.close();
            }
    
            catch(Exception e){
                e.printStackTrace();
                Log.e(TAG,"writeDataFile Error!");
          }
        }
    
        //读数据
        public String readDataFile(String fileName) throws IOException{
            String res = "";
            try{
    
    //            String[] strings = fileList();
    //            for(int i = 0; i < strings.length; i++){
    //                Log.i(TAG, "fileList String["+i+"]="+strings[i].toString());
    //            }
                FileInputStream fin = openFileInput(fileName);
                int length = fin.available();
                byte [] buffer = new byte[length];
                fin.read(buffer);
                res = new String(buffer);
                fin.close();
    
            }
            catch(Exception e){
                e.printStackTrace();
                Log.e(TAG, "readDataFile Error!");
            }
            return res;
        }
    
    //删除文件
    deleteFile(getResources().getString(R.string.testfilename));

    以上接口直接对应/data/data/[packname]/file/目录建立和读写文件;不需要另外写对应的文件路径;

    当然,实验发现也可以通过

    Environment.getDataDirectory().getPath()获取对应的data路径后通过普通的方法读写data中的文件;
    
    
    接下来说明如何读取SD卡内的文件:
    1、获取SD卡读写权限:
    在manifests中增加以下权限,获取读写SD卡的权限;
    <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"></uses-permission>
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"></uses-permission>

    2、获取SD卡的路径:
    系统提供了以下接口来获取SD卡路径
    Environment.getExternalStorageDirectory().getPath();
    但是现阶段系统通常都通过虚拟的方式模拟一个内置SD卡,用户可能同时插入一个外置SD卡;
    双sd卡时,以上接口会根据”设置“里面的数据存储位置选择,获得的是内置sd卡或外置sd卡;

    系统并没有区分内置SD卡或者外置SD卡,目前获取外置SD卡的方法如下,但是可能在不同机器上回存在一定的问题:
    /**
         * 获取sd卡路径
         * 双sd卡时,获得的是外置sd卡
         * @return
         */
        private String getSDCardPath() {
            String sdcard_path = null;
            String sd_default = Environment.getExternalStorageDirectory()
                    .getAbsolutePath();
            Log.d("text", sd_default);
            if (sd_default.endsWith("/")) {
                sd_default = sd_default.substring(0, sd_default.length() - 1);
            }
            InputStream is = null;
            InputStreamReader isr = null;
            BufferedReader br = null;
            // 得到路径
            try {
                Runtime runtime = Runtime.getRuntime();
                Process proc = runtime.exec("mount");
                is = proc.getInputStream();
                isr = new InputStreamReader(is);
                String line;
                br = new BufferedReader(isr);
                while ((line = br.readLine()) != null) {
                    if (line.contains("secure"))
                        continue;
                    if (line.contains("asec"))
                        continue;
                    if (line.contains("fat") && line.contains("/mnt/")) {
                        String columns[] = line.split(" ");
                        if (columns != null && columns.length > 1) {
                            if (sd_default.trim().equals(columns[1].trim())) {
                                continue;
                            }
                            sdcard_path = columns[1];
                            return sdcard_path;
                        }
                    } else if (line.contains("fuse") && line.contains("/mnt/")) {
                        String columns[] = line.split(" ");
                        if (columns != null && columns.length > 1) {
                            if (sd_default.trim().equals(columns[1].trim())) {
                                continue;
                            }
                            sdcard_path = columns[1];
                            return sdcard_path;
                        }
                    }
                }
    
            } catch (Exception e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            } finally{
                try {
                    if( br !=null){
                        br.close();
                    }
                } catch (IOException e) {
    // TODO Auto-generated catch block
                    e.printStackTrace();
                }
                try {
                    if(isr!=null){
                        isr.close();
                    }
                } catch (IOException e) {
    // TODO Auto-generated catch block
                    e.printStackTrace();
                }
                try {
                    if(is!=null){
                        is.close();
                    }
                } catch (IOException e) {
    // TODO Auto-generated catch block
                    e.printStackTrace();
                }
            }
            return Environment.getExternalStorageDirectory().getPath();
        }


    另外,也有一切其他方法来读写文件:
    一、使用RandomAccessFile进行文件的读写:

    RandomAccessFile的使用方法比较灵活,功能也比较多,可以使用类似seek的方式可以跳转到文件的任意位置,从文件指示器当前位置开始读写。 它有两种构造方法 new RandomAccessFile(f,"rw");//读写方式 new RandomAccessFile(f,"r");//只读方式

    使用实例:

    [java] view plain copy
    1. /*  
    2.  * 程序功能:演示了RandomAccessFile类的操作,同时实现了一个文件复制操作。  
    3.  */    
    4.     
    5. import java.io.*;    
    6.     
    7. public class RandomAccessFileDemo {    
    8.  public static void main(String[] args) throws Exception {    
    9.   RandomAccessFile file = new RandomAccessFile("file""rw");    
    10.   // 以下向file文件中写数据    
    11.   file.writeInt(20);// 占4个字节    
    12.   file.writeDouble(8.236598);// 占8个字节    
    13.   file.writeUTF("这是一个UTF字符串");// 这个长度写在当前文件指针的前两个字节处,可用readShort()读取    
    14.   file.writeBoolean(true);// 占1个字节    
    15.   file.writeShort(395);// 占2个字节    
    16.   file.writeLong(2325451l);// 占8个字节    
    17.   file.writeUTF("又是一个UTF字符串");    
    18.   file.writeFloat(35.5f);// 占4个字节    
    19.   file.writeChar('a');// 占2个字节    
    20.     
    21.   file.seek(0);// 把文件指针位置设置到文件起始处    
    22.     
    23.   // 以下从file文件中读数据,要注意文件指针的位置    
    24.   System.out.println("——————从file文件指定位置读数据——————");    
    25.   System.out.println(file.readInt());    
    26.   System.out.println(file.readDouble());    
    27.   System.out.println(file.readUTF());    
    28.     
    29.   file.skipBytes(3);// 将文件指针跳过3个字节,本例中即跳过了一个boolean值和short值。    
    30.   System.out.println(file.readLong());    
    31.     
    32.   file.skipBytes(file.readShort()); // 跳过文件中“又是一个UTF字符串”所占字节,注意readShort()方法会移动文件指针,所以不用加2。    
    33.   System.out.println(file.readFloat());    
    34.       
    35.   //以下演示文件复制操作    
    36.   System.out.println("——————文件复制(从file到fileCopy)——————");    
    37.   file.seek(0);    
    38.   RandomAccessFile fileCopy=new RandomAccessFile("fileCopy","rw");    
    39.   int len=(int)file.length();//取得文件长度(字节数)    
    40.   byte[] b=new byte[len];    
    41.   file.readFully(b);    
    42.   fileCopy.write(b);    
    43.   System.out.println("复制完成!");    
    44.  }    
    45. }    

    二、读取资源文件:

    1) 从resource的raw中读取文件数据:

    [java] view plain copy
    1. String res = "";   
    2. try{   
    3.    
    4.     //得到资源中的Raw数据流  
    5.     InputStream in = getResources().openRawResource(R.raw.test);   
    6.   
    7.     //得到数据的大小  
    8.     int length = in.available();         
    9.   
    10.     byte [] buffer = new byte[length];          
    11.   
    12.     //读取数据  
    13.     in.read(buffer);           
    14.   
    15.     //依test.txt的编码类型选择合适的编码,如果不调整会乱码   
    16.     res = new String(buffer);
    17.       
    18.     //关闭      
    19.     in.close();              
    20.   
    21.    }catch(Exception e){   
    22.       e.printStackTrace();           
    23.    }   

     2) 从resource的asset中读取文件数据

    [java] view plain copy
    1. String fileName = "test.txt"//文件名字   
    2. String res="";   
    3. try{   
    4.   
    5.    //得到资源中的asset数据流  
    6.    InputStream in = getResources().getAssets().open(fileName);   
    7.   
    8.    int length = in.available();           
    9.    byte [] buffer = new byte[length];          
    10.   
    11.    in.read(buffer);              
    12.    in.close();  
    13.    res = new String(buffer);      
    14.   
    15.   }catch(Exception e){   
    16.   
    17.       e.printStackTrace();           
    18.   
    19.    }   

    总结:

    1、apk中有两种资源文件,使用两种不同的方式进行打开使用。 raw使用InputStream in = getResources().openRawResource(R.raw.test); asset使用InputStream in = getResources().getAssets().open(fileName);

    这些数据只能读取,不能写入。更重要的是该目录下的文件大小不能超过1M。

    同时,需要注意的是,在使用InputStream的时候需要在函数名称后加上throws IOException。

    2、SD卡中的文件使用FileInputStream和FileOutputStream进行文件的操作。 3、存放在数据区(/data/data/..)的文件只能使用openFileOutput和openFileInput进行操作。 注意不能使用FileInputStream和FileOutputStream进行文件的操作。 4、RandomAccessFile类仅限于文件的操作,不能访问其他IO设备。它可以跳转到文件的任意位置,从当前位置开始读写。

    5、InputStream和FileInputStream都可以使用skip和read(buffre,offset,length)函数来实现文件的随机读取。

    
    
    展开全文
  • 我们经常会看到各种定位信息,例如微信朋友圈分享出来的旅行定位,或者跑步APP的轨迹记录等等。然而这些定位信息是真的吗?...Fake Location(虚拟定位):点此下载这款位置模拟APP来自于国内开发...

    e35325f2957ca6070d99ad20b917c4d5.png

    我们经常会看到各种定位信息,例如微信朋友圈分享出来的旅行定位,或者跑步APP的轨迹记录等等。然而这些定位信息是真的吗?这可未必。其实很多朋友都知道,手机特别是安卓机上的位置信息,是可以模拟造假的!市面上已经出现过不少的模拟位置安卓APP,那么到底哪款给力?今天,就来给大家介绍一款相当不错的位置模拟APP,一起来看看吧。

    Fake Location(虚拟定位):点此下载

    这款位置模拟APP来自于国内开发者,名字非常直白,就叫做“Fake Location虚拟定位”。它不一定需要root,但在root环境下运行更好,更容易模拟成功,因此推荐大家使用root权限运行。

    ce32e0a6952c054d85fb69c232eccc70.png
    可以选择运行模式

    178126437f23bf126dec1baaed0b1773.png
    界面使用Material Design设计

    这款Fake Location虚拟定位APP的界面非常好看,使用的是Material Design设计,这也是很多个人开发APP的亮点。Fake Location虚拟定位APP的功能非常多,而且都颇具亮点。首先是最简单的位置模拟,它除了可以在地图上选位置,还可以通过基站模拟来增强拟真度,甚至还可以通过摇杆的方式移动或者模拟步频(可能需要付费的专业版),可谓是各种细节都考虑到了。

    cf19d33dc0b274e604d8545c824b2542.png
    用地图模拟定位

    a2eef84762981f377ee3f104fa18392f.png
    专业版的功能非常多(此为官方截图)

    实际上,Fake Location虚拟定位APP的位置模拟也的确非常有效。笔者设置了一个假位置,然后其他APP的定位的确定位成为了这个虚拟的位置。

    d0cf4d6af64e810050e1700da1ce3ef1.png
    虚拟定位的确有效

    除了简单的位置模拟,Fake Location虚拟定位APP还有其他很多玩法。例如路线模拟,这可以直接作用到一些运动轨迹APP当中。而Fake Location虚拟定位APP当中还预设了多种移动模式,例如步行、跑步、开车等,无论是想要模拟跑步轨迹,还是模拟一次导航,都可以实现。

    789f04fed25239c63e0e146f57418843.png
    除了模拟位置还可以模拟路线、WIFI等

    a344e8d081aae23d717f66e606452472.png
    路线模拟功能,模拟跑步轨迹不成问题

    4694db4367075f54e1c67a3605c36c62.png
    在地图上可以设定路线模拟

    35d7a15f3629b8c23ed757e46779841c.png
    专业版功能更多(此为官方截图)

    除了模拟位置,这款APP还带有其他功能,例如模拟WIFI热点等。而值得一提的是,针对某些检测虚假定位的APP,Fake Location虚拟定位还提供了隐藏root权限、反定位检测等功能,这对于上班族意义重大,你懂的。

    f24d84daa05b018cdf965d956e089687.png
    能针对某些APP反检测,结合WIFI模拟定位模拟,赖床打卡你懂伐?

    总的来说,这的确是一款高质量、可玩性极强的位置模拟APP。如果你有相应需求,不妨尝试一下吧。

    展开全文
  • 【PConline 应用】我们经常会看到各种定位信息...市面上已经出现过不少的模拟位置安卓APP,那么到底哪款给力?今天,就来给大家介绍一款相当不错的位置模拟APP,一起来看看吧。Fake Location(虚拟定位)软件版本:1.0...

    【PConline 应用】我们经常会看到各种定位信息,例如微信朋友圈分享出来的旅行定位,或者跑步APP的轨迹记录等等。然而这些定位信息是真的吗?这可未必。其实很多朋友都知道,手机特别是安卓机上的位置信息,是可以模拟造假的!市面上已经出现过不少的模拟位置安卓APP,那么到底哪款给力?今天,就来给大家介绍一款相当不错的位置模拟APP,一起来看看吧。

    93ddc500b6c3f03661391dcf1b988949.pngFake Location(虚拟定位)软件版本:1.0.9.3Android软件立即查看

    这款位置模拟APP来自于国内开发者,名字非常直白,就叫做“Fake Location虚拟定位”。它不一定需要root,但在root环境下运行更好,更容易模拟成功,因此推荐大家使用root权限运行。

    b8d5e9a251e64cf5e060e4847caf83fe.png95d2209290128cccd012ec623e533a4a.png

    可以选择运行模式,界面使用Material Design设计

    这款Fake Location虚拟定位APP的界面非常好看,使用的是Material Design设计,这也是很多个人开发APP的亮点。Fake Location虚拟定位APP的功能非常多,而且都颇具亮点。首先是最简单的位置模拟,它除了可以在地图上选位置,还可以通过基站模拟来增强拟真度,甚至还可以通过摇杆的方式移动或者模拟步频(可能需要付费的专业版),可谓是各种细节都考虑到了。

    138794f1742a8fd26165c46845bed620.png1cdad61aa58fad7fbe8a71f59312a8c3.png

    用地图模拟定位,专业版的功能非常多

    实际上,Fake Location虚拟定位APP的位置模拟也的确非常有效。笔者设置了一个假位置,然后其他APP的定位的确定位成为了这个虚拟的位置。

    c7d7d4e4766f0e5a6df223a207e36619.png

    虚拟定位的确有效

    除了简单的位置模拟,Fake Location虚拟定位APP还有其他很多玩法。例如路线模拟,这可以直接作用到一些运动轨迹APP当中。而Fake Location虚拟定位APP当中还预设了多种移动模式,例如步行、跑步、开车等,无论是想要模拟跑步轨迹,还是模拟一次导航,都可以实现。

    a35f5b050659acbe99894918d647d6f6.png1bde781414fc36d2b97c9d806bc5a4ed.png

    除了模拟位置还可以模拟路线、WIFI等

    c3ca9578020f7599bef0597007d1f8a1.png6a101b79993d464e0b57ab9d5ed0bd45.png

    在地图上可以设定路线模拟

    除了模拟位置,这款APP还带有其他功能,例如模拟WIFI热点等。而值得一提的是,针对某些检测虚假定位的APP,Fake Location虚拟定位还提供了隐藏root权限、反定位检测等功能,这对于上班族意义重大,你懂的。

    662466f43d487f9508da4f60ccc27c6c.png

    能针对某些APP反检测

    总的来说,这的确是一款高质量、可玩性极强的位置模拟APP。如果你有相应需求,不妨尝试一下吧。

    展开全文
  • coinx-安卓 该项目目前已经结合了okex,bitmex平台的合约行情,合约交易等API的实现。项目获取的平台APIKEY和APISECRET都放置在手机本地,绝不会上传到其他地方,不放心可以直接看源码。 如果使用过程中发现什么问题...
  • 安卓移动应用-源码

    2021-02-07 20:29:34
    Android Mobile App开发 目的 熟悉针对Android平台规划,开发和测试移动应用程序的所有方面。 它强调使用Java编程语言创建应用程序,以及用于在移动设备上实现有效交互的编程技术。 将引入具有位置感知,消息传递...
  • 相对安卓机的虚拟定位,iOS因为系统限制并不容易随意虚拟定位。鉴于此蜜蜂就教大家iPhone不越狱实现虚拟定位。虚拟定位完了后位置是固定死的,不会随手机移动而移动的。若要恢复真实定位重启手机即可此定位支持任何...
  • (一)昨天电脑卡死, 就重装了一下电脑,重新配置了 app自动化测试所需要的环境之类的, 然后死活跑不了代码,还提示session 为0, 就是因为项目文件是以前用的虚拟环境搭建的, 重装后,这个旧项目定位不了pytest ...
  • 但是主要功能还有虚拟位置、WIFI模拟、拍照模拟、路线模拟、深度隐藏等,并且隐私专家还是一款免root运行环境下的数据测试软件,提供app多开,旨在为开发者提供更完善的数据测试环境,安卓开发者的好帮手。...
  • |--app信息menifest获取(如版本号) |--AsyncQueryHandler之异步查询Cursor处理 |--AutoCompleteTextView自动提示的用法 |--BitMap、Drawable、inputStream及byte[] 互转 |--ContentProvider内容提供者定义 |--...
  • 点击蓝字关注我们无论是风里,还是在雨里,我都在这里守候着你~钉钉打卡助手适用于安卓系统相信很多小伙伴可能为钉钉打卡这件事情所烦恼,那么今天,小编就分享一个你可以在任何位置钉钉打卡的软件。首先要先下载...
  • 这儿都是秘密2020 / 04 / 04 星期六Chapter .1近期了解了一下关于在家改肯德基wifi地址,然后写了这...IOS教程:打开王者人生app、查看附近特权合作商户,找一家点进去、记住位置(建议使用肯德基、下面还要模拟Wi-F...
  • 1. 背景:使用Vue.js做移动端App开发,使用了Vant框架,编辑器WebStrom,真机测试为MI PAD 4。 2. 问题: 如图所示:"技术支持...''使用了fixed布局,但是在点击输入框进行输入时,fixed布局随着键盘弹出被移动...
  • 这个软件属于网络通讯应用,是个安卓虚拟的定位工具。适用于各种你想的到的主流社交平台,让你随意设定手机的地理位置。摆脱监控app的监视,保护个人隐私,在社交软件中设置位置,交友更随意。但...
  • ![图片说明]... jar包已经放到libs文件下,两个so文件也放到了该在的位置app id和sdk key都已输入, 但so文件会显示乱码,用虚拟安卓机没有反应
  • 王者荣耀怎么改荣耀战区呢?...2、接着分身里面有个虚拟位置,这个一般app都是有的,如果没有就找带换定位的,然后设置到玩家想换的地点,今年山西、陕西、内蒙古之类的地区比较好上排行榜,所以可...
  • 这个方法原本苹果的用意是mock所开发APP内的位置,但是其实,使用这个方法,能将本机所有的app的定位都mock掉,有木有很激动?什么?你不知道激动啥?Pokemon Go 侬晓得伐,哪里出了快龙看着安卓小伙伴一个虚拟...
  • 顾名思义,该库引入了虚拟视图的概念,该概念允许使用XML定义的基本组件和布局直接在容器的画布上呈现,并计算组件的大小和位置。 这使得Android系统中的最终视图变平并且渲染性能得到改善。 动态构建业务组件的...
  • 一播多无人直播手机,这是一款基于安卓手机开发的直播工具,核心的虚拟摄像头技术由前谷歌工程师参与研发,支持全网直播APP内播放本地视频,可用于录制轮播直播带货、老师讲课、才艺展示等视频,省时、省力、省心。...
  • 你自己还设置不了,所以这就导致我在浏览各种APP时想返回上一级时特别困难,比如在看视频的时候想返回上一级,就需要先点一下屏幕找到跳出的虚拟返回键然后才能回到上一级,很是麻烦,而且不同的APP返回键的位置也各...
  • 系统拥有PC、手机WAP、微商城、安卓APP、苹果APP、微信小程序,六端合一,六端互通,并有无缝对接的开源IM客服系统,真正实现全网营销,极其适合企业及个人快速上线商务平台。 系统代码清晰易懂,大量的可视化报表...
  • 把程序目录下的所有文件,上传到您要安装的位置,然后打开如下网址 http://你的域名/程序目录/index.php 如果是第一次安装,系统会自动跳转到安装界面,您只需要按要求填写好相关的信息就可以顺利完成安装,完成...
  • getAppVersionCode : 获取 App 版本码 getAppSignature : 获取 App 签名 getAppSignatureSHA1 : 获取应用签名的的 SHA1 值 getAppSignatureSHA256 : 获取应用签名的的 SHA256 值 getAppSignatureMD5 : 获取应用签名...
  • 支持直接源码集成到example的方式,方便编译到安卓,for web套件等。 支持编译成wasm文件,直接网页运行,可以在谷歌、火狐、edge等浏览器运行,原生性能。 每个控件的源代码都有详细中文注释,都按照统一设计规范...
  • React学习笔记_从create-react-app学习webpack Reac学习笔记_reactSPA学习 React学习笔记_总结 React学习笔记_按需加载 apidoc使用教程-编写漂亮的api文档 yapi部署文档 React学习笔记_利用cors实现...
  • 兼容部分机型有底部虚拟菜单栏无法监听回调问题 优化 ScrollView 与 WebView 的兼容显示 2020-10-28 更新1.1.4 版本 处理 Flutter与Html的混合页面加载 2020-10-27 更新 1.1.3 版本 优化处理在 Android平台...

空空如也

空空如也

1 2
收藏数 27
精华内容 10
关键字:

安卓虚拟位置app