gpt4 book ai didi

java - 手机响铃时如何查看

转载 作者:行者123 更新时间:2023-12-01 12:32:00 29 4
gpt4 key购买 nike

我想自定义电话铃声 View 并显示和显示 TextView 。现在如何访问该 View 并自定义它?或者如果我无法访问它我可以做什么来在该 View 中显示 TextView ?

最佳答案

您需要创建一个应用程序,并在 Activity 中扩展 BroadcastListener 服务,并为该 Activity 提供您想要的布局1)在AndroidManifest.xml中声明广播接收器

     <receiver android:name=".MainActivity">   
<intent-filter>
<action android:name="android.intent.action.PHONE_STATE" />
</intent-filter>
</receiver>

还有这个权限

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

您的主 MainActivity.java 应该类似于此文件

    public class MainActivity extends BroadcastReceiver {

public void onReceive(Context context, Intent intent) {

try {
// TELEPHONY MANAGER class object to register one listner
TelephonyManager tmgr = (TelephonyManager) context
.getSystemService(Context.TELEPHONY_SERVICE);

//Create Listner
MyPhoneStateListener PhoneListener = new MyPhoneStateListener();

// Register listener for LISTEN_CALL_STATE
tmgr.listen(PhoneListener, PhoneStateListener.LISTEN_CALL_STATE);

} catch (Exception e) {
Log.e("Phone Receive Error", " " + e);
}

}

private class MyPhoneStateListener extends PhoneStateListener {
public void onCallStateChanged(int state, String incomingNumber) {

Log.d("MyPhoneListener",state+" incoming no:"+incomingNumber);

if (state == 1) {

String msg = "New Phone Call Event. Incomming Number : "+incomingNumber;
int duration = Toast.LENGTH_LONG;
Toast toast = Toast.makeText(pcontext, msg, duration);
toast.show();

}
}
}

}

此代码将在接到电话时显示一个Toast,您可以根据需要更改布局文件和显示。

关于java - 手机响铃时如何查看,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25862705/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com