Few things you can do for dry hopping and keeping low oxygen...
1) Add dry hops during high krausen (day or two after pitching yeast). A small amount of oxygen will get in but the yeast will scavenge it very quickly.
2) Add a dry hop catcher like
@Dcpcooks said. Add a butterfly valve to the lid. A tee on top of that. The two can be a cap. The side port of the tee would be a nipple for a blow off tube and CO2 tube. When fermentation is going keep the valve open and attach a blow off tube to the nipple. This will purge the tee of oxygen. When ready to add dry hops, close the valve, attach a CO2 tube to the nipple and open the top. Let CO2 run at a low pressure and add the dry hops. Close the lid and turn off CO2. Open valve. Replace CO2 tube with blow off tube.
3) Sanitize a keg. Drain sanitizer and add dry hops in a bag hanging from the lid. Attach the blow off tube from fermentor to the beer out post. Attach blow off tube from gas in post to jar of sanitizer. The CO2 created from fermentation will purging the keg. You now have a fully O2 free keg with dry hops in it. Do a closed system transfer to the keg. You just dry hopped your beer. If you want to remove the hops, you would need to do another transfer to a serving keg.
I think dry hopping is the only part of the brewing process that hasn't been fully locked down for low oxygen. Some good ideas but nothing that is real easy to do besides #1 but that still lets in a small amount of O2.