android第三天

今天做的是手机拨号和短信发送app,本来是想要再加一个邮件功能的,但是死活不成功,这里就不在演示-。-

首先是APP的开始页面,有三个选择,一个是拨号,一个是短信,一个是邮件,但是因为邮件没有成功,所以大家还是忽略了吧!



 

我现在就一个个展示给大家看,首先是电话拨号部分,填好电话号码就可以尽心拨号,使用的是系统的拨号器,这个界面还有一个功能就是添加联系人,点一下联系人按键就可以跳转到系统添加联系人的界面

 



 

 

拨号器的主要代码

package com.example.bohao;

import android.net.Uri;
import android.os.Bundle;
import android.app.Activity;
import android.content.Intent;
import android.view.Menu;
import android.view.View;
import android.widget.EditText;
import android.widget.ImageButton;
import android.widget.Toast;

public class MainActivity extends Activity {
        private EditText textResult;
        StringBuffer currentNum=new StringBuffer();
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        textResult=(EditText)findViewById(R.id.edittext1);
    }
    public void display(){
    	textResult.setText(currentNum.toString());
    }
public double stringToDouble(){
	if(currentNum.length()==0)
	{
		return 0;
	}
	double result=Double.parseDouble(currentNum.toString());
	return result;
}
public void digital_click(View view)
{
	ImageButton btnDigital=(ImageButton)view;
	String text=btnDigital.getTag().toString();
	currentNum.append(text);
	display();
	}
public void delete(View view)
{
	if(currentNum.length()>=1)
	{
		currentNum.delete(currentNum.length()-1,currentNum.length());
		
	}
	if(currentNum.length()==0)
	{
		Toast toast=Toast.makeText(this,"请输入号码",100);
		toast.show();
		display();
	}
	textResult.setText(currentNum);
	}
public void dial(View view){
	EditText text=(EditText)findViewById(R.id.edittext1);
	String number=text.getText().toString();
	Intent intent=new Intent();
	intent.setAction(intent.ACTION_CALL);
	intent.setData(Uri.parse("tel:"+number));
	startActivity(intent);
}

public void addContact(View view){  
    Intent it = new Intent(Intent.ACTION_INSERT,Uri.withAppendedPath(Uri.parse("content://com.android.contacts"),"contacts" ));  
    it.setType("vnd.android.cursor.dir/person");  
    String number = textResult.getText().toString();  
    it.putExtra(android.provider.ContactsContract.Intents.Insert.SECONDARY_PHONE,number);  
    startActivity(it);  
      
}  
    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.main, menu);
        return true;
    }
    
}

接下来是短信功能,短信就不用多说了,这里主要展示界面的源代码



 接下来是源代码,本来是想搞一个来信提醒的,不过又失败了。。。。

package com.example.bohao;

import android.net.Uri;
import android.os.Bundle;
import android.app.Activity;
import android.app.Notification;
import android.app.NotificationManager;
import android.app.PendingIntent;
import android.content.Intent;
import android.view.Menu;
import android.view.View;
import android.widget.EditText;

public class Message extends Activity {

	private EditText tel;
	private EditText content;
	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_message);
		tel=(EditText)findViewById(R.id.sjr);
		content=(EditText)findViewById(R.id.nr);
	}
	public void send (View view)
	{
		String telMsg=tel.getText().toString();
		String contentMsg=content.getText().toString();
		
		Uri uri=Uri.parse("smsto:"+telMsg);//接收人手机
		Intent it=new Intent();
		it.setAction(Intent.ACTION_SENDTO);
		it.setAction(Intent.ACTION_SENDTO);//指定action,我要发短信
		it.putExtra("sms_body", contentMsg);//设置信息内容
		it.setType("vnd.android-dir/mms-sms") ;//设置MIME类型
		it.setData(uri);//设置数据,要去的地方
		Message.this.startActivity(it);
		
	}
	//来信提醒部份,失败
	public void show(StringBuffer SMSAddress,StringBuffer SMSContent)
	{
		NotificationManager notificationmanager=(NotificationManager)getSystemService(Activity.NOTIFICATION_SERVICE);
		   Notification notification=new Notification(R.drawable.ic_launcher,SMSAddress,System.currentTimeMillis());
		   PendingIntent contentIntent=PendingIntent.getActivity(this, 0, getIntent(), PendingIntent.FLAG_UPDATE_CURRENT);
		   notification.setLatestEventInfo(this, SMSAddress, SMSContent, contentIntent);
		   notificationmanager.notify("qq", R.drawable.ic_launcher, notification);  
	}

	@Override
	public boolean onCreateOptionsMenu(Menu menu) {
		// Inflate the menu; this adds items to the action bar if it is present.
		getMenuInflater().inflate(R.menu.message, menu);
		return true;
	}

}

这次代码比较简单,都是调用一些封装好的东西,所以虽然用起来很方便,但是很难理解。因为都是调用系统的东西,所以这次就不做拓展了,也许是做的都是失败的原因吧QAQ

猜你喜欢

转载自1468557178.iteye.com/blog/2382431