【问题标题】:Make Android app appear in list of default applications?让 Android 应用程序出现在默认应用程序列表中?
【发布时间】:2012-01-27 15:09:13
【问题描述】:

我有一个“电话”应用程序的源代码,它可以拨打号码并拨打电话。当有人选择任何“电话”快捷方式时,如何使其在可用应用程序列表中可见?

我尝试实现动作意图过滤器android.intent.action.CALLandroid.intent.action.CALL_PRIVILEGED,但它只在我拨打号码后在列表中显示我的应用程序。换句话说,我的应用被归类为拨号器而不是电话。

我需要实施任何特定的BroadcastReceiver 吗?我该怎么做?

【问题讨论】:

  • 哇,它成功了。正是我所希望的。非常感谢:)

标签: android eclipse android-intent broadcastreceiver


【解决方案1】:

我相信this 的答案可能就是您想要的。所以本质上,您首先需要在要进行调用的活动上设置一个意图过滤器(在AndroidManifest.xml 中):

<intent-filter>
    <action android:name="android.intent.action.CALL" />
    <category android:name="android.intent.category.DEFAULT" />
    <data android:scheme="tel" />
</intent-filter>

这应该让您的用户在拨打电话时可以选择使用您的应用,类似于csipsimple 的工作方式。

【讨论】:

  • 我已经这样做了。但是,这样做会在拨号器应用程序列表中显示我的应用程序,而不是电话应用程序。我的应用程序只包含一组数字按钮和一个文本视图。用户输入号码并单击呼叫按钮,然后触发 ACTION_CALL 意图来呼叫该特定号码。如果我为 android.intent.action.CALL 添加过滤器,那么当我在我的应用程序中按下呼叫按钮时,一个列表与股票拨号器和我的应用一起出现..
【解决方案2】:

好吧,因为我的评论是 OP 要求的,所以我在这里复制它。

“您是否尝试过 CALL_BUTTON(作为清单中的意图过滤器)?”

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-03-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-02-11
    • 1970-01-01
    • 2016-01-10
    • 2011-11-14
    相关资源
    最近更新 更多