我需要(如果可能的话)在我的项目中添加一个能力,当用户在拨号程序中输入##等代码时运行。我不确定这是可能的。目前,当我从应用程序文件夹中将我的应用程序午餐开始时,它只是为了好玩,我想知道我可以用代码进行午餐吗?Android,可以从拨号程序运行应用程序吗?
回答
您可以通过拨号程序启动应用程序活动类,但是您的应用程序应该在后台运行。为此你应该实现一个扩展到BroadcastReceiver的类。请遵循此参考码。
public class Example extends BroadcastReceiver
{
@Override
public void onReceive(Context context, final Intent intent) {
if (intent.getAction().equals(android.intent.action.NEW_OUTGOING_CALL)) {
String phoneNumber = intent.getExtras().getString(android.intent.extra.PHONE_NUMBER);
if(phoneNumber.equals("#1234#")) {
Intent intent1 = new Intent(context , YourActivity.class);
intent1.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(intent1);
}
}
}
}
Priyank接受的答案是正确的。我只是想指出在代码中的一些更正Intent类
@Override
public void onReceive(Context context, final Intent intent) {
if (intent.getAction().equals(Intent.ACTION_NEW_OUTGOING_CALL)){
String phoneNumber = intent.getExtras().getString(Intent.EXTRA_PHONE_NUMBER);
if(phoneNumber.equals("#1234#")){
Intent intent1 = new Intent(context, YourActivity.class);
intent1.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(intent1);
}
}
}
我已经使用过这个功能,但它也会在打开我的应用程序后尝试进行传出呼叫。如何使它实际上不打电话拨打的号码? – Jayce 2015-08-10 17:56:15
@Override
public void onReceive(Context context, final Intent intent) {
if (intent.getAction().equals(Intent.ACTION_NEW_OUTGOING_CALL)) {
String phoneNumber = intent.getExtras().getString(Intent.EXTRA_PHONE_NUMBER);
if (phoneNumber.equals("#1234#")) {
Intent intent1 = new Intent(context, YourActivity.class);
intent1.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(intent1);
setResultData(null);
}
}
}
欢迎,请不要犹豫,解释你的代码。 – 2015-10-23 11:50:44
@Override
public void onReceive(Context context, final Intent intent) {
if (intent.getAction().equals(Intent.ACTION_NEW_OUTGOING_CALL)){
String phoneNumber = intent.getExtras().getString(Intent.EXTRA_PHONE_NUMBER);
if(phoneNumber.equals("#1234#")){
Intent intent1 = new Intent(context, YourActivity.class);
intent1.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(intent1);
setResultData(null);
}
}
}
您发布了相同的答案两次,请删除一个 – 2015-10-23 12:22:39
其实我新。我有一个疑问,我必须把这个代码:
public class Example extends BroadcastReceiver
{
@Override
public void onReceive(Context context, final Intent intent) {
if (intent.getAction().equals(android.intent.action.NEW_OUTGOING_CALL)) {
String phoneNumber = intent.getExtras().getString(android.intent.extra.PHONE_NUMBER);
if(phoneNumber.equals("#1234#")) {
Intent intent1 = new Intent(context , YourActivity.class);
intent1.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
context.startActivity(intent1);
}
}
}
}
欢迎使用Stack Overflow!请参考[游览](http://stackoverflow.com/tour),环顾四周,阅读[帮助中心](http://stackoverflow.com/help),特别是[我该如何问一个好问题?](http://stackoverflow.com/help/how-to-ask)和[我可以问什么问题?](http://stackoverflow.com/help/on-topic)。从第二个环节来看:“提出作业帮助的问题必须包括您迄今为止解决问题所做的工作的总结,并描述您解决问题的难度。”你也必须提供你的问题**作为文字**,而不是图像。 – 2016-12-22 16:12:18
- 1. 我可以在Android 1.5中运行Android 2.0应用程序吗?
- 2. Android拨号器应用程序
- 3. 应用程序卸载后可以运行Android服务吗?
- 4. Linux应用程序可以在Android中运行吗?
- 5. 我可以在android应用程序中运行jdk命令吗?
- 6. 从应用程序拨打Android电话
- 7. winform可以从citrix运行C#应用程序吗?
- 8. 我可以从C#应用程序运行vb脚本吗?
- 9. 是否有可能从android应用程序运行android应用程序?
- 10. 从流星应用程序启动拨号程序
- 11. 以Android应用程序运行流星应用程序
- 12. 我可以在.NET 2应用程序中运行.NET 4应用程序吗?
- 13. 从PC上的Java应用程序拨打Android手机上的拨号号码
- 14. Android应用程序可以从其他应用程序获取信息吗?
- 15. 我可以从我的应用程序中启动android应用程序吗?
- 16. 从应用程序拨打电话时Skype /拨号程序的选项
- 17. 黑莓 - 运行菜单,拨号程序手机应用
- 18. 运行Android应用程序
- 19. 运行Android应用程序
- 20. 运行Android应用程序
- 21. 从android应用程序拨号时显示skype作为选项
- 22. iPhone应用程序可以以root身份运行吗?
- 23. 我可以以运行aspnet应用程序的方式运行Windows Presentation Foundation应用程序吗?
- 24. 从android应用程序运行tcpdump
- 25. 从Android应用程序运行python
- 26. Android - Android 1.6中开发的应用程序可以在Android 2.0中运行吗?
- 27. 当我从Android库运行时,可以配置Eclipse以运行我的Android应用程序项目吗?
- 28. iPhone您可以通过您的应用程序显示拨号界面吗?
- 29. 我可以在android应用程序中运行android测试用例吗?
- 30. 我可以使用Hendrix来运行Falcon应用程序吗?
我已经使用这个,但它也试图打开我的应用程序后打出去。如何使它实际上不打电话拨打的号码? – Jayce 2015-08-10 17:55:10