相关疑难解决方法(0)

系统重启后,在广播接收器中显示警告对话框

美好的一天,我试图在广播接收器中重新启动系统后显示一个警告对话框.我在清单中添加了接收器并调用了所需的权限,但在显示对话框时出错.请问我怎样才能正确实现这一点?...谢谢

我的代码:

public void onReceive(final Context context, Intent intent) {
    Log.d(TAG, "received boot completed broadcast receiver... starting settings");


    String settings = context.getResources().getString(R.string.restart_setting);
        String yes = context.getResources().getString(R.string.Settings);
        String no = context.getResources().getString(R.string.Cancel);

              final AlertDialog.Builder builder = new AlertDialog.Builder(context);
                builder.setMessage(settings)
                       .setCancelable(false)
                       .setPositiveButton(yes, new DialogInterface.OnClickListener() {
    public void onClick(@SuppressWarnings("unused") final DialogInterface dialog, @SuppressWarnings("unused") final int id) 
   Intent config = new Intent(context, WeatherConfigure.class)
     context.startActivity(config);

    }
 })
    .setNegativeButton(no, new DialogInterface.OnClickListener() {
        public void onClick(final DialogInterface dialog, @SuppressWarnings("unused") final int id) {
             dialog.cancel();
        }
    });
  final AlertDialog …
Run Code Online (Sandbox Code Playgroud)

android

31
推荐指数
4
解决办法
7万
查看次数

在来电屏幕上弹出

我想在Android的来电屏幕上创建一个自定义弹出窗口,我希望为用户添加信息.我希望弹出窗口不会禁用后台的任何可点击性,以便用户仍然可以接听电话.

我知道有很多应用可以做到这一点,例如MeZeZe app: 在此输入图像描述

更多信息:

  1. 半透明主题不起作用,因为它取消了前一个活动的可点击性.
  2. 吐司不是一个选择 - 我不希望它消失.
  3. 我知道有很多类似的线程 - 我读了很多相似的线程,没有人回答我的具体问题.
  4. 一旦呼叫是接收者,我已经知道如何"让事情发生",所以不需要INCOMING_CALL活动提示.

非常感谢任何帮助!谢谢

android dialog popup toast android-layout

17
推荐指数
1
解决办法
1万
查看次数

如何实现像truecaller这样的对话框

我正在尝试实现类似于真正的来电者的应用程序,当电话响铃使用广播接收器并打开MyCustomDialog活动时,我能够获取电话号码

这是我的接收器类,通过它我可以获得呼叫开始或结束的呼叫状态.在这里,我制作了一些我在CallReceiver.java中使用的 方法

PhonecallReceiver.java

import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.telephony.TelephonyManager;
import java.util.Date;

public abstract class PhonecallReceiver extends BroadcastReceiver
{
    private static int lastState = TelephonyManager.CALL_STATE_IDLE;
    private static Date callStartTime;
    private static boolean isIncoming;
    private static String savedNumber;

    @Override
    public void onReceive(Context context, Intent intent)
    {
    try
    {
        if (intent.getAction().equals("android.intent.action.NEW_OUTGOING_CALL"))
        {
            savedNumber = intent.getExtras().getString("android.intent.extra.PHONE_NUMBER");
        }
        else
        {
            String stateStr = intent.getExtras().getString(TelephonyManager.EXTRA_STATE);
            String number = intent.getExtras().getString(TelephonyManager.EXTRA_INCOMING_NUMBER);
            int state = 0;
            if(stateStr.equals(TelephonyManager.EXTRA_STATE_IDLE))
            {
                state = TelephonyManager.CALL_STATE_IDLE;
            }
            else if(stateStr.equals(TelephonyManager.EXTRA_STATE_OFFHOOK)) …
Run Code Online (Sandbox Code Playgroud)

android android-notifications android-activity

16
推荐指数
1
解决办法
7767
查看次数

如何在android中修改传入和传出的调用屏幕视图

我想根据我的选择修改下面的屏幕.

我不知道如何访问这个屏幕.

在此输入图像描述

我也需要修改这个屏幕

在此输入图像描述

请帮我这样做.

android popup broadcastreceiver android-layout telephonymanager

10
推荐指数
1
解决办法
3万
查看次数

从我自己的应用程序提供来电的来电显示

我想编写一个应用程序,通过查看我的应用程序中的表(例如SQLite数据库表)来识别传入(未知)调用的电话号码.

我已经使用呼叫目录扩展在iOS中实现了这一点,但对于Android,我能找到的唯一选项是使用带有弹出窗口BroadcastReceiver来显示本地来电屏幕以显示联系信息.

ContactsContract.Directory似乎提供了创建自定义目录的可能性,其中本机调用应用程序可以查找调用者ID.不幸的是,我找不到任何关于如何实现这一目标的好例子.

有没有人知道是否可以使用ContactsContract.Directory实现调用者ID,或者Android中是否存在与Android中的呼叫目录扩展相似的内容?如果是这种情况,示例代码将非常有用.

android contacts ios android-contentprovider ios-extensions

9
推荐指数
1
解决办法
651
查看次数

来电屏幕上的弹出窗口,如truecaller

我试图在来电屏幕上添加弹出窗口作为真正的调用者但无法实现.我知道这背后的逻辑是什么以及我如何实现这一点

  public void onReceive(Context context, Intent intent) {

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


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

}
Run Code Online (Sandbox Code Playgroud)

android

2
推荐指数
1
解决办法
8503
查看次数