android撥號流程
❶ 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、跳轉到撥號界面,代碼如下:
1)直接撥打
IntentintentPhone=newIntent(Intent.ACTION_CALL,Uri.parse("tel:"+phoneNumber));
startActivity(intentPhone);
2)跳轉到撥號界面
Intentintent=newIntent(Intent.ACTION_DIAL,Uri.parse("tel:"+phoneNumber));
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intent);
2、跳轉到聯系人頁面,使用一下代碼:
IntentintentPhone=newIntent(Intent.ACTION_CALL,Uri.parse("tel:"+phoneNumber));
startActivity(intentPhone);
❸ 安卓手機一次性代碼怎麼輸入
一次性代碼安卓的輸入方法是首先打開安卓手機,之後在點擊撥號圖標。然後在選擇號碼後方的圖標。點擊更多。標記為的選項。選擇標記的類型。點擊後即可完成標記。
安卓(Android)是一種基於Linux內核(不包含GNU組件)的自由及開放源代碼的操作系統。主要使用於移動設備,如智能手機和平板電腦,由美國Google公司和開放手機聯盟領導及開發。Android操作系統最初由安迪·魯賓開發,主要支持手機。
安卓的介紹
2005年8月由Google收購注資。2007年11月,Google與84家硬體製造商、軟體開發商及電信營運商組建開放手機聯盟共同研發改良Android系統。隨後Google以Apache開源許可證的授權方式,發布了Android的源代碼。第一部Android智能手機發布於2008年10月。
Android逐漸擴展到平板電腦及其他領域上,如電視、數碼相機、游戲機、智能手錶等。2011年第一季度,Android在全球的市場份額首次超過塞班系統,躍居全球第一。
❹ Android實現撥號功能
請檢查你這個activity的permission,有沒有加上以下的設置。
在AndroidManifest.xml裡面添加。
<uses-permission android:name="android.permission.BROADCAST_STICKY" />
<uses-permission android:name="android.permission.CALL_PHONE" />
<uses-permission android:name="android.permission.CALL_PRIVILEGED" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.PROCESS_OUTGOING_CALLS" />
另外幫你貼下android自帶撥號程序的核心部分,請自己參照下吧~~
public class OutgoingCallBroadcaster extends Activity {
private static final String PERMISSION = android.Manifest.permission.PROCESS_OUTGOING_CALLS;
private static final String TAG = "OutgoingCallBroadcaster";
private static final boolean LOGV = true;//Config.LOGV;
public static final String EXTRA_ALREADY_CALLED = "android.phone.extra.ALREADY_CALLED";
public static final String EXTRA_ORIGINAL_URI = "android.phone.extra.ORIGINAL_URI";
private Phone mPhone;
@Override
protected void onCreate(Bundle icicle) {
super.onCreate(icicle);
mPhone = PhoneApp.getInstance().phone;
Intent intent = getIntent();
if (LOGV) Log.v(TAG, "onCreate: Got intent " + intent + ".");
String action = intent.getAction();
String number = PhoneNumberUtils.getNumberFromIntent(intent, this);
if (number != null) {
number = PhoneNumberUtils.stripSeparators(number);
}
final boolean emergencyNumber =
(number != null) && PhoneNumberUtils.isEmergencyNumber(number);
boolean callNow;
if (getClass().getName().equals(intent.getComponent().getClassName())) {
// If we were launched directly from the OutgoingCallBroadcaster,
// not one of its more privileged aliases, then make sure that
// only the non-privileged actions are allowed.
if (!Intent.ACTION_CALL.equals(intent.getAction())) {
Log.w(TAG, "Attempt to deliver non-CALL action; forcing to CALL");
intent.setAction(Intent.ACTION_CALL);
}
}
/* Change CALL_PRIVILEGED into CALL or CALL_EMERGENCY as needed. */
if (Intent.ACTION_CALL_PRIVILEGED.equals(action)) {
action = emergencyNumber
? Intent.ACTION_CALL_EMERGENCY
: Intent.ACTION_CALL;
intent.setAction(action);
}
if (Intent.ACTION_CALL.equals(action)) {
if (emergencyNumber) {
finish();
return;
}
callNow = false;
} else if (Intent.ACTION_CALL_EMERGENCY.equals(action)) {
if (!emergencyNumber) {
finish();
return;
}
callNow = true;
} else {
finish();
return;
}
// Make sure the screen is turned on. This is probably the right
// thing to do, and more importantly it works around an issue in the
// activity manager where we will not launch activities consistently
// when the screen is off (since it is trying to keep them paused
// and has... issues).
//
// Also, this ensures the device stays awake while doing the following
// broadcast; technically we should be holding a wake lock here
// as well.
PhoneApp.getInstance().wakeUpScreen();
/* If number is null, we're probably trying to call a non-existent voicemail number or
* something else fishy. Whatever the problem, there's no number, so there's no point
* in allowing apps to modify the number. */
if (number == null || TextUtils.isEmpty(number)) callNow = true;
if (callNow) {
intent.setClass(this, InCallScreen.class);
startActivity(intent);
}
Intent broadcastIntent = new Intent(Intent.ACTION_NEW_OUTGOING_CALL);
if (number != null) broadcastIntent.putExtra(Intent.EXTRA_PHONE_NUMBER, number);
broadcastIntent.putExtra(EXTRA_ALREADY_CALLED, callNow);
broadcastIntent.putExtra(EXTRA_ORIGINAL_URI, intent.getData().toString());
broadcastIntent.putExtra(EXTRA_INTENT_FROM_BT_HANDSFREE,
intent.getBooleanExtra(OutgoingCallBroadcaster.EXTRA_INTENT_FROM_BT_HANDSFREE, false));
if (LOGV) Log.v(TAG, "Broadcasting intent " + broadcastIntent + ".");
sendOrderedBroadcast(broadcastIntent, PERMISSION, null, null,
Activity.RESULT_OK, number, null);
finish();
}
}
❺ 安卓app撥號不轉撥號界面怎麼設置
創建一個Intent。
要實現撥號程序可能很簡單,一個簡單的Intent就能實現,從發出意圖到真正實現撥號的代碼中間還執行了很多其他方法,這都是android底層源碼自動實現的,其中就包含了啟動撥號的Activity。要想實現不彈出撥號界面就實現撥號,就必須繞過中間這些方法,直接調用framework層中的撥號方法。詳情可以去看下別人寫的android撥號流程,就可知道真正實現撥號的方法。
一開始是想通過反射調用底層方法,但是當初試過,好像不能實現,所以最後直接調用底層方法,由於android本身並未提供相關的類或方法,所以必須引用額外的jar包(將android源碼編譯打包成jar)。這里用的是某位大神將android2.2的部分源碼編譯成的jar包。
❻ android 撥號是 ndis 還是 ppp
RAS是典型的撥號實現,需要利用Windowsmobile的PPP協議棧實現連接配置和建立,而NDIS方式則不需要Windowsmobile中的PPP協議配置流程,RAS方式使用了無線基帶模塊自帶的PPP協議棧,NDIS方式的實現對無線模塊有特殊的要求,普通的無線模塊
❼ ANDROID有沒有實用的快速撥號程序啊
還是沒人回答?哭! 2# jasondane@mail.
❽ android 通話過程中發送數字指令DTMF
接管系統的撥號盤及電話應用,需要撥打如中國移動等運營商時能發送數字按鍵指令。(mtk的手機方案)
發送dtmf鍵盤事件(模擬通話界面鍵盤事件)
系統許可權及系統簽名
在AndroidManifest.xml里增加
由於我們定製了撥號界面,裡面有很多交互邏輯以及第三方依賴,不可能將這個頁面單獨設置為android:process="com.android.phone"進程,但發送dtmf又必須在這個進程中。
單獨將發送dtmf的功能獨立到com.android.phone進程的service中
清單文件中申明service
❾ 安卓手機怎麼設置重復撥打電話
以榮耀7x手機為例,演示手機重復撥號設置。步驟如下:
1、打開手機,點擊手機圖標進入,如圖所示。
❿ android里怎麼建立一個VPDN撥號連接
手機設置->無線網路->VPN設置->添加VPN->選擇類型
VPDN英文為Virtual Private Dial-up Networks,又稱為虛擬專用撥號網,是VPN業務的一種,是基於撥號用戶的虛擬專用撥號網業務。