APK Develop——SMS Timer
SMS Timer APK 描述:
在设定时间后向设定手机号码发送设定的内容的短信。
权限获取:
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.chenh2.hellohao" >
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name=".MainActivity"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name=".ChooseActivity"
android:label="@string/title_activity_choose" >
</activity>
</application>
<uses-permission android:name="android.permission.SEND_SMS"/>
</manifest>
Activity 跳转及数据传输:
Intent chooseIntent = new Intent(MainActivity.this,ChooseActivity.class);//Activity跳转
Bundle bundle = new Bundle();
bundle.putString("Phone", num);
bundle.putString("SmsM", mes);
chooseIntent.putExtras(bundle); //数据传输
phone.setText("");
sms.setText("");
time.setText("");
if(PhoneNumberUtils.isGlobalPhoneNumber(num)){
Uri uri = Uri.parse("smsto:" + num);
Intent it = new Intent(Intent.ACTION_SENDTO, uri);
it.putExtra("sms_body", mes);
try {
int n =Integer.parseInt(minu);
if(n>0){
while(n>0){
Thread.sleep(1000);
System.out.println(n);
n--;
}
}
} catch (InterruptedException e) { e.printStackTrace();
}
if(remind.isChecked()){
startActivity(chooseIntent); //Activity跳转
}
else{
SmsManager smsManager = SmsManager.getDefault();
List<String> divideContents = smsManager.divideMessage(mes);
for (String text : divideContents) {
smsManager.sendTextMessage(num, null, text, null, null);//短信发送
}
return;
}
public class ChooseActivity extends ActionBarActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_choose);
Button yes = (Button)findViewById(R.id.Yes);
yes.setOnClickListener(new Button.OnClickListener(){
public void onClick(View v) {
SmsManager smsManager = SmsManager.getDefault();
List<String> divideContents = smsManager.divideMessage(getIntent().getExtras().getString("SmsM"));//数据获取
for (String text : divideContents) {
smsManager.sendTextMessage(getIntent().getExtras().getString("Phone"), null, text, null, null);
}
finish();
}
});
Button no = (Button)findViewById(R.id.No);
no.setOnClickListener(new Button.OnClickListener(){
public void onClick(View v) {
finish();
}
});
}
APK下载链接:
http://files.cnblogs.com/files/udld/app-release.apk
APK Develop——SMS Timer的更多相关文章
- JavaWeb-SpringBoot(抖音)_一、抖音项目制作
JavaWeb-SpringBoot(抖音)_一.抖音项目制作 传送门 JavaWeb-SpringBoot(抖音)_二.服务器间通讯 传送门 JavaWeb-SpringBoot(抖音)_三.抖音项 ...
- Android中实现Activity的启动拦截之----实现360卫士的安装应用界面
第一.摘要 今天不是周末,但是我已经放假了,所以就开始我们的技术探索之旅,今天我们来讲一下Android中最期待的技术,就是拦截Activity的启动,其实我在去年的时候,就像实现这个技术了,但是因为 ...
- How to build .apk file from command line(转)
How to build .apk file from command line Created on Wednesday, 29 June 2011 14:32 If you don’t want ...
- Android studio 自定义打包apk名
Android Studio打包应用默认生成的apk名称是:app-release.apk .如果我们要让生成的apk名跟我们版本包名有联系的话,那我们就要自定义生成的apk名了 需要在build.g ...
- Cordova+Asp.net Mvc+GIS跨平台移动应用开发实战1-系统初步搭建(附演示,apk,全部源码)
1.前言 身处在移动互联网的今天,移动应用开发炙手可热,身为程序猿的我们怎么能错过开发一款我们自己的APP.本人算是一个基于.net的GIS开发入门者(马上就大四啦), 暑假在学校参加GIS比赛有大把 ...
- Android网页中tel,sms,mailTo,Intent,Market协议用法总结
tel:协议---拨打电话 <a href="tel:">调出拨号界面</a> <a href="tel:10086">调 ...
- Android Studio编译输出apk文件修改文件名
新建一个Android工程,默认编译会生成一个叫app-debug.apk或者叫app-release.apk文件,说实话,单纯看文件名,我都不到任何有用的信息,我希望输出的文件名是这样的: 模块名- ...
- Android开发学习总结(六)—— APK反编译
学习和开发Android应用有一段时间了,今天写一篇博客总结一下Android的apk文件反编译.我们知道,Android应用开发完成之后,我们最终都会将应用打包成一个apk文件,然后让用户通过手机或 ...
- android network develop(1)----doing network background
Develop network with HttpURLConnection & HttpClient. HttpURLConnection is lightweight with Http ...
随机推荐
- linux中字符串转换函数 simple_strtoul【转】
转自:http://blog.csdn.net/tommy_wxie/article/details/7480087 Linux内核中提供的一些字符串转换函数: lib/vsprintf.c [htm ...
- vue 文件引入1
直接 <script> 引入 直接下载并用 <script> 标签引入,Vue 会被注册为一个全局变量.重要提示:在开发时请用开发版本,遇到常见错误它会给出友好的警告. 开发环 ...
- 字符串截取,SubString
aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAk8AAACYCAIAAAByAZqHAAAYgklEQVR4nO2dL28ku5qHTS4ctuTSQf ...
- P2725 邮票 Stamps(完全背包+限制填充数)
题目链接:https://www.luogu.org/problem/show?pid=2725 题目大意:给一组 N 枚邮票的面值集合(如,{1 分,3 分})和一个上限 K —— 表示信封上能够贴 ...
- Linux下几种并发服务器的实现模式
Linux下的几种并发服务器的设计模式 1>单线程或者单进程 相当于短链接,当accept之后,就开始数据的接收和数据的发送,不接受新的连接,即一个server,一个client 不存在并发. ...
- BlockingQueue drainTo()
BlockingQueue BlockingQueue的核心方法:放入数据: offer(anObject):表示如果可能的话,将anObject加到BlockingQueue里,即如果Blockin ...
- jstree无限级菜单ajax按需动态加载子节点
业余时间研究了一下jstree,更新非常快已经是3.0了,首先看一下效果截图: 1.页面引入样式和脚本(注意路径根据实际情况) <link href="~/Scripts/vakata ...
- SpringMVC组件配置
web.xml . springmvc-servlet.xml 配置SpringMVC四大组件. web.xml 配置前端控制器:前端控制器就是个servlet <!-- 配置前端控制器 --& ...
- 对TDD原则的理解
1,在编写好失败的单元测试之前,不要编写任何产品代码 如果不先写测试,那么各个函数就会耦合在一起,最后变得无法测试 如果后写测试,你也许能对大块大块的代码进行测试,但是无法对每个函数进行测 ...
- Comet OJ CCPC-Wannafly Winter Camp Day1 (Div2, online mirror) F.爬爬爬山-最短路(Dijkstra)(两个板子)+思维(mdzz...) zhixincode
爬爬爬山 已经提交 已经通过 9.83% Total Submission:417 Total Accepted:41 题目描述 爬山是wlswls最喜欢的活动之一. 在一个神奇的世界里,一共有nn座 ...