This article is also published in my Forum: http://stay4it.com/forum.php? MoD = viewthread & tid = 4 & extra = Page % 3d1 all attachments are stored in my forum. For more Android resources, see my forum.
This project was designed more than a year ago. I prepared to do it myself. Later, I did not do it for various reasons. Now Share Come out, it should be for everyone Interview VeryHelp , A project solution, Flowchart , To implement. This entire process. Laidian butler (CallManager) Feature settings:
1. Address Book Management
2. Contact search
3. Contact operations
4. View contact details
5. Add a contact
6. Batch Delete
7. Local Query
8. system settings
9. blacklist management
10. About us
Function Description:
1. Enable the software to go to the address book list and display the name, phone number, and location of the address book;
2. A quick search is displayed in the address book list header to find possible contacts based on any user input;
3. Long-press contacts fill out the function list including: Dialing, text message, editing, adding to the blacklist, and deleting;
4. Click a contact to view the contact details;
5. Menu → Add a contact
6. Menu → jump to the simple contact list (Name and number), and the single-choice button is displayed on the right. The following shows the delete and backward buttons.
7. Menu → the user enters the number to query the home location
8. Menu → A, call delay (to be determined); B, skin settings; C,
9. Menu → blacklist list Click Event: reject incoming calls, reject SMS, delete (Restore ),
10. Help documentation, about us
Function implementation:
1. Set the three function points to an activityextends tabactivity.
2. Register for incoming calls and debroadcasting
When you call, the System Broadcasts the "android. Intent. Action. new_outgoing_call" message. Associate the consumer with the message to obtain the call event. Related permissions: "android. Permission. process_outgoing_cils"
When a call is called, register the receiver for "android. Intent. Action. phone_state", enable the Service in onreceive, listen to phonestatelistener in the background, and process the call power-off status. (Power-off is not solved yet)
3. Call Handling
Call_state_ringing :
Query the database and determine whether it is a blacklist.
If yes, the number of calls in the database + 1 And call Aidl Interface, initialized through reflection Itelephony. endcall ()
if not, query the database to check whether the number exists. If not, call WebService query the Caller information, which is displayed on the caller interface.
Call_state_offhook/Call_state_idle
Stop displaying region information
4, when querying the region information, check whether the database has this number. If not, call WebService query the home location information of the specified number
5, in about me, the help information is displayed.
This is the overall flowchart I have drawn. I have a copy of English and Chinese. I have sent an attachment to the source image, and I have painted it in Visio.
The project is only a little bit done. If you are interested, I will try again. Can also be improved together