现在开始接触安卓开发。以后后同步发出对应笔记。老规矩,用一张图来介绍今天的内容。
图片看不清的话可以右键新窗口打开。
· Eclipse + ADT(Android Developer Tools)
· Android Studio
· SDK (软件开发环境, Android调试工具, 模拟等)
· add-ons :(额外开发资料, google地图资源)
· build-tools : 编译工具目录
· docs : 离线版开发文档
· extras : 向下兼容的jar包, intel工具
· platforms : Android开发版本平台jar包
· platform-tools : 平台开发工具(adb)
· sources : 开发平台源码
· system-images : 模拟器镜像文件
· tools : 开发者常用工具
· VGA: 480 x 640 标准大小
· HVGA: 320 x 480 一半大小
· QVGA: 240 x 320 四分之一
· WVGA: 480 x 800
· FWVGA: 480 x 854
↓↓↓↓↓在dos命令行输入以下命令可以得到的结果↓↓↓↓↓↓↓
· adb devices 查看当前已连接的设备
· adb start-server 开启 adb 服务
· adb kill-server 杀死 adb 服务
· adb shell 进入Android控制台(执行Linux命令)exit退出
· adb logcat 打印日志信息
· adb install xxx.apk : 安装应用
· adb uninstall 包名 : 根据包名卸载应用
· adb push hiahia.txt /sdcard/hiahia.txt : 上传文件
· adb pull /sdcard/hiahia.txt . : 下拉文件
adb -s emulator-5554 :指定设备
adb可能因为360, 金山卫士, 腾讯QQ影响无法使用
端口5037被占用
netstat -ano | find "5037" 查看谁占用端口
杀掉进程kill pid
1 不能以关键字命名
2 资源不能以数字开头
3 布局文件内部有错误, 有小红叉
4 定义一个内部类实现OnClickListener接口
5 使用匿名内部类对象实现
6 使用当前类,继承接口
7 定义xml属性
o 定义xml的属性android:onClick="call"
o 在代码里写方法 public void call(View view){}
1,LinearLayout 线性布局
o 控件一个接一个排列
2,RelativeLayout 相对布局
o 控件之间以相对位置排列
3,FrameLayout 帧布局
o 一层盖一层
4,AbsoluteLayout 绝对布局
o 通过x, y指定绝对位置.
5.TableLayout 表格布局
o 类似Html表格
public class MainActivity extends Activity {
EditText phonenum ;
Button btn_call;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//1获取控件
phonenum = (EditText) this.findViewById(R.id.et_phonenum);
btn_call = (Button) this.findViewById(R.id.btn_callphone);
//2设置点击监听事件
btn_call.setOnClickListener(new OnClickListener() {
@SuppressWarnings("static-access")
@Override
public void onClick(View v) {
String num = phonenum.getText().toString();
//3拨打电话
//a,获取意图
Intent intent = new Intent();
//b,设置意图内容:拨打电话的uri
intent.setData(Uri.parse("tel:"+num));
//c,设置意图动作:拨打电话
intent.setAction(intent.ACTION_CALL);
//intent.setAction(Intent.ACTION_CALL_BUTTON);
//d,跳转到电话出界面
//开始活动
startActivity(intent);
}
});
}
@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;
}
}
public class MainActivity extends Activity {
EditText et_phonenum;
EditText et_smsText;
Button btn_sent;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// 1获取界面组件
et_phonenum = (EditText) this.findViewById(R.id.et_callnum);
et_smsText = (EditText) this.findViewById(R.id.et_smsText);
btn_sent = (Button) this.findViewById(R.id.btn_sent);
// 2,设置点击事件
btn_sent.setOnClickListener(new sendSmsListerer());
}
/**
* 点击发送短信按钮
*/
class sendSmsListerer implements OnClickListener {
@Override
public void onClick(View v) {
String num = et_phonenum.getText().toString();
String text = et_smsText.getText().toString();
/*方法一:使用意图
Intent intent = new Intent();
intent.setData(Uri.parse("smsto:" + num));
intent.setAction(intent.ACTION_SENDTO);
intent.putExtra("sms_body", text);
startActivity(intent);*/
//方法二:使用短信管理器
//获取短信发送管理器
SmsManager smsmanager = SmsManager.getDefault();
smsmanager.sendTextMessage(
num,//要发送的地址
null,//短信服务中心,现在一般都不写
text,//文本内容
null,
null);//对方接受成功通知
Toast.makeText(MainActivity.this, "短z信发送完成", Toast.LENGTH_LONG).show();
//Toast.makeText(this, "短信发送完成", Toast.LENGTH_LONG).show();//发送成功通知
}
}
}
原文地址:http://blog.csdn.net/jinfulin/article/details/45001553