Strange behavior from Gettop battery
I would expect a fresh 9V battery to put out slightly more than 9V.  A 9V battery is made using a stack of six 1.5V cells, and each of those can easily put out 1.6V when new.

I suspect the reason the smoke detector didn't like the battery was that its internal resistance was too high, causing the voltage to drop whenever it did a self-test.  Smoke detector manufacturers usually specify certain brands of alkaline battery - though I find that any decent quality one normally works fine.