Why not use QR codes more? Outside of print media length doesn't matter, just auto replace them with the word "link" and the user doesn't have to see the ugly code, character limited microblogs can make an exception for links or store them separately as an attachment.
Android should allow OCR and QR input as a keyboard feature.
Link shorteners exist partly because of missing features elsewhere.