Monitoring the Activities of Android Devices
<p>I want to develop an android application which allow to me to track and save into an online database the following information:</p>

<ul>
<li>Incoming and outgoing call</li>
<li>Incoming and outgoing SMS</li>
<li>Keystrokes typed by keyboard</li>
</ul>

<p>Questions:</p>

<ol>
<li><p>How can I run my application in the background (must use service or thread)?</p></li>
<li><p>Is it possible to got incoming or outgoing calls with details 
(phone number, date of call, call duration, etc.)?</p></li>
<li><p>Is it possible to got incoming or outgoing messages with details 
(destination/origin number , message content)?</p></li>
<li><p>Is it possible to got all keystrokes typed by keyboard?</p></li>
<li><p>Do I need root access to do this?</p></li>
</ol>
