I'd also consider Eternabond. It isn't a cure-all, and needs some prep work (clean the roof with acetone or another solvent before applying, then use a clear caulk like EternaCaulk to keep dirt from adhering to the tape's edges after applying and pressing into place with a roller), but it does have a very good record (few complaints on the forums.)