Please don't dismiss a wheel cleaner simply because it contains acid. Acid, per se, is not bad - it's the TYPE of acid that counts.
Oxalic acid is a perfectly safe type to use on a coated or polished wheel. Hydroflouric acid, though is not. It simply depends on the type.
Also, it's most important that the directions be followed - sprayed on a cool wheel, do one at a time, don't let it sit on the wheel too long, etc.
Used properly, an acid based cleaner of the proper type can do a fine job of cleaning. An improper type, or even a proper type used in an improper manner, can damage the finish.
If you clean your wheels frequently (twice a week, for example), you can limit the need to use wheel cleaners. And, as others mentioned, coating your wheels with a proper type of product can help prevent brake dust and road grime from adhering to them so readily.