Android :: Is There Only 1 Main UI Thread Per App Process?
Jul 21, 2010
Are the UI threads for each Activity and Service in an app separate threads, or is there actually 1 underlying UI thread per app that processes the UI message queue for each Activity and Service?
View 2 Replies
May 21, 2009
I am writing an application in which i need to handle messages between the main thread(the deafult UI related thread) and the user created Gamethread.
The requirement is like this.
An activity(say "Activity_X") is setting the view by "setContentView(some "View_Y")". In "Activity_X" i have implemeted "onCreateOptionsMenu()" and "onOptionsItemSelected()" fucntions for creating menus & a switch case for action to be taken on selecting those menus.Menu has items like "resume/pause/zoom/" .
All action to be take on selecting these menus are implemented in "View_Y" in a separate Gamethread by extending "Thread" class.
So whenever a menu is selected in "Activity_X" i need to send a message to "View_Y". And on receiving this ,a particular action/method should be called in View_Y(GameThread).
How can i achieve this using Handlers?Is there any other way of doing this? Please do share with me some code snippets for these.
View 3 Replies
View Related
May 27, 2010
I have a separate thread running to get data from the internet. After that, I would like to update the ListView in the main thread by calling adapter.notifyDataSetChanged(). But it does not work. Any workaround for that?
View 1 Replies
View Related
Jul 16, 2010
The Android doc says "Like activities and the other components, services run in the main thread of the application process." Is the main thread here the same thing as UI thread?
View 3 Replies
View Related
Feb 19, 2010
Can someone advise the am command (for adb shell) to run junit tests in the main thread please? The following shows onStart etc running in the test runner thread. am instrument -w -e class co.uk.telesense. tests.MyTest co.uk.telesense.tests/android.test.InstrumentationTestRunner Ewan Benfield ttp://www.telesense.co .uk tel: 0845 643 5691 (+44 845 643 5691) mob: +44 (0) 77859 26477
View 2 Replies
View Related
Aug 20, 2009
I was define a new thread for a task, but when task is complete, I must to refresh my listview, however I will get the error for just can use main thread to change view,
View 5 Replies
View Related
Oct 12, 2010
There are a lot of Android SDK APIs where callback handlers are registered. For a concrete example, with MediaPlayer you can set an onCompletionListener callback. Will these callbacks be called from the main (UI) thread? If the answer is "it depends", then I'm looking for some general rules for what callbacks will be called from the main thread versus another thread. The SDK documentation doesn't seem to spell it out. (Maybe I missed it) It seems important to know, because if I'm guaranteed main thread callbacks, then I can skip some thread synchronization on data shared between different places in code. If I'm forced to be pessimistic out of ignorance, then I have to write extra synch block code and worry about deadlocks, data integrity, and reduced performance.
View 4 Replies
View Related
Jul 19, 2010
Say that a user clicks on a Button. Is the resulting onClick() function invoked on the main UI thread of the activity?
View 1 Replies
View Related
Nov 16, 2010
I want to cancel a Toast to show the next one. This is the description of the behavious I want, when I select one element in the menu i display a toast from the actuel menu element, but if i switch from one element to an other quickly i'm creating a list of Toast to display. So i need to cancel the previous one but i never succed. This is an extract of my code: public class MainActivity extends TabActivity
private Toast toast; private String toastMsg;
private void toast(){ if(toast!=null){ toast.cancel(); } toast = Toast.makeText(MainActivity.this, toastMsg,Toast.LENGTH_SHORT);
toast.show(); } }
View 2 Replies
View Related
May 9, 2010
I try to make several connection in a class and update the multiple progressbar in the main screen. But I've got the following error trying to use thread in android : Code: 05-06 13:13:11.092: ERROR/ConnectionManager(22854): ERROR:Can't create handler inside thread that has not called Looper.prepare() Here is a small part of my code in the main Activity.
public class Act_Main extends ListActivity
{ private ConnectionManager cm;
public void onCreate(Bundle savedInstanceState)
{ super.onCreate(savedInstanceState);
// Set up the window layout
requestWindowFeature(Window.FEATURE_CUSTOM_TITLE);
setContentView(R.layout.main);
getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE, R.layout.custom_title); }
public void startConnection() { ......
View 5 Replies
View Related
Oct 19, 2010
Curious to know the reason behind not allowing updating UI elements from background thread in Android. Will main thread does something more (probably interacting with framework) after updating the UI elements so that changes can be seen on the screen? Is it the same case with other GUI tool kits?
View 1 Replies
View Related
Feb 18, 2010
Hi, I've noticed that on android, the call to pthread_join does not suspend the calling thread. I've a number (6) of new thread created using pthread_create and pthread_join is called on each thread. But It does not suspend the main (calling) thread. I believe this relates to the port of pthread lib to android.
View 2 Replies
View Related
Feb 7, 2014
I am trying to connect to a database, and I understand that it has to be outside of the main thread but i thought that this is what my code was doing...apparently not because i keep getting the error: android.os.NetworkOnMainThreadException.
package com.example.dbtesting;
import java.sql.*;
import android.os.Bundle;
import android.os.Handler;
import android.os.Message;
import android.app.Activity;
import android.view.Menu;
import android.view.View;
import android.widget.EditText;
import android.widget.TextView;
[code]....
View 1 Replies
View Related
Jun 10, 2010
Are we guaranteed that Application.onCreate() runs in the UI/main thread? I want to assume so but I can't find any information to make me 100 % sure. When I receive a broadcast I want to post a message onto the UI/main thread. Currently I've added a function in my Application class to return a handler (created in it's onCreate), is this a good solution? If not, what would be a better solution?
View 3 Replies
View Related
Mar 3, 2009
My purpose is very simple : each 1second, I want to redraw an object on different place on background. I do not know where my error on this code below. Here is my code:
public class My_View extends View{ private Bitmap mBackground_img;
private Drawable mMoveObject; private int mObjectw,mObjecth; private int Dx,Dy;
private Handler myHandler = new Handler(); private long lasttime;
public My_View(Context context,AttributeSet ats,int ds) {
super(context,ats,ds); init(context);
} public My_View(Context context,AttributeSet ats) { super(context,ats);
init(context); } public My_View(Context context) { super(context);
init(context); } public void change() { invalidate();
} private void init(Context context) {
Resources res = context.getResources();
mMoveObject = res.getDrawable (R.drawable.lander_firing);
mBackground_img = BitmapFactory.decodeResource(res, R.drawable.my_pic);
mObjectw = mMoveObject.getIntrinsicWidth();
mObjecth = mMoveObject.getIntrinsicHeight();
Dx = Dy = 0; lasttime = System.currentTimeMillis() + 1000;
Thread mthread = new Thread(null,doBackground,"Background");
mthread.start(); } private Runnable doBackground = new Runnable() {
public void run() { long now = System.currentTimeMillis();
if(lasttime < now ) { Dx = Dx + 10; Dy = Dy + 10;
lasttime = now + 1000; myHandler.post(change_view);
} } }; private Runnable change_view = new Runnable() {
public void run() { change();
} };
@Override public void onDraw(Canvas canvas) {
canvas.drawBitmap(mBackground_img,0 ,0 , null);
mMoveObject.setBounds(Dx, Dy, Dx+mObjectw, Dy+mObjecth);
mMoveObject.draw(canvas);
} }
View 7 Replies
View Related
Feb 8, 2010
I am trying to start an error-reporting activty if unhandled exception detected. The problem is with exceptions thrown from main thread. Is there any way to start an activity if main thread crashed?
View 3 Replies
View Related
Feb 18, 2010
I have an app with a two threads - main and data loader. When data loader finishes it posts a Runnable object to the main thread (as described in the DevGuide), but it never gets delivered and run. Here's the basic code:
class MyApp extends Application{
public void onCreate()
{LoaderThread t = new LoaderThread();
t.start(); }
private class LoaderThread extends Thread {
public void run()
{ SystemClock.sleep(2000);
boolean res = m_handler.post(m_runnable);
if(res)
Log.d(TAG, "Posted Runnable"); } ............
View 2 Replies
View Related
Aug 13, 2010
In my game when the user completes a stage, I want the main game thread to pause/sleep/wait and a new activity to be launched called StageClear that displays information about points scored etc. After this has been displayed and the user has pressed continue I want the original game thread to resume where it left off. I have tried to implement this but have so far been unsuccessful, probably because I'm new to dealing with multiple threads and also the idea of synchronizing them. I most recently tried to implement a shared package-visible object that could notify after wait was called on itself, but I am getting errors in eclipse so it won't even compile, I think because though the object is declared public in an inner class, it cannot be seen or recognised by my activity elsewhere in a file in the package. I have already built both activities but my issue is getting the main game one to launch the other, and pause whilst it waits for this activity to finish, before the main game thread continues execution.
View 1 Replies
View Related
May 22, 2010
How would I force the current thread to wait until another has finished before continuing. In my program the user selects a MODE from an AlertDialog, I want to halt executing of the program before continuing as the mode holds important configuration for the gameplay.
new AlertDialog.Builder(this)
.setItems(R.array.game_modes, new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
switch (which) {
case 0:
setMode(TRAINING_MODE);
case 1:
setMode(QUIZ_MODE);
default:
setMode(TRAINING_MODE);
break; ............
//continue loading the rest of onCreate();
contineOnCreate(); } })
.create().show();
If this is impossible can anyone give a possible solution?
View 1 Replies
View Related
Apr 26, 2012
I read somewhere that iPhone UI is so smooth because the thread which renders the UI has the REALTIME priority... so is that possible to mod android's UI thread priority?
View 2 Replies
View Related
May 29, 2010
In the code showed as below I create a process dialog for doing some long
operation (in this case waiting 4 seconds). It runs as it should. And shows the "Starting" and "Done" message but when it finishes and I click Button1 again it terminates.
public class main extends Activity { public ProgressDialog dialog = null;
final Handler handler = new Handler(){ public void handleMessage(Message msg){
dialog.dismiss(); TextView tv2 = (TextView) findViewById(R.id.TextView02);
tv2.setText("Done"); } };
Thread runlongjob = new Thread(){ public void run(){
SystemClock.sleep(4000); handler.sendEmptyMessage(0);
} };
/** Called when the activity is first created. */
@Override public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState); setContentView(R.layout.main);
} public void clickhandler(View v){ switch(v.getId()){
case (R.id.Button01): TextView tv1 = (TextView) findViewById(R.id.TextView01);
tv1.setText("Starting...");
dialog = ProgressDialog.show(main.this, "Please wait", "Doing Job...",
true); runlongjob.start(); break; } }
View 2 Replies
View Related
Jul 21, 2010
When you do a Thread.currentThread().getId(), is the resulting thread id scoped per process or scoped to the current Activity/Service?
View 1 Replies
View Related
Sep 8, 2010
Since I got the original 2.2 update for my Droid, whenever I get a new text message and slide down the notification bar and select the new message, it takes me to the main text message window rather than the actual thread to reply to the person. It is really annoying because it requires an extra step. I figured it would be fixed with the second 2.2 update but it didn't. I called Verizon and they called Motorola and nobody knew of the problem so they shipped me out a new phone and it still does it! I am not sure if I am the only one experiencing this or if its normal. It doesn't do it 100% of the time but closer to 90% probably.
View 1 Replies
View Related
May 21, 2010
Sometimes the DDMS in the Eclipse not listing the process.
To do the debug in this condition,
1) Is their any way force the DDMS to list the process?
2) Any command to attach the process from the command line?
View 2 Replies
View Related
Feb 21, 2009
At a certain point in my program, when I'm completely done with my service, my activity executes unbindService() and stopService() -- yet the process persists. I can tell that it persists because I run "ps" in "adb -e shell":
CODE:.............
"adb logcat", I can show you the sequence of events:
ACTIVITY: context.unbindService(serviceConnection);
SERVICE: onUnbind();
ACTIVITY: stopService(serviceIntent); & returns true!
SERVICE: onDestroy();
First, my activity calls unbindService(serviceConnection). According to the documentation, unbindService() will "Disconnect from an application service. You will no longer receive calls as the service is restarted, and the service is now allowed to stop at any time." So that is fine, and it is happening.
Appropriately, we see the onUnbind() call happen on the service side. According to the documentation, onUnbind() is called when "all clients have disconnected from a particular interface published by the service." So this confirms the correct service connection is being passed, and that the service is responding accordingly.
Next, my activity calls stopService(serviceIntent), and returns true. According to the documentation, stopService() does the following: "If there is a service matching the given Intent that is already running, then it is stopped and true is returned; else false is returned." Again, this is happening and returning true.
In response, the service's onDestroy() method is called. According to the documentation, onDestroy() is "Called by the system to notify a Service that it is no longer used and is being removed. The service should clean up any resources it holds (threads, registered receivers, etc) at this point. Upon return, there will be no more calls in to this Service object and it is effectively dead."
At this point I expect the process to disappear from the process table. Yet it remains indefinitely. But why?
Also, the process is so persistent that I can bind to it again, and I see that it is the same exact process responding because the PID (process ID) is the same!
View 4 Replies
View Related
Nov 24, 2010
So, I decided to give Tridents ROM a try about 10-minutes ago.
I used ROM Manager, backed-up my old ROM, then downloaded Velocity 0.2.
Now, my phone will do nothing, it turns on and shows the red Droid eye, then when it's time to go to the home screen I get pop-up after pop-up saying that "The process com.android.phone has stopped unexpectedly. Please try again."
I have no way of getting on my phone at all, what can I do?
View 11 Replies
View Related
Nov 12, 2010
I Just installed a new theme (Live Wire) for my Lithium Mod Rom. Don't know if there is a connection, but when I need to update an app, I get the message something like "process android media process stopped unexpectedly" and it will not allow the update. Everything else works well. I have turned it off for awhile, and have done a battery pull.
View 1 Replies
View Related
May 11, 2010
Every 5 minutes this error pops up "Sorry! the process android.process.acore has stopped unexpectdly. please try again." It doesnt actually close anything. It pops up even when im not in an app. So it's more annoying than anything.
View 3 Replies
View Related
Jul 30, 2010
I'm using Xperia x10 mini. Whenever I try to add a contact to my phonebook, before clicking save this message appears: "The process android.process.acore has stopped unepectedly. Please try again." And I have no other choice but to click "force close"... Another thing is, even though my contacts' names appears in the messages in my inbox, when I click on the phonebook icon, the phonebook is empty...
View 4 Replies
View Related
Feb 1, 2010
Are the processes in android asynchronous? If they are asynchronous then how can we conclude when the activity or process is finished or completed its execution.
View 2 Replies
View Related