Pages:
Author

Topic: Please give us back the option to disable Sync on Power - page 2. (Read 6379 times)

member
Activity: 106
Merit: 10
I'm on stock Android 4.2.2 (Galaxy Nexus).

I'm also on 4.2.2.  Got a Samsung Galaxy S4 Active (I would have preferred the stock Google ROM, no Samsung or AT&T bloat, but didn't know that at the time).

Quote
Not necessarly. If Android correctly notifies the app that network is down, the app will act appropriately and not fire up Peers/PeerGroup.

Does 127.0.0.1 count as "network is down"?  That address should always be reachable, even if device is completely isolated, since it's talking to itself then.

Quote
I've never tried because I think it's worth to invest 1 MB of my 200 MB monthly mobile quota in being synched with the chain as much as possible. But since you're so convinced about the usecase - why don't you try?

I'm trying it now.  Even if the app takes more battery life, at least I'll be able to recharge my phone at work again!

Quote
Btw. was just thinking about the looping connect bug again. I was exaggerating. It will not connect endlessly but only for 2-3 minutes at a time - there is a timeout built into the app. Still you want to avoid running into that bug if possible.

Thanks for the update.  I noticed that CPU usage did increase, but not enough to be a real concern.  I'll let it go for a while, though, and see how it makes a difference.
member
Activity: 106
Merit: 10
It's not intentional, it's just never been a priority to fix.

I will say this again - why do you care about this? Bitcoin Wallet is likely to use less bandwidth than your email syncing does. If you have any kind of mobile internet plan at all, you can afford this app.

Do you actually observe it use significant amounts of your bandwidth quota, or is this some psychological thing where you just can't stand the idea of it talking to the network in the background?

A little of both.

I haven't noticed it using a lot of bandwidth, which is good.  I rather like the per-app metering of bandwidth that Android provides.  Still haven't found a way to constrain "Restrict background data" to a single app, though.  When checking this checkbox, it then applies to every app that I have.

Other apps in the background I have running because I want them, they do useful things to me.  However, when I'm not running Bitcoin, I don't want that running.  Not at all.  Not even in the background behind my back.  Also, because it's a peer-to-peer protocol, Bitcoin will be making all sorts of connections to random IP addresses everywhere, and that could look suspicious.  Unlike my computer at home, I often bring my phone into corporate environments and whatnot, where they look suspiciously at activity, especially P2P.

I don't like being forced to deal with a carrot and stick approach, where in order to get a carrot (plug my phone into power in order to recharge it), I have to also take a stick (mandatory starting-up of the Bitcoin app and its background connections).  Really makes me feel like I'm being manipulated.

Again, I'm not the only one who feels this way, although you might think it strange.  Just take a look at the recent reviews on the Google App Store.
hero member
Activity: 483
Merit: 551
Can't set "Restrict background data" on a per-app basis, it's global.  Unless there's a mod/tweak somewhere that I don't have.

I'm on stock Android 4.2.2 (Galaxy Nexus).

Quote
And, besides, if the data is restricted, wouldn't that just cause the app to be thrown in a loop also?

Not necessarly. If Android correctly notifies the app that network is down, the app will act appropriately and not fire up Peers/PeerGroup.

I've never tried because I think it's worth to invest 1 MB of my 200 MB monthly mobile quota in being synched with the chain as much as possible. But since you're so convinced about the usecase - why don't you try?

Btw. was just thinking about the looping connect bug again. I was exaggerating. It will not connect endlessly but only for 2-3 minutes at a time - there is a timeout built into the app. Still you want to avoid running into that bug if possible.
legendary
Activity: 1526
Merit: 1134
It's not intentional, it's just never been a priority to fix.

I will say this again - why do you care about this? Bitcoin Wallet is likely to use less bandwidth than your email syncing does. If you have any kind of mobile internet plan at all, you can afford this app.

Do you actually observe it use significant amounts of your bandwidth quota, or is this some psychological thing where you just can't stand the idea of it talking to the network in the background?
member
Activity: 106
Merit: 10
It will drain your battery, as it will endlessly try to connect. Also see:

http://code.google.com/p/bitcoinj/issues/detail?id=296

Damn.  That's unfortunate.

Thought I had found a good workaround.

That's a nasty bug, that it will just loop the app and try again in an infinite loop upon failure to connect, draining the battery.  I verified that in "OS Monitor": it wasn't using 100% CPU, but it was using more than any other process.  Really frustrating that it would have that behavior.  Was this intentional, perhaps as a punishment to discourage people from trying to prevent the app from making connections?

Can't set "Restrict background data" on a per-app basis, it's global.  Unless there's a mod/tweak somewhere that I don't have.  And, besides, if the data is restricted, wouldn't that just cause the app to be thrown in a loop also?

