android power 按键,android 添加按(power键)电源键结束通话(挂断电话)

这篇博客介绍了如何在Android系统源码中实现按电源键挂断电话的功能。通过在设置中添加新的CheckboxPreference,将用户的选择存储到系统数据库,并在PhoneWindowManager.java中拦截电源键事件,实现来电或通话时按电源键挂断电话。
摘要由CSDN通过智能技术生成

首先我们发现现在我们所用的android智能手机大部分都有当你在打电话时按power键来挂断电话,一般都是在设置中。

我主要是在原生源码中添加这一功能,主要用于学习。。。。先看一张图:

b4d505624e4a4b0354388a75f15e4a4b.png 

看到那个按电源键挂断电话吧,那就是我所添加的,本来原生源码中是没有这一栏的。。。。。

大概思路:

首先我先添加这一个checkboxPreference,然后将是否选择这一功能的值(0和1)存到data/data/com.android.providers.settings

/databases/settings.db数据库的system表中

,然后再根据数据库表中的值在PhoneWindownManager.java中去处理。

具体过程:

首先找到setting的源码,在源码下我们要找到通话设置,在seting.xml中我们能找到

android:key="call_settings"

settings:icon="@drawable/ic_settings_call"

android:title="@string/call_settings_title">

android:action="android.intent.action.MAIN"

android:targetPackage="com.android.phone"

android:targetClass="com.android.phone.CallFeaturesSetting" />

这个call_settings就是我们在setting(设置)中看到的通话设置,但是我们却不能在settings中的源码中找到关于call_settings的布局文件, 因此我们需要找到它,其实这个布局文件是在package/app/Phone中,也就是在Phone这个app源码的资源文件中。

因此我们在Phone的资源文件下能找到Call_feature_setting.xml文件如下:

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

android:title="@string/call_settings">

android:key="button_fdn_key"

android:title="@string/fdn"

android:summary="@string/sum_fdn"

android:persistent="false">

android:targetPackage="com.android.phone"

android:targetClass="com.android.phone.FdnSetti

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值