First you will get the incoming phone number (refer - How to get phone number from an incoming call? ). from that you add the name of number and change the incoming call screen like truecaller.
No. Making any change to the call state requires that permission. If you found a way around it, it will be closed. Google has done it to every other way to end a call programmatically. You need the permission.
Open the Android Device Monitor via Tools > Android > Android Device Monitor. The Monitor has the same "Emulator Control" tab that you are used to from Eclipse's DDMS.