You can't. There is no way to achieve this. Unwanted distribution is a risk you'll have to take when you email an apk to someone.
The best you can do is compile a separate apk each time you email it to someone, and put a unique code in it. When the app is first launched, have it register itself with an online server. If someone tried to register the same code again, then you know that the apk was sent to someone else or installed on multiple devices. In such a case, your server can tell your app that that particular code has already been used and have it refuse to work.
Downsides of this approach:
- You need to specially compile a new apk for every separate email
- Anyone can decompile the app and change the code to something else and recompile and use it. Or they could remove the entire checking mechanism if they wanted.
In short, there is no foolproof way to do this.