⑴ android怎樣點擊號碼就撥打電話
點好號碼的話,應該是監聽listview的item的點擊事情,然後調用intent,就可以撥打電話了。
⑵ Android 6.0 撥打電話問題
"可進行以下操作:
1.重新開關機
2.卸載近期安裝的第三方軟體後觀察
3.備份手機數據(電話簿、簡訊息、多媒體文件等),恢復出廠設置
如果恢復出廠設置問題依然存在,建議將手機送至就近的三星服務中心進行檢測及進一步處理 。"
⑶ android開發怎麼撥打電話
無許可權版(彈出撥號界面並自動輸入電話號碼,用戶選擇是否撥號):
java">importandroid.content.Context;
importandroid.content.Intent;
importandroid.net.Uri;
publicvoidCall(StringNum,Contextc){
if(Num!=null&&Num.length()>0){
Intentitt=newIntent(Intent.ACTION_DIAL,Uri.parse("tel:"+Num));
itt.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
c.startActivity(itt);
}
}
許可權版(彈出撥號界面,自動輸入電話號碼並立刻撥號,在部分系統中會觸發安全警告):
<!---許可權--->
<uses-permissionandroid:name="android.permission.CALL_PHONE"/>
importandroid.content.Context;
importandroid.content.Intent;
importandroid.net.Uri;
publicvoidCall(StringNum,Contextc){
if(Num!=null&&Num.length()>0){
Intentitt=newIntent(Intent.ACTION_CALL,Uri.parse("tel:"+Num));
itt.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
c.startActivity(itt);
}
}
⑷ 怎麼樣才能在Android手機上面觸發撥打電話
開發步驟:
1 新建一個Android工程,取名為TestCallphone
⑸ 在android雙模手機上開發時,怎樣選擇網路撥打電話
在手機設置中有個網路選擇,你選優先啟動哪個後,就為默認那個打電話,除非在其信號特弱或沒有信號的情況下,才會啟動自動轉另外一種模式。
⑹ Android開發怎麼實現搖一搖手機撥打電話功能
撥打電話:
這個相對簡單
privatevoidcallPhone(Stringmobile){
Intentintent=newIntent();
intent.setAction("android.intent.action.CALL");
intent.setData(Uri.parse("tel:"+mobile));
startActivity(intent);
}
但是在Android6.0以上撥打電話必須代碼動態請求許可權。
搖一搖:
處理相對麻煩,這里簡要說明
SensorManagersensorManager=(SensorManager)mContext.getSystemService(
Context.SENSOR_SERVICE);
if(sensorManager!=null){
Sensorsensor=sensorManager.getDefaultSensor(Sensor.TYPE_ACCELEROMETER);
if(sensor!=null){
sensorManager.registerListener("這里傳入SensorEventListener監聽器",sensor,
SensorManager.SENSOR_DELAY_GAME);
}
}
監聽器的onSensorChanged(SensorEvent event)回調方法中需要對搖晃速度進性判斷,不然豈不是手機稍微動一下就觸發。速度滿足要求就可以進行邏輯處理。想要停止監聽手機的搖晃只要解除即可:
sensorManager.unregisterListener("之前傳入的監聽器");
順便說一下,對速度的判斷可以這樣做:
floatx=event.values[0];
floaty=event.values[1];
floatz=event.values[2];
拿到兩次搖晃的坐標對比(當然咯,第一次搖晃時比對的坐標自然是(0,0,0)哈),稍微動一下數學頭腦,計算兩點直線距離,除以兩次搖晃時間就是速度啦。當然時間也是要自己記錄的
⑺ android 開發 打電話會銷毀app的application么
不會,這方面谷歌已經考慮到了,當運行應用時接到電話,該運行並不會立即銷毀,若內存充足,掛掉電話後又會重新回到該應用所在界面,,但是,如果內存實在有限,還是會被清理掉,這誰都沒辦法,硬體問題
⑻ android中撥打電話的幾種實現
手機撥打號碼的方法:
1.打開手機撥號盤-輸入號碼-點擊電話圖標即可。
2.安卓手機可以打開通訊錄,在某一聯系人位置自左向右滑動即可撥打電話。
3.部分手機支持S Voice功能,可以使用語音撥打電話。操作:雙擊手機Home鍵-打開S Voice-說出語音命令「呼叫XX的手機」即可。使用S Voice功能,手機需要聯網。
⑼ Android中怎樣調用撥打電話
開發步驟
1
新建一個Android工程,取名為TestCallphone
2
打開res|layout|activity_main.xml
3
編輯activity_main.xml,添加如下代碼:
<Button android:id="@+id/btn_call"
android:layout_width="wrap_content"
android:layout_height="wrap_content" android:text="直接呼叫聯通客服10010"
/>
4
打開MainActivity.java,並編輯,添加如下代碼:
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;
public class MainActivity extends Activity { private Button mCallButton;
@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); } }); }
}
5
打開AndroidManifest.xml,添加撥打電話的許可權,
<uses-permission android:name="android.permission.CALL_PHONE"/>
必須添加這條許可權,否則無法撥打電話
6
連接手機,運行程序
END
驗證步驟
運行程序後,界面顯示如下
點擊按鈕「直接呼叫聯通客服10010」後,顯示界面如下
3
程序代碼成功的調用了系統直接撥打電話的功能。
⑽ Android開發,如何編程實現開啟電話的免提功能
JAVA編寫,對應撥打電話只需要調用ACTION_CALL加對應電話號碼可以如下編寫:
viewplain
voidcallPhone(){
Intentintent=newIntent(Intent.ACTION_CALL,Uri.parse("tel:110"));//不能調用呼叫
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intent);
}
但是當撥打110,119,120等緊急電話時,無法自動呼出,還需要用戶進行確認操作,那麼就需要實現直接進行呼叫,但是前提app必須用系統級別許可權,及system/app/目錄下方可。
首先確保應用具有如下許可權:
viewplain
<uses-permissionandroid:name="android.permission.READ_PHONE_STATE"/>
<uses-permissionandroid:name="android.permission.CALL_PHONE"/>
<uses-permissionandroid:name="android.permission.PROCESS_OUTGOING_CALLS"/>
<uses-permissionandroid:name="android.permission.CALL_PRIVILEGED"/>
同樣調用intent來開啟功能,不過內容有些變化
viewplain
voidcallPhone(Stringnum){
Intentintent=newIntent("android.intent.action.CALL_PRIVILEGED",Uri.parse("tel:"+num));
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intent);
}
開啟撥通電話後設置開啟揚聲器功能:
首先,獲取音頻管理器:audioManager = (AudioManager)getSystemService(Context.AUDIO_SERVICE);
設置電話監聽:
viewplain
{
booleancomingPhone=false;
@Override
publicvoidonCallStateChanged(intstate,StringincomingNumber){
switch(state){
caseTelephonyManager.CALL_STATE_IDLE:/*無任何狀態*/
Log.d(tag,"phoneidle");
if(this.comingPhone){
this.comingPhone=false;
backMyApp();
setSpeekModle(false);
}
break;
caseTelephonyManager.CALL_STATE_OFFHOOK:/*接起電話*/
Log.d(tag,"phoneanswer");
this.comingPhone=true;
setSpeekModle(true);
break;
caseTelephonyManager.CALL_STATE_RINGING:/*電話進來*/
Log.d(tag,"phonecoming");
this.comingPhone=true;
setSpeekModle(true);
break;
}
}
}
注冊監聽類:
viewplain
TelephonyManagertelManager=(TelephonyManager)getSystemService(Context.TELEPHONY_SERVICE);
TelListnerlistener=newTelListner();
telManager.listen(listener,PhoneStateListener.LISTEN_CALL_STATE);
開啟或關閉免提功能:
viewplain
voidsetSpeekModle(booleanopen){
//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);
}elseif(audioManager.isSpeakerphoneOn()&&false==open){
audioManager.setSpeakerphoneOn(false);
audioManager.setStreamVolume(AudioManager.STREAM_VOICE_CALL,currVolume,
AudioManager.STREAM_VOICE_CALL);
}
}
添加許可權:
viewplain
<uses-permissionandroid:name="android.permission.READ_PHONE_STATE"/>
<uses-permissionandroid:name="android.permission.MODIFY_AUDIO_SETTINGS"/>