XML - Main

<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="com.example.prize.mydemo.MainActivity"
tools:layout_editor_absoluteY="81dp"
tools:layout_editor_absoluteX="0dp"> <Button
android:id="@+id/button1"
android:text="写入号码"
android:layout_width="0dp"
android:layout_height="48dp"
tools:layout_constraintTop_creator="1"
tools:layout_constraintRight_creator="1"
android:layout_marginStart="25dp"
android:layout_marginEnd="25dp"
app:layout_constraintRight_toRightOf="parent"
android:layout_marginTop="97dp"
tools:layout_constraintLeft_creator="1"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<Button
android:id="@+id/button2"
android:text="写入次数"
android:layout_width="0dp"
android:layout_height="48dp"
tools:layout_constraintRight_creator="1"
tools:layout_constraintBottom_creator="1"
app:layout_constraintBottom_toTopOf="@+id/button4"
android:layout_marginStart="25dp"
android:layout_marginEnd="25dp"
app:layout_constraintRight_toRightOf="parent"
tools:layout_constraintLeft_creator="1"
android:layout_marginBottom="60dp"
app:layout_constraintLeft_toLeftOf="parent" /> <Button
android:id="@+id/buuton3"
android:layout_width="0dp"
android:text="清除全部"
android:layout_height="48dp"
android:layout_marginStart="25dp"
tools:layout_constraintTop_creator="1"
tools:layout_constraintRight_creator="1"
tools:layout_constraintBottom_creator="1"
app:layout_constraintBottom_toBottomOf="@+id/button4"
android:layout_marginEnd="25dp"
app:layout_constraintRight_toRightOf="parent"
android:layout_marginTop="25dp"
tools:layout_constraintLeft_creator="1"
android:layout_marginBottom="60dp"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintTop_toTopOf="@+id/button2"
app:layout_constraintVertical_bias="1.0"
app:layout_constraintHorizontal_bias="0.509" />
<Button
android:id="@+id/button4"
android:layout_width="0dp"
android:text="执行测试"
android:layout_height="48dp"
tools:layout_constraintRight_creator="1"
tools:layout_constraintBottom_creator="1"
android:layout_marginStart="25dp"
app:layout_constraintBottom_toBottomOf="parent"
android:layout_marginEnd="25dp"
app:layout_constraintRight_toRightOf="parent"
tools:layout_constraintLeft_creator="1"
android:layout_marginBottom="139dp"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintHorizontal_bias="0.68" />
<EditText
android:id="@+id/text1"
android:layout_width="0dp"
android:layout_height="60dp"
android:layout_marginStart="25dp"
tools:layout_constraintTop_creator="1"
tools:layout_constraintRight_creator="1"
tools:layout_constraintBottom_creator="1"
app:layout_constraintBottom_toBottomOf="@+id/button1"
android:layout_marginEnd="25dp"
app:layout_constraintRight_toRightOf="parent"
android:layout_marginTop="37dp"
tools:layout_constraintLeft_creator="1"
android:layout_marginBottom="48dp"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.0" />
<EditText
android:id="@+id/text2"
android:layout_width="0dp"
android:layout_height="60dp"
android:layout_marginEnd="25dp"
android:layout_marginStart="25dp"
tools:layout_constraintTop_creator="1"
tools:layout_constraintRight_creator="1"
tools:layout_constraintBottom_creator="1"
app:layout_constraintBottom_toBottomOf="@+id/button2"
app:layout_constraintRight_toRightOf="parent"
android:layout_marginTop="58dp"
tools:layout_constraintLeft_creator="1"
android:layout_marginBottom="55dp"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintTop_toTopOf="@+id/button1" />
<TextView
android:id="@+id/text3"
android:text=" 暗淡"
android:layout_width="47dp"
android:layout_height="27dp"
tools:layout_constraintBottom_creator="1"
android:layout_marginStart="16dp"
app:layout_constraintBottom_toBottomOf="parent"
tools:layout_constraintLeft_creator="1"
android:layout_marginBottom="-5dp"
app:layout_constraintLeft_toLeftOf="parent"
android:layout_marginLeft="16dp" />
</android.support.constraint.ConstraintLayout>

Main的class

package com.example.prize.mydemo;

