Why? Because they are Facebook and can permit to themselves such bugs.
So, they expect only images upon type is “image/“. If the type is “text/plain”-then a URL should be contained in the message. Don’t use .setType(“/*”);
Otherwise use their SDK. But in this case you’ll sacrifice simplicity and flexibility of your application.