欢迎访问wabc.cc — 源码交易 · 软件定制 · 建站服务一站式平台
全部分类
首页 - 首页 - 解决方案 - 推荐文章 - 手机换定位,朋友圈、陌陌、快手等软件如何实现虚拟定位

手机换定位,朋友圈、陌陌、快手等软件如何实现虚拟定位

分类:推荐文章 · 发布:2025-12-21 · 浏览:1

想要实现标题所述要求,目前有2种方法,第一种比较繁琐,技术型方法;第二种比较先进且简单,小白可操作,也是目前比较多的人使用的。

第一种:

新鲜的源码最好make -j8 看看能否编译通过

关于kernel 层

a.隐式函数问题:create_proc_entry 找不到改为 proc_create 编译通过

新建设备文件操作方法表 替换相关方法即可

static struct file_operations m_fops = {  

    .owner = THIS_MODULE,  

   // .open = vp_open,  

   // .release = vp_release, 

    .read = vp_proc_read,  

    .write = vp_proc_write,   

};  

proc_create(VP_DEVICE_PROC_NAME, 0, NULL, &m_fops);

1

2

3

4

5

6

7

8

9

b.修改drivers/Makefile文件,添加一行:obj-$(CONFIG_HELLO) += vp/

obj-$(CONFIG_VP) += vp/  

1

c.编译完成内核后会生成一个Image-gz-dtb替换源码中的即可

d.交叉编译环境用源码里面的即可

第二步,修改HAL

a.vp.c文件中缺少两个头文件

#include

#include

1

2

b.

//LOCAL_MODULE_PATH := $(TARGET_OUT_SHARED_LIBRARIES)/hw

//改为

LOCAL_MODULE_PATH := hw

1

2

3

4

第四步,修改Framework

a.路径错误

core/java/android/os/IVirtualPosition.aidl /

1

2

改为

core/java/android/os/IVirtualPositionService.aidl /

1

2

**此时注意

sepolicy 文件一定要修改 否则不能修改(7.1.1在system文件加下面)

一定要更新framework: make update-api 否则会报错

文中除新建文件外 请不要替换

进入 frameworks/base/services/core/jni 目录

肯能不没有com_android_server_location_GpsLocationProvider.cpp文件

(7.1.1)改为Gns什么的道理一样

不要忘记导入头文件

#include "hardware/vp.h"

#include   

1

2

此时马上成功了 md又出现了几个错误~!!!

a.VirtualPositionService: VirtualPosition JNI: failed to get vp stub module.

解决办法:

需要单独编译 这个模块mmm /hardxxx/libxxx/module/vp/

生成vp_deafult.so

(此时把app文件夹放入packages/apps/下 mmm编译app自动安装进系统)

然后make snod 重新生成system.img

b.open /dev/vp: Permission denied

解决办法:

在domain.te文件中添加

allow domain vp_device:chr_file rw_file_perms;

在untrusted_app.te文件中添加

allow untrusted_app virtualposition_service:service_manager find;

在system_app.te文件中添加

allow system_app virtualposition_service:service_manager find;

这个文件system/core/rootdir/ueventd.rc加入

/dev/vp 0666 root root

c.01-13 04:44:09.981 918-918/system_process E/LocSvc_afw: E/const GpsGeofencingInterface get_geofence_interface(), dlopen for libgeofence.so failed, error = dlopen failed: library “libloc_api_v02.so” not found

解决办法:(此so只对应nmf26f android N 不要乱用)

https://github.com/MoKee/android_vendor_lge_bullhead/blob/mkn-mr1/proprietary/lib/libloc_api_v02.so

https://github.com/mikalackis/proprietary_vendor_lge_bullhead/blob/NMF26F/vendor/lib64/libgeofence.so

第二种:

使用软件、用蓝牙连接,即时修改位置,真正的指哪改哪。

有需要的可以找\/:ker33738




上一篇:春天即将到来,雾霾却没有要走的意思?
下一篇:智慧晶软件APP开发功能介绍

相关文章

源码分类

热门源码

最新资讯

联系我们