These criticisms of technological solutions always miss the obvious: both approaches
complement each other.
If I send my aunt a letter, I am assured that unless there is a warrant, my letter to her will not be read by my government. She doesn't live in my country though, and her country gives no such assurances. More-so, even if it did, I would have no particular reason to trust her government. On that note, what if I don't trust my government?
Instead of sending her a regular letter, thanks to technology I have the option of mailing her a message encrypted with her PGP public key. Now I have to trust that my government will not beat me with a wrench or compromise my computer to gain access to the pre-encrypted letter (if I posses it), I have to trust her government to not beat her with a wrench or break into her computer, and I have to trust our governments to not outlaw PGP.
So which is preferable, finding political solutions to the "my aunt and I are being beaten with wrenches" problem, or finding political solutions to the "my letters are secretly being read without our knowledge" problem? I assert the former is preferable. Beating people with wrenches is a far more extreme action, it is easier to trust governments not to do something that is more extreme.
All of the problems with technical solutions are ultimately political problems. You can either abandon all technical solutions and only go for political solutions, or you can find political solutions to the shortcomings to technical solutions. Technical and political solutions complement each other, providing assurances that the other cannot. Both need to be pursued.
Don't want the government to read your mail? Encrypt it. Don't want your government to ban that? Lobby your position.