In order to get AAdvantage miles, you need to book your tickets in H, B or Y classes. Most of CX's special fares from asia are in the subclasses of L, K or M. H can be had but you're going to pay a premium for it.
If you want to earn Asiamiles, then originating from BKK is good. But if you want to earn AAdvantage miles, you'd be better off originating from USA as CX published fares are in "H" class. There are cheaper deals around, but the subclass will not be to your liking.