Those are the lowest prices from any legitimate, authorized retailer for the iPhone 4 and 3GS right now, especially for a brand new phone.
RadioShack also has a trade-in program that will drop prices further. If current iPhone users trade in their iPhone 3G, they'll receive a credit of $75 (assuming the device works and has an unbroken screen). Customers who trade in an iPhone 3GS in working condition will receive a credit of $125.
Combining the $149 sale price with a $125 credit drops the effective price of the iPhone 4 16GB model to just $24, and the iPhone 4 32GB to $124 (not including taxes and fees).
That's probably the best deal anywhere for a brand new iPhone 4. It is only available at RadioShack's brick-and-mortar retail locations.
These prices are available to new AT&T customers, as well as to AT&T customers who are eligible for an upgrade. RadioShack says the promotion is meant to "boost awareness of its wireless business and create an edge up on the competition."