Getting really discouraged by this.  Seeing no choice but to send away my bitcoins and uninstall.  Sucks, because that's one of the reasons I bought an Android phone instead of an iPhone.

hero member
Activity: 483
Merit: 551
I want to restrict this app's usage, though, not set a global setting in Android which would apply to all apps.

As I said, it's not global.

Quote
Go into "Settings", enter Trusted Peer of "127.0.0.1", and check the checkbox "Skip Regular Peer Discovery".
This will keep it from making any unwanted connections whenever it wakes up.

It will drain your battery, as it will endlessly try to connect. Also see:

http://code.google.com/p/bitcoinj/issues/detail?id=296
member
Activity: 106
Merit: 10
Thanks.  I want to restrict this app's usage, though, not set a global setting in Android which would apply to all apps.

I think I found a reasonable workaround:

Go into "Settings", enter Trusted Peer of "127.0.0.1", and check the checkbox "Skip Regular Peer Discovery".

This will keep it from making any unwanted connections whenever it wakes up.

You can use the "Skip Regular Peer Discovery" checkbox as a toggle.  Uncheck it when you want it to sync up (takes less than a minute).  Then, before closing the app, check that checkbox again, and it will obediently stop using the network again.

Josh
legendary
Activity: 1526
Merit: 1134
Great suggestions from Andreas - please don't take it the wrong way, he's not blowing you off Wink Your requirements are best met at the operating system layer and Android does these days provide the tools you need to achieve it.

Normally, corporate networks will block outbound connections on ports the admins aren't comfortable with, so the app will never successfully connect over wifi. If you get into trouble over that, well, your admins need to chill out a bit. I'm sure all kinds of mobile apps talk on all kinds of non-web ports so I doubt they would care.

For bandwidth usage, check out the data usage settings page (if you're on ICS+). You should find it's completely trivial. I have a 1GB/month plan and Bitcoin Wallet doesn't make any difference to my aggregate usage. It downloads kilobytes of data, not megabytes.
hero member
Activity: 483
Merit: 551
Sounds like you might want to try the "Restrict background data" option in the Android settings. That can be set on a per-app basis I think.

Let me know the app behaves using that. If something fails badly, I'll try to fix.

In the same prefs, you even have the choice to add specific Wifis to a list of Mobile hotspots which can get a special treatment. You might want to explore into that feature for your corporate network.
member
Activity: 106
Merit: 10
First of all, there never was a "Sync on Wifi" checkbox.

If you want to spare your data plan, I suggest disabling mobile data in the Android settings. The "Sync on Power" setting was never good at that. Besides, the apps data usage is negliable nowadays (if you don't do a lot of blockchain replays).


I don't want to disable mobile data entirely.

Would it be too hard to add a checkbox to disable sync from ever being automatically started?  I don't mind sync being done if the user explicitly opens the app, that's a good thing.

I don't like the idea of connections always being opened in the background (especially P2P connections which are banned on many corporate networks and could get me into trouble if I take my phone in there).

Thanks for listening.  I'm not the only one who is unhappy about the app's background connections, with no way to disable them, just look at the recent reviews on the Google Play store.

Josh
hero member
Activity: 483
Merit: 551
First of all, there never was a "Sync on Wifi" checkbox.

If you want to spare your data plan, I suggest disabling mobile data in the Android settings. The "Sync on Power" setting was never good at that. Besides, the apps data usage is negliable nowadays (if you don't do a lot of blockchain replays).
member
Activity: 106
Merit: 10
If you look in Google Play, you will see a lot of other people reporting the same problem.

https://play.google.com/store/apps/details?id=de.schildbach.wallet

Previous versions of this app used to have checkboxes, "Sync on Power" and "Sync on Wi-Fi".

The current version of this app no longer has these choices exposed to the user.  Instead, it adds a nice feature, that is, the ability to have these checkboxes be cumulative (requiring BOTH power AND wireless in order to sync).  However, there's no way to disable this.

Please, please, please, restore the ability of the user to disable the sync, so that the user can stop the app from syncing automatically.

You are very lucky in Germany, but here in the USA, unlimited data plans on cellphones seem to be disappearing.  I want to be able to charge my phone without fear that a peer-to-peer app is going to start up whenever it sees power, and start burning up my bandwidth outside my control.

Please, please, please.

Nobody likes apps that do things behind their back.

Thank you for listening!

If developer is unable/unwilling to restore this feature, then I would be curious to hear suggestions for a workaround.  The "Trusted Peer" feature might work, I could set a peer of 127.0.0.1 (thus preventing it from connecting it anywhere), and using the "Skip Regular Peer Discovery" checkbox to control whether or not I want it to search for additional peers or not.  Also, the "Autorun Manager" app looks promising, I could revoke the event listeners of Bitcoin Wallet and thus prevent it from seeing events that would cause it to begin syncing.

Josh
Pages:
Jump to: