Bin4ry / deejayeye-modder

Other
359 stars 144 forks source link

*SUGESTION* Display applied patches on start screen #24

Open LeChuck71 opened 7 years ago

LeChuck71 commented 7 years ago

Currently only general modding information is displayed. Don't know if its possible to display applied patches

Bin4ry commented 7 years ago

Good idea, maybe inside the hub? since in the hub it is a textfield we can edit. one could append applied patches and version info there.

LeChuck71 commented 7 years ago

That sounds nice, if I only knew where/what the hub is ;) I thought about the "main" screen where the current modding info is displayed, any other place is fine.

Bin4ry commented 7 years ago

with hub i mean the screen where you choose your drone. where i put the github link, this is done in the patches/origin file. There is a line in there where this is written into the string value. we could just append the info there.

LeChuck71 commented 7 years ago

Yep, I mean the same place. Because of the many choices you have it would be great to display the applied patches and maybe the release number i.e. v26 or so

Man that mod is really coming to life ;)

Bin4ry commented 7 years ago

Yup, we will try to add this soon.

Pathogenius commented 7 years ago

I like the idea!

Pathogenius commented 7 years ago

Probably not practical, but when we leave out the removeFWservice patch, which seems like a redundant patch now that firmwares can be reverted, and onlinefunction can be disabled, so wouldn't it be clever if the applied patches showed up the the popup window for updating nfz zones? might be a bit aggressive but still cool :-)

kilrah commented 7 years ago

Probably not practical, but when we leave out the removeFWservice patch, which seems like a redundant patch now that firmwares can be reverted

Absolutely not, we have no idea what the next firmware will entice. Whole point is avoid a forced update to whatever upcoming firmware DJI might release and that could block any further downgrading.

NFZ popup is not called for the same reasons.

Pathogenius commented 7 years ago

As Lechuck pointed out, it is difficult to understand what exactly each individual patch does.

The removeFWupgrade service breaks the apps ability to check versions of firmware AND nfz database. Using this patch would seem to have no purpose as long as removeOnlinefunction is used. This was raised by someone in rcgroups a week or so ago.

Many like myself are assuming that we can skip that patch, as long as we do use the removeOnlinefunction patch. The assumption is that removeOnlinefunction break ALL online operations EXCEPT 'here maps'. That probably isn't true since the googleapispatch and removesocial.patch and removeupdateforced.patch and so.bspatch and offlinelogin.patch would seem to have online functions.

LeChuck71 commented 7 years ago

Hi there, with my suggestion I just wanted to point out that you cant be sure what patches are applied to the app once you got it installed, therefor a "list" of applied patches in the hub screen would be perfect.

If you can/should remove some patches is way beyond my understanding what they actually do. I can try to figure it out by name, but maybe they need some more detailed description in a "readme".

Like me I am currently just interested in the FCC patch to get better connectivity. I cannot judge if its bad for the app to call "home" once its patched - but to be honest the less the better without giving up firmware upgrade services on the bird ;)

Pathogenius commented 7 years ago

The patches are effected by looking for a very specific bit of content within the original, and then replacing a small portion of that content, thus it is extremely unlikely of a failure without you seeing an error. If the scroll says a patch was applied, then it almost certainly was, without error.

Are the patches themselves guaranteed to be perfect. Most certainly not, but so far very few issues have been reported by folks.

The only issue I have heard so far is that the flight playback feature breaks, no matter what patch you pick. Also, my personal experience is that, using all Mavic patches, except for disableFWservice which I don't use, the app performs wonderfully, in fact much more responsive than the official version.

You can view the patch files yourself to get a sense of what exactly is going on. While some of it probably wont make sense, it should show that nothing shifty is going on, I found that to be very obvious. For what its worth, I can say that Bin4ry and all contributors to this project are sincere and have done fantastic work in seriously improving the value of this app, and I would not be associated with it if that were not the case.

Having said that, it is experimental, and continues to be developed! :-)

Bin4ry commented 7 years ago

Ok i understand that you folks have problems to understand what the patches are doing. It is always difficult for me to see where the problems are, since i think the documentation plus the patch names plus the sources are pretty self-explaining. I think the online "problem" here is the removeOnline patch, this patch indeed removes alot of online communication to DJI servers. I tried to split the patches as logical as possible, but i am open for suggestions ;) This patch did remove EVERYTHING online in my first release, but i split it out sinc esome people wanted to keep Facebook and stuff like this, so i made the logical split into different patches.

The removeFWupgrade Service is an important patch since it removes the start of the upgardeservice class, this for once breaks the FW readout (no more FW version in the app) but also kills the upgrader itself, this is needed for people which want to stay online but only want to stop FWupgrade to happen. Same is for removeUpdateForce, this will disable DJI GO from forcing you to update the version if a new version is there, i think this uses Google Play to check the version, so the removeOnline is not enough since it will not disable the version check to playstore, anyway, this is only 2 boolean values :)

Any suggestions on what would be better for users to understand? I personally find it extremely hard to explain stuff like this in an easy way. If anyone volunteers to write the documentation file it is highly welcome :)

Pathogenius commented 7 years ago

Great explanation, and I have thought on this over the days, and now reading this, I'd say nothing needs to done differently. The very existence of the subordinate anti-online patches suggests that removeonline excludes them, especially given that they don't conflict when patching. Yours is perfectly logical, the problem is we have become so used to expecting things NOT to be logical (DJI documentation is a great example).

I think the online "problem" here is the removeOnline patch, this patch indeed removes alot of online communication to DJI servers. I tried to split the patches as logical as possible, but i am open for suggestions ;) This patch did remove EVERYTHING online in my first release, but i split it out sinc esome people wanted to keep Facebook and stuff like this, so i made the logical split into different patches.

Something along those lines in the readme would probably be useful. "removeonlinepatch disables online functions, excepting other online related patches", or something.

LeChuck71 commented 7 years ago

Just to make sure we are talking about the same I was looking for a moddified string on the hub that shows the applied patches like in this "mock up" image

Pathogenius commented 7 years ago

I like it! Let's make sure it is an optional choice. I like leaving the disable firmware service patch in for a few reasons, but one of them is it leaves the nfz update requester intact at app startup, so I can show the looky-loo's how safe and smart the drone is. That text might, shall we say, arouse suspicion. ;-)

LeChuck71 commented 7 years ago

That's true making the "applied patches" text optional is a good idea

321timo123 commented 5 years ago

any news here? edit the origin file doesn't work... only on 4.1.3. what can i do here?