Android学习笔记(5)- Intent与权限,打电话的例子

完成了拨号功能,接下来要做呼叫功能!

前面的例子中仅仅只是一个拨号,如果要打电话还要再按一下呼叫键,这个例子中主要是学习Intents及基于它的全新的应用编写方法。

如前面的步骤一下,传一个CALL_ACTIONIntent就可以完成呼叫了。代码如下:

Intent CallIntent = new Intent(Intent.ACTION_CALL, Uri.parse("tel:7788250"));

startActivity(CallIntent);

运行一下,结果让人很蛋疼,

不仅报了个错,还错了不知道是什么东西的错,只是说出了异常,怎么后面的版本都不告诉咱这是哪错了?

还好这个问题早就是已知的了,是权限问题,总不能让是个应用程序就能乱打电话吧,这样估计用Android的人每月都能有一堆类似声讯电话的通话费了。

AndroidManifest.xml中加上这个节点,

<uses-permission android:name="android.permission.CALL_PHONE" />

需要注意的是在<mainfest>这个节点下。

<?xml version="1.0" encoding="utf-8"?>

<manifest xmlns:android="http://schemas.android.com/apk/res/android"

      package="com.jjie"

      android:versionCode="1"

      android:versionName="1.0">

    <uses-sdk android:minSdkVersion="8" />

    <application android:icon="@drawable/icon" android:label="@string/app_name">

        <activity android:name=".MainActivity"

                  android:label="@string/app_name">

            <intent-filter>

                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />

            </intent-filter>

        </activity>

        

    </application>

    <uses-permission android:name="android.permission.CALL_PHONE">

</uses-permission>

</manifest>

再运行一下:

成功的拨出了号码!

在这个例子中可以看出Android的一些Action需要给予一定的权限。这些都是关系到一些重要的业务。

大多数的Activity只要设置一个适当的权限就可以运行了,但有一些系统中,需要象证书一样要有个认证才能运行。下面举几个权限,需要的时候请去官方文档查找。

● ACCESS_ASSISTED_GPS 

● INTERNAL_SYSTEM_WINDOW

● ACCESS_CELL_ID 

● RAISED_THREAD_PRIORITY

● ACCESS_GPS 

● READ_CONTACTS

● ACCESS_LOCATION 

● READ_FRAME_BUFFER

● ACCESS_SURFACE_FLINGER 

● RECEIVE_BOOT_COMPLETED

● ADD_SYSTEM_SERVICE 

● RECEIVE_SMS

● BROADCAST_PACKAGE_REMOVED 

● RECEIVE_WAP_PUSH

● BROADCAST_STICKY 

● RUN_INSTRUMENTATION

● CALL_PHONE 

● SET_ACTIVITY_WATCHER

● CHANGE_COMPONENT_ENABLED_STATE

● SET_PREFERRED_APPLICATIONS

● DELETE_PACKAGES 

● SIGNAL_PERSISTENT_PROCESSES

● DUMP

● SYSTEM_ALERT_WINDOW

● FOTA_UPDATE 

● WRITE_CONTACTS

● GET_TASKS 

● WRITE_SETTINGS

● INSTALL_PACKAGES

通过权限与Intents的比较,可以发现大多数的Intent都可以找到相应的权限。

至此,虽然还没有什么象样的东西做出来,但其中最常用的一些已经在了。话说好的开端是成功的一半,对我们来说已经完成Android学习的一半,也度过了最难的时期了,接下来网上搜搜,API查查就完了。

接下来还有按钮,菜单,视图这些东西是一本入门书中必备的东西,随便看下就行了。

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值