×

android拨打电话功能实现

android拨打电话功能实现(Android拨打电话)

admin admin 发表于2024-01-28 18:53:02 浏览34 评论0

抢沙发发表评论

“android拨打电话功能实现”相关信息最新大全有哪些,这是大家都非常关心的,接下来就一起看看android拨打电话功能实现(Android拨打电话)!

本文目录

Android拨打电话

Intent.ACTION_DIAL是Intent指定的打开拨号界面的action,不需要声明权限,data中必须指定对应协议,否则会报错,拨号的协议为tel,后面可拼接电话号码或置空 Intent.ACTION_CALL是Intent指定的直接拨号的action,必须声明权限,否则程序将崩溃 CALL_PHONE是拨打电话功能必须声明的权限,因为涉及用户手机的资费问题,属于Android的一项危险权限。在Android6.0以及更高版本上,在使用危险权限时都必须进行运行时权限处理。所以,首先使用ContextCompat.checkSelfPermission()检测是否已经授权,checkSelfPermission()方法接收两个参数,第一个参数为上下文Context,第二个参数为具体的权限名,返回值和PackageManager.PERMISSION_GRANTED做比较,相等则表示已授权。如果不相等,使用ActivityCompat.requestPermissions()方法来向用户申请授权,requestPermissions()方法接收三个参数,第一个参数为Activity的实例,第二个为String数组,把需要申请的权限名放入数组即可,第三个为请求码,只需要保证其唯一性即可。 调用完requestPermissions()方法后,无论是否同意,都会回调到onRequestPermissionsResult()方法中,授权结果封装在grantResults参数中,requestCode表示唯一的请求码

安卓模拟器上的拨号器在哪

Android的手机模拟器自带有拨号功能,我们先试试自带的拨号功能。我们启动两个Android 2.3.3版本的模拟器。你有没有注意每个模拟器左上角有一个这样的,只不过数字不同,这究竟是什么含义呢?每个模拟器将会被绑定到“192.168.1.1”这个本地IP上,而后面的“5556”则是他的端口号,所以这个模拟器的唯一标识地是:“192.168.1.1:5556”,所以,这个端口号可以当作是我们的手机号。只要明白了这个,就不会困惑“没有手机号怎么拨打呢?”打开手机号是“5554”的模拟器,输入“手机号”5556,点击“拨打键”,两个手机则实现通话了

android 从数据库读取到的电话,实现打电话功能

(一)、拨打电话:Intent intent=new Intent(); intent.setAction(Intent.ACTION_CALL); //intent.setAction("android.intent.action.CALL"); //以下各项皆如此,都有两种写法。intent.setData(Uri.parse("tel:1320010001"));startActivity(intent);//调用拨号面板:Intent intent=new Intent();intent.setAction(Intent.ACTION_DIAL); intent.setData(Uri.parse("tel:1320010001"));startActivity(intent); //调用拨号面板:Intent intent=new Intent();intent.setAction(Intent.ACTION_VIEW); intent.setData(Uri.parse("tel:1320010001"));startActivity(intent);

android怎样点击号码就拨打电话

点好号码的话,应该是监听listview的item的点击事情,然后调用intent,就可以拨打电话了。

android如何实现后台打电话

第一种方法,拨打电话跳转到拨号界面。源代码如下:?1234 Intent intent = new Intent(Intent.ACTION_DIAL);Uri data = Uri.parse("tel:" + "135xxxxxxxx");intent.setData(data);

Android开发,如何编程实现开启电话的免提功能

  • JAVA编写,对应拨打电话只需要调用ACTION_CALL加对应电话号码可以如下编写:

view plaincopyvoid callPhone(){               Intent intent = new Intent(Intent.ACTION_CALL,Uri.parse("tel:110")); //不能调用呼叫               intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);                startActivity(intent);           }

  • 但是当拨打110,119,120等紧急电话时,无法自动呼出,还需要用户进行确认操作,那么就需要实现直接进行呼叫,但是前提app必须用系统级别权限,及system/app/目录下方可。

    • 首先确保应用具有如下权限:

view plaincopy《uses-permission android:name="android.permission.READ_PHONE_STATE" /》    《uses-permission android:name="android.permission.CALL_PHONE" /》    《uses-permission android:name="android.permission.PROCESS_OUTGOING_CALLS"/》    《uses-permission android:name="android.permission.CALL_PRIVILEGED" /》

    • 同样调用intent来开启功能,不过内容有些变化

view plaincopyvoid callPhone(String num){            Intent intent = new Intent("android.intent.action.CALL_PRIVILEGED",Uri.parse("tel:"+num));            intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);             startActivity(intent);        }

    • 然后在源码下编译,放到/system/app/即可使用。

  • 开启拨通电话后设置开启扬声器功能:

    • 首先,获取音频管理器:audioManager = (AudioManager)getSystemService(Context.AUDIO_SERVICE);

    • 设置电话监听:

