The point is, it would appear that if the advance purchase ticket in Germany on your phone is lost, you could at least use a printed ticket instead. That option doesn't seem to be available in the UK.
If you had a ticket for a specific train, and a specific seat, I am not sure you need the same level of security. Print out 100 tickets and only one person can be in that seat.
Where it gets problematic is if you don't have to sit in your reserved seat, as you could then have two copies and hope staff don't notice.
The solution in Germany it seems is that you provide ID or a payment card. In Sweden, they'll scan the barcode and then tick the name off a list (thus rendering any duplicates unusable).
In the UK it seems that many companies have adopted a system that intends to protect a code in a way that isn't the same as elsewhere, or how you'd do things on a plane (a controlled environment where a duplicate would be spotted). In theory, it's a good idea - and I can't remember the last time I had a phone battery die, so it's not actually that big a deal (I also have a portable charger so can top up a phone battery on the move if I have to).
In the case of using a m-ticket on a normal train, or a bus, the systems that would require proof of ID, or checking off a list obviously couldn't work. In theory you could render a code 'used' if everyone that checked, and every bus, was connected - and one day that would likely be true, but we don't have a fully connected network of transport yet.
So, while I'd fall in the camp that says don't use them as they have far more risks than a normal ticket, if used 'properly' then there's not really a problem. The most important thing is that people are aware. My Intalink app for buses DOES make it clear before you purchase. If I choose to ignore the rules, more fool me.