导航:首页 > 操作系统 > androidppp拨号

androidppp拨号

发布时间:2023-03-14 13:53:45

❶ 手机里没有ppp拨号,是因为这个功能给别的模式取代定在别的地方打开。可不可以下载软件设置一个OPP

点对点协议(PPP)为在点对点连接上传输多协议数据包提供了一个标准方法。PPP 最初设计是为两个对等节点之间的 IP 流量传输提供一种封装协议。在 TCP-IP 协议集中它是一种用来同步调制连接的数据链路层协议(OSI 模式中的第二层),替代了原来非标准的第二层协议,即 SLIP。除了 IP 以外 PPP 还可以携带其它协议,包括 DECnet 和 Novell 的 Internet 网包交换(IPX)。
PPP 主要由以下几部分组成:
封装:一种封装多协议数据报的方法。PPP 封装提供了不同网络层协议同时在同一链路传输的多路复用技术。PPP 封装精心设计,能保持对大多数常用硬件的兼容性。克服了SLIP不足之处的一种多用途、点到点协议,它提供的WAN数据链接封装服务类似于LAN所提供的封闭服务。所以,PPP不仅仅提供帧定界,而且提供协议标识和位级完整性检查服务。
链路控制协议:PPP 提供的 LCP 功能全面,适用于大多数环境。LCP 用于就封装格式选项自动达成一致,处理数据包大小限制,探测环路链路和其他普通的配置错误,以及终止链路。LCP 提供的其他可选功能有:认证链路中对等单元的身份,决定链路功能正常或链路失败情况。
网络控制协议:一种扩展链路控制协议,用于建立、配置、测试和管理数据链路连接。
配置:使用链路控制协议的简单和自制机制。该机制也应用于其它控制协议,例如:网络控制协议(NCP)。
为了建立点对点链路通信,PPP 链路的每一端,必须首先发送 LCP 包以便设定和测试数据链路。在链路建立,LCP 所需的可选功能被选定之后,PPP 必须发送 NCP 包以便选择和设定一个或更多的网络层协议。一旦每个被选择的网络层协议都被设定好了,来自每个网络层协议的数据报就能在链路上发送了。
链路将保持通信设定不变,直到有 LCP 和 NCP 数据包关闭链路,或者是发生一些外部事件的时候(如,休止状态的定时器期满或者网络管理员干涉)。
应 用:假设同样是在Windows 98,并且已经创建好“拨号连接”。那么可以通过下面的方法来设置PPP协议:首先,打开“拨号连接”属性,同样选择“服务器类型”选项卡;然后,选择默认的“PPP:Internet,Windows NT Server,Windows 98”,在高级选项中可以设置该协议其它功能选项;最后,单击“确定”按钮即可。
②即“公私合作”(Public-Private-Partnership),是指政府提供公共服务的一种方式。在这种机制下,对社会需要的特定公共服务,政府不再直接投资兴办公共项目,而是鼓励企业投资兴办(或企业与政府合资兴办)项目并提供公共服务,政府根据服务的数量与质量进行购买。
PPP工作流程:
当用户拨号接入 ISP 时,路由器的调制解调器对拨号做出确认,并建立一条物理连接。
PC 机向路由器发送一系列的 LCP 分组(封装成多个 PPP 帧)。
这些分组及其响应选择一些 PPP 参数,和进行网络层配置,NCP 给新接入的 PC机分配一个临时的 IP 地址,使 PC 机成为因特网上的一个主机。
通信完毕时,NCP 释放网络层连接,收回原来分配出去的 IP 地址。接着,LCP 释放数据链路层连接。最后释放的是物理层的连接。
PPP和HDLC之间最主要的区别是,PPP是面向字符的,HDLC是面向位的。
③PPP在GPS应用领域代表着“精密单点定位(Precise Point Positioning)”,精密单点定位是利用国际GPS服务机构IGS提供的或自己计算的GPS精密星历和精密钟差文件,以无电离层影响的载波相位和伪距组合观测值为观测资料,对测站的位置、接收机钟差、对流层天顶延迟以及组合后的相位模糊度等参数进行估计。用户通过一台含双频双码GPS接收机就可以实现在数千平方公里乃至全球范围内的高精度定位。它的特点在于各站的解算相互独立,计算量远远小于一般的相对定位。
PPP的特点:
①主要观测值为载波相位
②采用精密的卫星轨道和钟数据
③采用复杂的模型
PPP定位精度:亚分米级。
PPP用途:全球高精度测量,卫星定轨。
ppp
在RFC 1661中提供详细的PPP规范
PPP是指政府与民营机构(或更广义点,任何国营/民营/外商法人机构,下同)签订长期合作协议,授权民营机构代替政府建设、运营或管理基础设施(如道路、桥梁、电厂、水厂等)或其他公共服务设施(如医院、学校、监狱、警岗等)并向公众提供公共服务,主要有主要有垂直和水平两种方式;而BOT是指政府通过特许权协议,授权民营机构进行项目(主要是基础设施和自然资源开发)的融资、设计、建造、经营和维护,BOT主要有BOT、BOOT和BOO三种基本形式和十多种演变形式,如BT、TOT等。
由定义可见,PPP本质上和BOT差不多,都属于狭义项目融资(Project Financing),即“通过项目来融资——通过该项目的期望收益来融资的活动”,而非广义项目融资,即“为项目融资——为特定项目的建设、收购以及债务重组进行的融资活动”。从金融学而言,所谓狭义项目融资,是指债权人(银行)对借款人(项目公司)抵押资产以外资产没有追索权或仅有有限追索权的融资活动,而广义项目融资,往往是有100%追索权的,即债权人对借款人抵押资产以外的资产也有追索权。
PPP和BOT项目对民营机构的补偿都是通过授权民营机构在规定的特许期内向项目的使用者收取费用,由此回收项目的投资、经营和维护等成本,并获得合理的回报(即建成项目投入使用所产生的现金流量成为支付经营成本、偿还贷款和提供投资回报等的唯一来源),特许期满后项目将移交回政府(也有不移交的,如BOO)。但PPP的含义更为广泛,反映更为广义的公私合伙/合作关系,除了基础设施和自然资源开发,还可包括公共服务设施和国营机构的私有化,等等,因此,近年来国际上越来越多采用PPP这个词,以取代BOT。
BT属于BOT的一种演变形式,政府在项目建成后从民营机构中购回项目(可一次支付也可分期支付);与政府借贷不同,政府用于购买项目的资金往往是事后支付(可通过财政拨款,但更多的是通过运营项目收费来支付);民营机构用于建设的资金可自己出但更多的是获取银行的有限追索权贷款。笔者认为,如果建设资金不是从银行借的有限追索权贷款的话,BT实际上是“垫资承包”或“延期付款”,已经有点超出狭义项目融资的原有含义范畴了。
政府在PPP和BOT中的责任本质上没有什么不同,但细节上有,如PPP项目中,民营机构做不了的或不愿做的,由政府来做,其余全由民营机构来做,政府只起监管的作用;而BOT项目中,绝大多数工作由民营机构来做,政府则提供支持和担保。但无论什么方式,都要合理分担项目风险,从而提高项目的投资、建设、运营和管理效率,这是PPP或BOT的最重要目标。

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();
}

}

阅读全文

与androidppp拨号相关的资料

热点内容
qt用vs2015编译 浏览:547
结婚日子最好的算法 浏览:791
安卓怎么把数据传到苹果里 浏览:501
编译器标识 浏览:789
编程珠玑第三章 浏览:782
windows如何开启tftp服务器 浏览:107
欧姆龙plc编程指令表 浏览:186
程序员远程收入不稳定 浏览:860
算法原理怎么写 浏览:469
有个动漫女主蓝头发是程序员 浏览:998
云服务器资源评估 浏览:882
微云下载文件夹是空的 浏览:3
r9数控车的编程 浏览:403
为什么删不掉ksafe文件夹 浏览:291
理科男学编程用什么电脑 浏览:839
安阳弹性云服务器 浏览:570
压缩空气储罐有效期 浏览:408
英国文学PDF 浏览:175
软件编程需求 浏览:626
广州哪里解压 浏览:253