view plaincopyprivate class TelListner extends PhoneStateListener{          boolean comingPhone=false;                    @Override          public void onCallStateChanged(int state, String incomingNumber) {                 switch (state) {                 case TelephonyManager.CALL_STATE_IDLE:/* 无任何状态 */                     Log.d(tag, "phone idle");                    if(this.comingPhone){                        this.comingPhone=false;                        backMyApp();                        setSpeekModle(false);                    }                     break;                 case TelephonyManager.CALL_STATE_OFFHOOK:/* 接起电话 */                      Log.d(tag, "phone answer");                      this.comingPhone=true;                      setSpeekModle(true);                     break;                 case TelephonyManager.CALL_STATE_RINGING:/* 电话进来 */                     Log.d(tag, "phone coming");                     this.comingPhone=true;                     setSpeekModle(true);                     break;                 }           }      }

    • 注册监听类: 

view plaincopyTelephonyManager telManager = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE);            TelListner listener = new TelListner() ;            telManager.listen(listener, PhoneStateListener.LISTEN_CALL_STATE);

    • 开启或关闭免提功能:

view plaincopyvoid setSpeekModle(boolean open){          //audioManager.setMode(AudioManager.ROUTE_SPEAKER);          currVolume = audioManager.getStreamVolume(AudioManager.STREAM_VOICE_CALL);          audioManager.setMode(AudioManager.MODE_IN_CALL);             if(!audioManager.isSpeakerphoneOn()&&true==open) {            audioManager.setSpeakerphoneOn(true);            audioManager.setStreamVolume(AudioManager.STREAM_VOICE_CALL,                   audioManager.getStreamMaxVolume(AudioManager.STREAM_VOICE_CALL),                   AudioManager.STREAM_VOICE_CALL);          }else if(audioManager.isSpeakerphoneOn()&&false==open){                   audioManager.setSpeakerphoneOn(false);                   audioManager.setStreamVolume(AudioManager.STREAM_VOICE_CALL,currVolume,                              AudioManager.STREAM_VOICE_CALL);          }      }

    • 添加权限:

view plaincopy《uses-permission android:name="android.permission.READ_PHONE_STATE" /》  《uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" /》

android怎么实现播号啊不是调用系统自带的播拨号器

private OnClickListener myListener = new Button.OnClickListener(){@Overridepublic void onClick(View v){//调用系统的拨号服务实现电话拨打功能String phone_number = numberEt.getText().toString();phone_number = phone_number.trim();//删除字符串首部和尾部的空格if(phone_number != null && !phone_number.equals("")){//调用系统的拨号服务实现电话拨打功能//封装一个拨打电话的intent,并且将电话号码包装成一个Uri对象传入Intent intent = new Intent(Intent.ACTION_CALL,Uri.parse("tel:"+phone_number));MyPhoneActivity.this.startActivity(intent);//内部类}}};最后在在AndroidManifest.xml里面添加《uses-permission android:name="android.permission.CALL_PHONE"/》

android 怎么实现拨无限打电话功能

  1. 新建一个Android工程,取名为TestCallphone

  2. 打开res|layout|activity_main.xml

  3. activity_main.xml,添加如下代码:

  4.   《Button        android:id="@+id/btn_call"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:text="直接呼叫联通客服10010" /》

  5. 打开MainActivity.java,并,添加如下代码:

  6. import android.app.Activity;import android.content.Intent;import android.net.Uri;import android.os.Bundle;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;

  7. public class MainActivity extends Activity { private Button mCallButton;

  8.  @Override protected void onCreate(Bundle savedInstanceState) {  super.onCreate(savedInstanceState);  setContentView(R.layout.activity_main);  mCallButton = (Button) findViewById(R.id.btn_call);  mCallButton.setOnClickListener(new OnClickListener() {   @Override   public void onClick(View v) {    Intent intent = new Intent(Intent.ACTION_CALL, Uri      .parse("tel:10010"));    startActivity(intent);   }  }); }

  9. }

  10. 打开AndroidManifest.xml,添加拨打电话的权限,

  11. 《uses-permission android:name="android.permission.CALL_PHONE"/》

  12. 必须添加这条权限,否则无法拨打电话

安卓版的夏色泡影怎么打电话

对于这个问题,我想先提醒一下,夏色泡影是一款日本的游戏,不是一款电话应用程序。因此,它没有直接拨打电话的功能。如果您想在安卓版的夏色泡影中打电话,您需要通过以下步骤来实现:步骤1:首先,在夏色泡影游戏中找到您想要拨打电话的角色。步骤2:然后,记下该角色的电话号码。步骤3:退出夏色泡影游戏,打开您的手机拨号界面。步骤4:在拨号界面中输入该角色的电话号码,然后点击拨号按钮。这样,您就可以通过安卓手机的拨号功能实现在夏色泡影游戏中打电话的效果了。需要注意的是,由于夏色泡影是一款游戏,其中的电话号码只是虚构的,不是真实的电话号码。因此,您拨打这些号码时只会听到游戏中的角色对话,并不能与现实中的人进行通话。此外,如果您想要在安卓手机上拨打电话,您需要确保您已经购买了电话套餐并开通了电话服务。

Android调用拨打电话和发送短信

拨打电话常见两种方法 1:直接拨打了你所输入的号码 2:去到了拨号界面 这种方式的特点就是,去到了拨号界面,但是实际的拨号是由用户点击实现的。 记得加入打电话的权限 《uses-permission android:name="android.permission.CALL_PHONE" /》 发送短信也可以直接跳到发送短信页面也可以直接发送短信内容 发送短信 1.指定发送人和内内容: 2.短信并发送

Android拨打电话的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于Android拨打电话、Android拨打电话的信息别忘了在本站进行查找哦。