In-game currency and microtransactions are fine, as long as the app can pay out for the same service/item. If I can buy a sword for $5, I can also sell that sword to the app developer and get $5 back. If I can pay $1 to skip a level, I can redeem $1 for beating said level.
I'd rather have in game purchases be only stated in really world currency, no more premium tokens. Additionally, only sums for the actual purchase can be transfered, no more predatory pricing. Prices can also only be even amounts, no more .99 bullshit. Lastly all in game purchases should be full refundable within 2 hours no questions asked, or 30 days with reason given. That would really put into perspective how little worth you get out of those purchases.