import android.content.Intent;
import android.net.Uri;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.EditText; public class MainActivity extends AppCompatActivity {
public static String [] PhoneAndTime = new String[2];
@Override
protected void onCreate(Bundle savedInstanceState) {
//初始化界面
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main); // 写入号码
//find按键
Button SetPhone = (Button)findViewById(R.id.button1);
//创建按键监听
SetPhone.setOnClickListener(new View.OnClickListener(){ @Override
public void onClick(View view) {
//获取EditText
EditText phoneText = (EditText)findViewById(R.id.text1);
PhoneAndTime[0] = String.valueOf(phoneText.getText());
Log.e("Demo1","号码是:"+PhoneAndTime[0]);
Log.e("Demo1","点击写入号码"); }
}); // 重新写入号码
/*
Button ClearPhone = (Button)findViewById(R.id.button2);
ClearPhone.setOnClickListener(new View.OnClickListener(){ @Override
public void onClick(View view) {
EditText PhoneText = (EditText)findViewById(R.id.text2);
PhoneText.setText("");
PhoneAndTime[1] = String.valueOf(PhoneText.getText()); Log.e("Demo1","点击重新写入号码"); }
});
*/ //写入次数 Button SetTime = (Button)findViewById(R.id.button2);
SetTime.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
EditText timetext = (EditText)findViewById(R.id.text2) ;
PhoneAndTime [1] = timetext.getText().toString();
Log.e("Demo1","写入次数是:"+PhoneAndTime[1]);
Log.e("Demo1","点击写入次数"); }
}); //重新写入
Button ClearTime = (Button)findViewById(R.id.buuton3);
ClearTime.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
EditText phoneText = (EditText)findViewById(R.id.text1);
EditText timetext = (EditText)findViewById(R.id.text2) ;
phoneText.setText("");
timetext.setText("");
PhoneAndTime[0] = "";
PhoneAndTime[1] = ""; Log.e("Demo1","点击重新写入");
}
}); //执行测试
Button Run = (Button)findViewById(R.id.button4);
Run.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
//new 新的Intent
Intent data = new Intent(MainActivity.this,Demo_1.class);
//用Bundle 携带数组
Bundle bundle = new Bundle();
bundle.putStringArray("phone_data",PhoneAndTime);
//将 data Intent 添加Bundle
data.putExtras(bundle);
startActivity(data);
Log.e("Demo1","点击执行测试"); }
});
}
}

执行拨号的后台 XML


<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="com.example.prize.mydemo.Demo_1">
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="拨号" /> </android.support.constraint.ConstraintLayout>

执行拨号的后台 class


package com.example.prize.mydemo;

import android.content.Intent;
import android.content.IntentSender;
import android.net.Uri;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.util.Log;
import android.widget.Toast; public class Demo_1 extends AppCompatActivity { @Override
protected void onResume() {
super.onResume();
Intent intentdata = getIntent();
Bundle bundle = this.getIntent().getExtras();
String [] data = bundle.getStringArray("phone_data");
Intent intent2 = new Intent(Intent.ACTION_CALL,Uri.parse("tel:"+data[0]));
Log.e("Demo1","正在拨号");
int time = Integer.parseInt(data[1]);
for(int i=0;i<time;i++) {
try {
startActivity(intent2);
Toast.makeText(Demo_1.this,"这是第:"+i+"拨号",Toast.LENGTH_SHORT).show(); } catch (Exception e) {
e.printStackTrace();
Log.e("Demo1", "异常");
}
try {
Log.e("Demo1","正在通话,等待120秒");
Thread.sleep(120000);
Log.e("Demo1","等待结束");
} catch (InterruptedException e) {
e.printStackTrace();
Log.e("Demo1", "异常2");
}
}
Log.e("Demo1","拨号循环已经跳出");
Toast.makeText(Demo_1.this,"测试完成",Toast.LENGTH_SHORT).show();
finish(); }
}

