After multiple tests I come to the conclusion that with the service enabled the logs and contacts will not sync at all, ever. In order to get the logs and contacts to sync again you need to remount / rw and then disable the service with systemctl and reboot. Afterwards the sync works fine but the battery drain is of course back. Does anybody have an idea on how to keep the gear syncing without affecting the battery life? Is this behavior something expected or it is just my gear? Thanks in advance for any reply.
What device do you have? On non-Samsung devices only contacts would synchronise anyway... If you have Samsung, why would you use these fixes anyway?Hi mpogr,
First thanks a lot for all your work. Using the root/service method on the Gear 2 for me didn't work well because I was unable to sync contacts or logs anymore. I decided to flash stock back on Gear 2 and downgrade GM to 2.1.14052101 and use the goproviders apk you provided specially for this version of GM. Now battery drain is great, logs sync well but contacts will not sync again. If I manually try to sync them from the Gear 2 side it says Syncing for a while and then it stops without really syncing them. Do you have any suggestions on how to sync the contacts in this scenario?
Again thanks a lot for all your great work!
What device do you have? On non-Samsung devices only contacts would synchronise anyway... If you have Samsung, why would you use these fixes anyway?
Look, what goproviders fix does it just dilutes the sync logic invocations 1:256 (in the latest version). Also, I didn't create that fix for the latest versions of Gear Manager, so using the modded goproviders with those is not recommended and could break all sorts of things. I don't really know why the fix on the Gear doesn't work for you though. After connecting the Gear to the phone, there is typically enough time for the contacts to synchronise, even just once. The sync process is killed every 2 minutes, so it's a matter of luck. But, if you attempt several times (just disconnect/reconnect the Gear with the phone), it should work.Galaxy S5. As you wondered in the OP the problem exists even on Samsung devices. My Gear 2 drains a full battery in 8h without your mod. A friend of mine with a Note 3 has experienced the same.
Anyway how should contacts sync be affected by using your goproviders?
Again thanks for your great work.
Look, what goproviders fix does it just dilutes the sync logic invocations 1:256 (in the latest version). Also, I didn't create that fix for the latest versions of Gear Manager, so using the modded goproviders with those is not recommended and could break all sorts of things. I don't really know why the fix on the Gear doesn't work for you though. After connecting the Gear to the phone, there is typically enough time for the contacts to synchronise, even just once. The sync process is killed every 2 minutes, so it's a matter of luck. But, if you attempt several times (just disconnect/reconnect the Gear with the phone), it should work.
It's hard to tell, because the frequency of the sync doesn't seem to be constant. It's probably about once in 1-2 hours.I am using goproviders with the corresponding older version of GM just as you recommended. I think it works ok now. How often is 1:254? I don't know the original behaviour so I cannot calculate it.
It's hard to tell, because the frequency of the sync doesn't seem to be constant. It's probably about once in 1-2 hours.
To make kill_contacts permanent, you can create service so that it will automatically start on reboot
Code:[Unit] Description=Automatically Kill Contacts Every 2 Minutes [Service] ExecStart=/sbin/kill_contacts [Install] WantedBy=multi-user.target
push this file to /etc/systemd/system
change mod to 644
enable service
start service
Code:c:\sdb root on c:\sdb push kill_contacts.service /etc/systemd/system c:\sdb shell sh-3.2#chmod 644 /etc/systemd/system/kill_contacts.service sh-3.2#systemctl enable /etc/systemd/system/kill_contacts.service sh-3.2#systemctl start kill_contacts.service
check running service using :
Code:journalctl -u kill_contacts.service
Edit: with new Gear Manager (Jun release), this method doesn't work anymore. The new approach is to install a "contact synchroniser killer" app on the rooted watch. More details are in this post.
I really appreciated the GoProviders fix....now back to the same 12hr to dead Gear2 paired with Samsung Note3...any thoughts as to how I can address this...I work in a Mac/Apple environment . Not sure if that program functions on the Mac. Any direction would be greatly appreciated. Thanks!!!OK, the handler I updated in the 2 previous fixes didn't change from the previous version of "goproviders", so I hoped I could just use the same .class file, DEX it, stick into an APK, sign and be done with it. Unfortunately, it looks some other logic has changed, so now the same fix doesn't work anymore.
So I started investigating the other end, that is, the watch. The major difference is now we have ROOT on the Gear, so why not use it?
I quickly figured out that the offending process on the watch side was "w-contacts2-consumer". Apparently, if you just kill it, this stops Contact synchronisation only, while Contacts app on the watch remains fully functional. Unfortunately, this process is respawned every time Bluetooth connection is reestablished between the the phone and the watch.
I was looking for "cron" for Tizen, hoping to put "pkill" into a recurring task that'd run every couple of minutes. Unfortunately, I couldn't find "cron" on the watch, and the version of busybox suggested in one of the threads on this forum doesn't have it precompiled.
Then I thought: why the heck can't I just write a small app (command line) that would literally just do this:
After a bit of playing around with Tizen SDK, I managed to produce this executable (attached). You can put it into /sbin, making sure permissions are 755. One last thing is to make it run as a service:Code:while(1) { system("pkill w-contacts2"); sleep(120); }
I don't think it'll survive a reboot though, I'll get it sorted later.Code:systemd-run --unit=kill_contacts.nonsamsung --description="Automatically Kill Contacts Every 2 Minutes" /sbin/kill_contacts
Now battery consumption is back to normal, and contacts get synchronised every time the watch connects to the phone, which is more than fine with me.
Where do you find this? Sorry for the ignorance!!!I switched to using TizenMod 3.0 Gear 2 ROM, which has the fix already built in, and never looked back ever since...
I switched to using TizenMod 3.0 Gear 2 ROM, which has the fix already built in, and never looked back ever since...
---------- Post added at 12:57 AM ---------- Previous post was at 12:44 AM ----------
It's on the watch side, so computer side doesn't matter...
while(1)
{
system("pkill w-contacts2");
sleep(120);
}
systemd-run --unit=kill_contacts.nonsamsung --description="Automatically Kill Contacts Every 2 Minutes" /sbin/kill_contacts
[Unit]
Description=Automatically Kill Contacts Every 2 Minutes
[Service]
ExecStart=/sbin/kill_contacts
[Install]
WantedBy=multi-user.target
c:\sdb root on
c:\sdb push kill_contacts.service /etc/systemd/system
c:\sdb shell
sh-3.2#chmod 644 /etc/systemd/system/kill_contacts.service
sh-3.2#systemctl enable /etc/systemd/system/kill_contacts.service
sh-3.2#systemctl start kill_contacts.service
journalctl -u kill_contacts.service
In the fixed APK the logic is actually invoked 1 time out of 64 attempts. It makes its frequency about every 40 minutes instead of every 30 seconds.Could you please explain your "logic invocations, right now 1:64" change?
I use Super Manager for this sort of tasks. Look it up in Google Play store.thanks but I am not been able to uninstall the goproviders app. there is no option to uninstalled View attachment 2807827
please advice if you can
Sent from my SM-N900T using Tapatalk