Implement InApp purchase to view this link(or load XML data in another activity) and have a unique SKU for each link to be purchased. You can find a Status check, if the link SKU is purchase or not, in the InAppBilling Library. So do a status check when ever the link is clicked, if not purchased popup the user to purchase, else load the XML data from online.
Is there a way not to keep this file on device? Load the XML file directly from Online. Or Download XML once and save the XML content(Not file) in the DB.
Cheer :)