之前用的一直是Genymotion创建的虚拟机,结果找不到端口号,所以两个虚拟机之间无法进行打电话和发短信的操作,导致我也不知道写的小程序是不是真的可以用。今天大早上起来就用eclipse创建了两个应用试了一下。
代码部分:
package com.basic.phonedialer;
import android.net.Uri;
import android.os.Bundle;
import android.app.Activity;
import android.content.Intent;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Toast;
public class MainActivity extends Activity {
private EditText et_content;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//找到Button按钮
Button btn_call = (Button) findViewById(R.id.button1);
et_content = (EditText) findViewById(R.id.editText1);
//给Button设置点击事件
btn_call.setOnClickListener(new MyListener());
}
//自己定义一个类实现OnClickListener
private class MyListener implements OnClickListener{
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
String number=et_content.getText().toString().trim();//去除空格
System.out.println("拿到的number"+number);
if("".equals(number)){
Toast.makeText(MainActivity.this, "number不能为空",Toast.LENGTH_LONG).show();
}else{
//number不为空
System.out.println("number不为空");
//打电话的操作,首先弄出来一个意图对象
Intent intent=new Intent(); //创建一个意图 ---------打电话
intent.setAction(Intent.ACTION_CALL); //打电话所对应的动作
intent.setData(Uri.parse("tel:"+number)); //设置要拨打电话的数据
startActivity(intent); //开启拨打电话的意图
}
}
}
}
应用界面:
模拟打电话时的界面:
另一台虚拟机来电话了:
之前总听别人说,用自带的创建的虚拟机会比较占内存,而且会比较卡,所以一开始使用的就是Genymotion,今天使用了一下自带的,结果显示确实比Genymotion创建的要卡,从操作上可以明显的看出。但是占内存这一点到不怎么准确,打开两个自带创建的虚拟机,内存显示占用百分之六十左右,而启动两个Genymotion创建的虚拟机,内存显示竟然占到了百分之八九十。