Android: Make a phone call from the home screen widget

I have a widget, and I want it to make a phonecall on a specific number when the user clicks on the widget. How can I do it? Please, help.

+4
source share
2 answers

I managed to get it to work with this code:

@Override public void onUpdate(Context context, AppWidgetManager appWidgetManager, int[] appWidgetIds) { Log.d(LOG_TAG, "onUpdate(): "); for (int appWidgetId : appWidgetIds) { Intent callIntent = new Intent(Intent.ACTION_CALL); callIntent.setData(Uri.parse("tel:"+number)); PendingIntent pendingIntent = PendingIntent.getActivity(context, 0, callIntent, 0); // Get the layout for the App Widget and attach an on-click listener to the button RemoteViews views = new RemoteViews(context.getPackageName(), R.layout.caller); views.setOnClickPendingIntent(R.id.callButton, pendingIntent); // Tell the AppWidgetManager to perform an update on the current App Widget appWidgetManager.updateAppWidget(appWidgetId, views); } } 
+7
source
  public static Intent newPhoneCallIntent(String phoneNumber){ Intent callintent = new Intent(Intent.ACTION_DIAL); callintent.setData(Uri.parse("tel:"+phoneNumber)); return callintent; } startActivity(newPhoneCallIntent("5555555555")); 
+4
source

All Articles