Devices use to only want to one thing at a time. Perform their intended function, charge or upload data. They didn't have the smarts to be able to handle all that at the same time. So various conventions came about to let them try to figure out what they were connected to. If they were connected to something that supplied a lot of amperage, then they must be connected to a charger, therefore they only charged. If it was connected to a low amperage thing, the maybe it was a computer, so they went into data transfer mode. But they would still slowly charge too. It's getting somewhat better now that many of these devices have more sophistication to them.
Not all USB cables are created equal. Some have a resistor on one of the pins to let the device figure out the things above. Trying different usb cables might give you one that will fool the device to thinking it's something else sometimes.