Many people would rather use Indian as it is shorter, but indeed it is more correct to use the above term. Thus, we result in a compromise.
Bob: "Hey, Did you see that new kid at school? I think he's an indian"
Steve: "Nah man, He's a native american."
Bob: "Right, or we could just call him a namerican."