android开发学习:打电话和发短信
1.新建一个android项目
File——New——Other——android application project
填写application name(就是应用的名字。比方:天天酷跑)
填写project name(就是程序项目名。比方:TTKP。打包后名字也是TTKP.APP)
填写package name(程序包名。比方cn.tengxun.ttkp)
然后选择最小执行的android版本号,最适合版本号。编译版本号。主题。
NEXT——NEXT——选择你android应用图标图片,然后完毕。
然后我们要关注的res(放资源文件的,静态的文字能够写在里面)
src代码编程文件
gen(自己主动生成的资源ID生成文件)
AndroidManifest.xml是应用配置文件
res下的layout是布局的配置文件
2.编写一个打电话功能
先编写布局配置文件activity_main.xml
<? xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent"> <TextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/phone_title" />
<EditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="@string/phone_title"
android:id="@+id/telnum" />
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/phone_button"
android:id="@+id/button"/> </LinearLayout>
@的意思是操作gen以下的R.java文件的信息。获取;@+是创建。
编写一下文本的信息
res以下的value下的string.xml
<? xml version="1.0" encoding="utf-8"? >
<resources> <string name="app_name">拨号器</string>
<string name="hello_world">Hello world!</string>
<string name="action_settings">Settings</string>
<string name="phone_title">请输入手机号</string>
<string name="phone_button">拨号</string> </resources>
编写拨号事件代码
在src下的java代码
public class MainActivity extends Activity {
private EditText edittext; @Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
edittext=(EditText) findViewById(R.id.telnum);
Button button=(Button) this.findViewById(R.id.button);
button.setOnClickListener(new ButtonClickListener());
} private final class ButtonClickListener implements View.OnClickListener{
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
String telnum=edittext.getText().toString();
Intent intent=new Intent();
intent.setAction("android.intent.action.CALL");
intent.setData(Uri.parse("tel:"+telnum));
startActivity(intent);
} }}
最后你要获取你调用android打电话这个功能的权限
在AndroidManifest.xml应用配置文件
<uses-permission android:name="android.permission.CALL_PHONE" />
3.编写发短信功能
布局配置文件
<EditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="@string/phone_title"
android:id="@+id/telnum" />
<EditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:minLines="3"
android:hint="@null"
android:id="@+id/message"
/>
<Button
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="@string/message_button"
android:id="@+id/message_button"/>
string配置文件
<string name="message_button">发送短信</string>
java代码
public class MainActivity extends Activity {
private EditText phonetext;
private EditText edittext;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
phonetext=(EditText) findViewById(R.id.telnum);
edittext=(EditText) findViewById(R.id.message);
Button message_button=(Button) this.findViewById(R.id.message_button);
message_button.setOnClickListener(new MessageButtonClickListener()); } private final class MessageButtonClickListener implements View.OnClickListener{
@Override
public void onClick(View v) {
String phoneNumber=phonetext.getText().toString();
String message=edittext.getText().toString();
SmsManager manager=SmsManager.getDefault();
ArrayList<String> messages = manager.divideMessage(message);
for(String content:messages){
//发短信
manager.sendTextMessage(phoneNumber, null, content, null, null);
//写入短信记录
ContentValues values = new ContentValues();
values.put("address", phoneNumber);
values.put("body", message);
values.put("type", "2");
values.put("read", "1");//1表示已读
getContentResolver().insert(Uri.parse("content://sms/inbox"), values);
}
Toast.makeText(MainActivity.this, R.string.success, Toast.LENGTH_LONG).show();
}
}
}
增加权限
<uses-permission android:name="android.permission.SEND_SMS" />
<uses-permission android:name="android.permission.WRITE_SMS"/>
<uses-permission android:name="android.permission.READ_SMS"/>
android开发学习:打电话和发短信的更多相关文章
- IOS 开发调用打电话,发短信
1.调用 自带mail[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"mailto://admin@hzl ...
- IOS 开发,调用打电话,发短信,打开网址
IOS 开发,调用打电话,发短信,打开网址 1.调用 自带mail [[UIApplication sharedApplication] openURL:[NSURL URLWithString: ...
- android打电话、发短信实现
打电话: Intent intent = newIntent(Intent.ACTION_CALL,Uri.parse("tel:"+"156666666666" ...
- Android实例-打电话、发短信和邮件,取得手机IMEI号(XE8+小米2)
结果: 1.不提示发短信卡住,点击没有反映,我猜想,可能是因为我用的是小米手机吧. 2.接收短信报错,我猜想可能是我改了里面的方法吧(哪位大神了解,求指教). 3.project -->opti ...
- iOS学习笔记(十四)——打电话、发短信
电话.短信是手机的基础功能,iOS中提供了接口,让我们调用.这篇文章简单的介绍一下iOS的打电话.发短信在程序中怎么调用. 1.打电话 [[UIApplication sharedApplicatio ...
- 打电话、发短信、web以及发邮件
#import "ViewController.h" #import <MessageUI/MessageUI.h> //导入信息UI库 @interface View ...
- 代码控制打电话、发短信、发邮件、打开手机app等操作
很多时候我们需要利用我门自己的app进行一些打电话.发短信等的操作,那么如何利用代码实现呢,下面就介绍一些简单的方法来实现这些操作. 一.打电话: <1>最简单.最直接的方法----直接跳 ...
- iOS10打电话、发短信、发邮件等小功能
注意:iOS10.0以后,使用openURL会有延迟,需要使用 openURL: options: completionHandler: 一.概要 本文中主要就是介绍在iOS中实现打电话.发短信.发邮 ...
- delphi xe5 android 开发实现手机打电话和发短信
转载自 http://www.raysoftware.cn/ 其实都可以通过intent和URI调用系统功能.Windows程序员可以理解成是ShellExecute.这个是万金油.可以有调用各种功 ...
随机推荐
- 菜单练习-关机&取消
#include<stdio.h> #include<string.h> #include<stdlib.h> #include<time.h> voi ...
- jsoi2015 R2——滚粗记
考完感觉各种绝望溢出胸口,作为百度空间的最后一篇文章了吧 day 0 第二轮在南师附中……不能到外地玩了…… 其实在试机的时候就感觉不大对头,明明说好18:15试机结果拖到18:30…… 还有今年竟然 ...
- [swustoj 404] 最小代价树
最小代价树(0404) 问题描述 以下方法称为最小代价的字母树:给定一正整数序列,例如:4,1,2,3,在不改变数的位置的条件下把它们相加,并且用括号来标记每一次加法所得到的和. 例如:((4+1)+ ...
- java高并发,如何解决,什么方式解决
之前我将高并发的解决方法误认为是线程或者是队列可以解决,因为高并发的时候是有很多用户在访问,导致出现系统数据不正确.丢失数据现象,所以想到 的是用队列解决,其实队列解决的方式也可以处理,比如我们在竞拍 ...
- Java [leetcode 37]Sudoku Solver
题目描述: Write a program to solve a Sudoku puzzle by filling the empty cells. Empty cells are indicated ...
- './mysql-bin.index' not found (Errcode: 13) 的解决方法
将文件系统复制到PC机上,然后再拷贝到别的SD卡后,发现mysql无法启动了,首先检查了一下mysql的错误日志,发现最后出现以下错误: /usr/local/mysql/libexec/mysqld ...
- Oracle函数面试题
1.对字符串操作的函数? 答:ASCII() –函数返回字符表达式最左端字符的ASCII 码值 CHR() –函数用于将ASCII 码转换为字符 –如果没有输入0 ~ 255 之间的ASCII 码值C ...
- Android_1_渐变背景色
首先创建一个渐变背景色文件drawable-mdpi/bg_color.xml <?xml version="1.0" encoding="utf-8"? ...
- bzoj 2815 [ZJOI2012]灾难(构造,树形DP)
[题意] 求把每个点删除后,不可达点的数目. [思路] 构造一棵“灭绝树”,要求这棵树满足如果删除根节点后则该子树内的所有结点都不可达.则答案为子树大小-1. 如何构造这棵“灭绝树”? 将原图拓扑排序 ...
- NOIP2007 统计数字
1.统计数字 (count.pas/c/cpp) [问题描述] 某次科研调查时得到了 n 个自然数,每个数均不超过 1500000000(1.5*109).已知不相同的数 不超过 10000 个,现在 ...