FBlackBox / BlackBox

BlackBox is a virtual engine, it can clone and run virtual application on Android, users don't have to install APK file to run the application on devices. BlackBox control all virtual applications, so you can do anything you want by using BlackBox.
2.26k stars 627 forks source link

Dev loc #39

Closed BlackBoxing closed 2 years ago

FBlackBox commented 2 years ago

服务调度上存在问题,不应该在app上直接使用BFakeLocationManagerService,应该通过BlackBoxCore去获取远程binder,此pr我先进行优化,等合并到master后再继续开发,感谢贡献。

BlackBoxing commented 2 years ago

Could you please explain the reason of method of invocation? I've looked up the leaking souce code of VA which just do it before I started to code fake location. But I thought it was a redundant work.

FBlackBox commented 2 years ago

This is not a redundant thing, because the process black manages the system service. If each process holds a BFakeLocationManagerService instead of getting the system service here, then the first point is that there is no consistency in the data, and there is no way for the developer to use the api to do some functions, such as developing a virtual joystick to simulate walking and moving when the application is running. The second point is that the LocationManager does not just store location information, but also needs to implement some system functions, such as callback information, simulating the real system to update the location function, etc.

FBlackBox commented 2 years ago

I will finish the subsequent development, please wait until I merge the code into master, you can check the code to understand the intent

BlackBoxing commented 2 years ago

Thanks for your rely. Yeah, I've realized the inconsistency in data before but ignored it when developing. Maybe I should take more time understanding base architecture of BB especially Binder work. Meanwhile, I've tried my best to avoid copying VA because I referred to VA part which is also similar to AOSP source code when coding. If there's any trouble or trace of plagiarism, please find me immediately.

FBlackBox commented 2 years ago

Yes, we try to write code according to our own ideas, although it may not be perfect enough as other already mature software, similar to VA, but we can improve it slowly.

FBlackBox commented 2 years ago

VA is a great piece of engineering, even though it does some ugly things. But it doesn't take away from the fact that it is a good project.

BlackBoxing commented 2 years ago

You're a magnificent partner. I guess you've looked up fake location thought I wrote there and done it partly.In the end, the simplified code looks well.

BlackBoxing commented 2 years ago

Have you fixed the bug of UI which couldn't get configuration of application from BLocationManager? I've seen the process is ideal.

FBlackBox commented 2 years ago

Have you fixed the bug of UI which couldn't get configuration of application from BLocationManager? I've seen the process is ideal.

yes

BlackBoxing commented 2 years ago

Have you fixed the bug of UI which couldn't get configuration of application from BLocationManager? I've seen the process is ideal.

yes

Could you tell me the reason? Is it the invocation of BLocationManagerService or the method of data persistence? The git record you submitted is messy which includes mine and yours. And do you use the email recently? Maybe I could email at you.

FBlackBox commented 2 years ago

It's a problem on kotlin, you used a non-null return value, but at first getLocation was null and kotlin threw the null pointer. Please check: https://github.com/FBlackBox/BlackBox/commit/c634779fc2a29e94924e3a78ae31bebe274b5e96, I've marked it for you.

BlackBoxing commented 2 years ago

It's a problem on kotlin, you used a non-null return value, but at first getLocation was null and kotlin threw the null pointer. Please check: c634779, I've marked it for you.

Thanks. I would check the code. Do you usually use email?