Hi Justin, I want the app widget to be displayed when I click on the button at the bottom of the screen There will be an empty screen above the button.
I have implemented the following logic: When the button is clicked, a message is broadcasted. On receiving the broadcast, I am trying to display the app widget onto the empty screen. Is it possible to display the app widget in the "onReceive" function?.... Regards, Anand. On Nov 13, 9:28 am, Justin Anderson <[email protected]> wrote: > What exactly do you mean by launching and starting an AppWidget? > > AppWidgets can't be launched or started... they can be updated. > > On Nov 12, 2009 4:23 PM, "anand" <[email protected]> wrote: > > Hi all, > > I am trying to launch an app widget from another application. > > On click of a button in an application, the appwidget is receiving the > message i broadcasted. > > I have implemented the appwidgetprovider class. > In the appwidgetprovider class, in the onReceive function i am able to > get the broadcasted message. > > My broadcast file is: > > package com.example.broadcast; > > import android.app.Activity; > import android.content.Intent; > import android.os.Bundle; > import android.util.Log; > import android.view.View; > import android.widget.Button; > > public class broadcast extends Activity implements > View.OnClickListener { > /** Called when the activity is first created. */ > > public static final String ACTION_UPDATE_WIDGET = > "Broadcast_Message"; > public static final String MESSAGE = "message"; > > public void onClick(View v) { > sendBroadcast(); > } > > �...@override > public void onCreate(Bundle savedInstanceState) { > super.onCreate(savedInstanceState); > setContentView(R.layout.main); > > Button start = (Button) findViewById(R.id.button); > start.setOnClickListener(this); > > } > > private void sendBroadcast() { > Log.i("test", "send broadcast"); > Intent broadcast = new Intent(this, receiver.class); > broadcast.putExtra(MESSAGE, "Bye"); > broadcast.setAction(ACTION_UPDATE_WIDGET); > sendBroadcast(broadcast); > Log.i("test", "after send"); > } > > } > > My appwidget class is as follows: > > package com.example.broadcast; > > import android.appwidget.AppWidgetHost; > import android.appwidget.AppWidgetManager; > import android.appwidget.AppWidgetProvider; > import android.appwidget.AppWidgetProviderInfo; > import android.content.Context; > import android.content.Intent; > import android.util.Log; > import android.widget.Toast; > > public class receiver extends AppWidgetProvider { > > public void onReceive ( Context context,Intent intent ){ > > //super.onReceive(context,intent ); > String action = intent.getAction(); > String message=""; > //String packagename=""; > int appwidgetid; > > Log.i("test", "message received"); > > if( "Broadcast_Message".equals ( action ) ) { > > //String message; > Toast.makeText( context, "Broadcast > sucessfull...", > Toast.LENGTH_LONG).show(); > > if ( intent.hasExtra(broadcast.MESSAGE)) { > > message = (String) > intent.getCharSequenceExtra(broadcast.MESSAGE); > Toast.makeText( context, message, > Toast.LENGTH_LONG).show(); > } > message = message+"in the for loop"; > > updateSampleWidget( context, appWidgetManager, > 1,message ); > > } > > } > > private void updateSampleWidget(Context > context,AppWidgetManager > appWidgetManager, int widget, String text) { > > Log.i("test","In the update sample widget function"); > RemoteViews views = new RemoteViews > (context.getPackageName > (),R.layout.widget_provider); > > views.setTextViewText(R.layout.widget, text); > //Intent intent1 = new Intent(context, broadcast.class); > //PendingIntent pendingIntent = PendingIntent.getActivity > (context, 0,intent1, 0); > //views.setOnClickPendingIntent(R.layout.widget, > pendingIntent); > //appWidgetManager.updateAppWidget(widget, views); > } > > } > > The widget_provider.xml file contains the appwidget resource file. > The widget.xml file contains a textview element only. > > The updateSampleWidget function is not getting executed. > > Am i doing anything wrong here??? > > My questions are: > 1. Is it possible to start an appwidet from the onReceive function? > 2. Is it possible to start an appwidget from another applicaion by > sending and receiving a broadcast message? > > Can any one help me on this? > > Regards, > Anand > > -- > You received this message because you are subscribed to the Google > Groups "Android Beginners" group. > To post to this group, send email to [email protected] > To unsubscribe from this group, send email to > [email protected]<android-beginners%[email protected]> > For more options, visit this group > athttp://groups.google.com/group/android-beginners?hl=en -- You received this message because you are subscribed to the Google Groups "Android Beginners" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/android-beginners?hl=en