自写-自动拨号测试app的更多相关文章

  1. 深圳电信光纤用户必备:简单破解中兴ZXA10 F460光电猫,实现WIFI和自动拨号功能

    最近搬家,ADSL转成光纤宽带,下载速度非常给力.原来的ADSL路由器派不上用场,电信的安装人员也给开通了wifi功能,只是wifi无法上网,而且拨号一定需要用电脑连网线进行拨号.以前是直接把拨号账户 ...

  2. WinCE下GPRS自动拨号软件(GPRS AutoDial)

    之前在WinCE下调试USB的3G Modem时,写过一个拨号助手RASManager,基本能用.后来车机卖到俄罗斯去,客户老M提供了一个更好的GPRS自动拨号软件GPRS AutoDial,功能完善 ...

  3. OSX10.12搭建IPv6本地环境测试APP

    前记 最近刚换了工作,生活终于又安定下来了,又可以更博了 正文 最近公司在上线APP(整体全是用JS去写的,就用了我原生的一个控制器),然后APP就去上线,就被苹果巴巴给拒了.通过阅读苹果回复的邮件, ...

  4. Samba共享及自动挂载测试

    要求: 1.在server0服务器上安装配置samba,工作组为STAFF,共享目录/smb1, 共享名smb1,仅允许192.168.100.0/24网段中的主机访问.samba用户user1可以读 ...

  5. python--selenium实用的自动生成测试HTML报告方法--HTMLTestRunner

    python--selenium实用的自动生成测试HTML报告方法--HTMLTestRunner 下面给大家介绍下用HTMLTestRunner模块自动生成测试报告的方法. 一.首先我们导入unit ...

  6. 如何实现ADSL宽带用户开机自动拨号与定时拨号

    在宽带拨号网络的环境下,要通过手动拨号认证才能上网.下面给大家介绍怎么设置开机自动拨号上网以及定时拨号上网. 这也是为一个叫CHY的2B准备的技术套餐,不需要用到网上说的自动拨号软件,只要在主机上设置 ...

  7. python基础语法13 内置模块 subprocess,re模块,logging日志记录模块,防止导入模块时自动执行测试功能,包的理论

    subprocess模块: - 可以通过python代码给操作系统终端发送命令, 并且可以返回结果. sub: 子    process: 进程 import subprocess while Tru ...

  8. 怎样在IDEA中使用JUnit4和JUnitGenerator V2.0自动生成测试模块

     因为项目的需要,所以研究了一下自动生成测试代码.将经验记录下来,总会有用的.我个人认为,好记性不如多做笔记多反思总结. 1.    前提条件 开发环境已正确配置 工程已解决JUnit依赖关系(pom ...

  9. Fiddler抓包测试App接口

    Fiddler抓包测试App接口 使用Fiddler对手机App应用进行抓包,可以对App接口进行测试,也可以了解App传输中流量使用及请求响应情况,从而测试数据传输过程中流量使用的是否合理. 抓包过 ...

随机推荐

  1. centos添加额外测源,解决:No package openvpn available.

    centos添加额外测源,解决:No package openvpn available. ##添加额外的repositories,安装openvpn yum install epel-release ...

  2. 状态图绘制软件的使用---Gvedit

    状态图绘制软件的使用---Gvedit 1.编写状态图文本 digraph finite_state_machine { rankdir=LR; size="40,15" node ...

  3. 代码编辑器之sublime text插件

    sublimetext 学习资源:http://www.jianshu.com/p/d1b9a64e2e37 Sublime SFTP CTags – 让Sublime Text支持CTags. Si ...

  4. ALGO-157_蓝桥杯_算法训练_阶乘末尾(高精度)

    问题描述 给定n和len,输出n!末尾len位. 输入格式 一行两个正整数n和len. 输出格式 一行一个字符串,表示答案.长度不足用前置零补全. 样例输入 样例输出 数据规模和约定 n<=, ...

  5. C/C++基础----特殊工具和技术 (重载new和delete,RTT,限定作用域的枚举类型,类成员指针,嵌套类,局部类,volatile,链接指示 extern “C”)

    重载new和delete 1调用operator new( 或new[])标准库函数分配足够大的.原始的.未命名的内存空间以便存储特定类型的对象 2编译器运行相应地构造函数以构造这些对象,并为其传入初 ...

  6. C++进阶--隐式类型转换

    //############################################################################ /* 隐式类型转换 * * 类型转换可分为 ...

  7. NGUI 合集

    UILabel  设置BBCode的时候 ,要设置颜色为白色 .不要设为其他的颜色因为会叠加的 .

  8. (转) SQL Server编程系列(1):SMO介绍

    最近在项目中用到了有关SQL Server管理任务方面的编程实现,有了一些自己的心得体会,想在此跟大家分享一下,在工作中用到了SMO/SQL CLR/SSIS等方面的知识,在国内这方面的文章并不多见, ...

  9. 学习笔记之C / C++

    面试总结之C/C++ - 浩然119 - 博客园 https://www.cnblogs.com/pegasus923/p/5558919.html 学习笔记之C++ How to Program(p ...

  10. css定位(后盾网)

    1.绝对定位:脱离了文档流,如果设置了left和top,位置相对浏览器来定位,如果不设值top和left,还是按照原来的文档流的位置站位,位置移走后,原来的空间位被其他元素占据 ***应用:一般来说我 ...