Android :: Register Get / Set Hooking Callback Function At Class
Apr 7, 2010
I release a class. In the class, there are public fields that can be written. I want to register the callback function which will be called right after my field is accessed. I think I can do that by using JVM tool interface which is supposed to be used for a debugger software. JVM tool interface:
I'm not sure same interface is working on android. or, They provide another form of interface to get a notification of a field access.
View 2 Replies
Mar 5, 2010
I was trying to find out were my apps memory was being leaked and was able to discover that when calling registerCallback(...) it would lead to a memory leak after a screen orientation change. What could be some possible things that are causing the leak? I've tried many things. And I do have a unregisterCallback(..) call.
View 20 Replies
View Related
Feb 12, 2009
I'm an experienced C++/Java dev who has been truly enjoying that past two days of getting neck deep into the Android SDK. I can foresee a lot of sleepless nights ahead Now, being arrogant due to experience (lol) I basically wrote a hello world Activity, got it to work and promptly decided to write an out of process service with accompanying client for project #2. Android is so well thought out (if not exactly documented although that's an 'over time' issue inmho) that I had basically implented everything but callbacks into the client before realizing (and feeling like a total idiot) that there's a very nice example called RemoteService (lol @ me - again) Basically, this validated everything I'd been doing, although I did notice that because my client is in its own project and namespace and my service is in another project and namespace (but the same Eclipse workspace) that I had to have the service entry in my service's manifest AND my client's manifest (that one took me a while to figure out) in order to bind on the service. Anyhow, everything's great, I am starting to love on Android (figuratively) but I've run into <BRITISH-NESS>a bit of a sticky wicket, eh, wot?</BRITISH-NESS>.
When my client Activity binds on my service (which is running in its own process) and calls the equivalent of 'registerCallback', the interface is added perfectly to the RemoteCallbackList object and I can immediately (right on the next line of code) use the interface to send a notification to the client. Now, my problem is that when my main service thread tries to pull the interface out of the RemoteCallbackList via the broadcast methods, the RemoteCallbackList is always 'empty' - it returns 0 from beginBroadcast. After double checking ensure that I AM actually adding it to the list (because I've been a collossal idiot before) and that I am getting success back from 'register', I immediately think it's a threading issue, so: I add logging code to the service in key places to log what the thread id is repeatedly, and I think "uh, I think I need to use a handler of some sort to make the call back in the thread that handled the registration" and to double check I call beginBroadcast right after 'register' and find that it always returns back the correct number of callback interfaces. So it VERY much appears to be a threading issue (to me) so now I'm a bit stuck I've written a handler so that my main service thread can request the correct thread to actually call 'beginBroadcast' and then thought 'how is it going to know what thread that is...?' and instead am now thinking I need to pass, via a handler or something, the incoming interface from the thread that runs when the client calls the equivalent of 'registerCallback' to my main service thread. What part of the proper paradigm am I missing? BTW, as an example of the thread IDs, my main service thread is #1, the runnable I use for tasks in the main service thread shows an ID of #1, the message handler I was thinking I could use, shows an ID of #1, but the thread ID I get in my code in the service that runs when the user registers their callback is #7.
If I plan to notify clients when the service notices something it thinks they need to know, do I need to notify (somehow) the clients via the thread with ID #7 or do I need to pass the interface I get when the user registers their callback from thread #7 to thread #1 and call 'register' on the RemoteCallbackList from thread #1? Sorry for the verbosity but I figured more is better than less. Again, everything works great except this one little part.
View 9 Replies
View Related
Sep 13, 2010
In Java, is it possible to associate some object (i.e. a String) with a function to be called ? I have two similar menus and both have a onClickListener with some code like this: Code...
View 4 Replies
View Related
Sep 15, 2009
firstly I save JVM pointer in a native function which called when ap lauched:
CODE:.......................
View 3 Replies
View Related
Aug 18, 2010
I have an activity class(Application Class ) which calls a service class(Service Class) and closes. The service class takes about 5 seconds to complete its task and calls a method which is present in another class(Callback Class). Now according to the result, the callback needs to notify the Application class.Once i get the callback from the service, I tried calling a method defined in the Application class. In this method i create a new intent of Application class and call startActivity(Application Class). But this is not working. Can anyone tell where i am going wrong and what can I do to solve this issue.
View 5 Replies
View Related
Feb 15, 2010
My Android Java Application needs to record audio data into the RAM and process it. This is why I use the class "AudioRecord" and not the "MediaRecorder" (records only to file).
Till now, I used a busy loop polling with "read()" for the audio data. this has been working so far, but it peggs the CPU too much. Between two polls, I put the thread to sleep to avoid 100% CPU usage. However, this is not really a clean solution, since the time of the sleep is not guaranteed and you must subtract a security time in order not to loose audio snippets. This is not CPU optimal. I need as many free CPU cycles as possible for a parallel running thread.
Now I implemented the recording using the "OnRecordPositionUpdateListener". This looks very promising and the right way to do it according the SDK Docs. Everything seems to work (opening the audio device, read()ing the data etc.) but the Listner is never called.
I am working with a real Device, not under the Emulator. The Recording using a Busy Loop basically works (however not satifiying). Only the Callback Listener is never called.
Here is a snippet from my Sourcecode:
CODE:.........................
View 2 Replies
View Related
May 28, 2010
I have one Application class to keep the global state of my application. But I'm unable to register it in Manifest file? Any idea how to do this?
View 1 Replies
View Related
Feb 15, 2010
My Android Java Application needs to record audio data into the RAM and process it. This is why I use the class "AudioRecord" and not the "MediaRecorder" (records only to file).
Till now, I used a busy loop polling with "read()" for the audio data. this has been working so far, but it peggs the CPU too much. Between two polls, I put the thread to sleep to avoid 100% CPU usage.
However, this is not really a clean solution, since the time of the sleep is not guaranteed and you must subtract a security time in order not to loose audio snippets. This is not CPU optimal. I need as many free CPU cycles as possible for a parallel running thread.
Now I implemented the recording using the "OnRecordPositionUpdateListener". This looks very promising and the right way to do it according the SDK Docs. Everything seems to work (opening the audio device, read()ing the data etc.) but the Listner is never called.
I am working with a real Device, not under the Emulator. The Recording using a Busy Loop basically works (however not satifiying). Only the Callback Listener is never called.
Here is a snippet from my Sourcecode:
CODE:...............................
View 3 Replies
View Related
Apr 20, 2010
I have a SMSReceiver class that needs to pass the phone number and message to another class. Which works but when I call that class I need the function to read preference to compare if it needs to execute another function.
View 2 Replies
View Related
Aug 28, 2009
I'm trying to pop up an AlertDialog when someone long presses a list item.What I end up with is nested callback objects.I'm not sure if that is the problem but simple Alert dialog examples are not working for me.
View 3 Replies
View Related
Apr 26, 2014
I am trying to call the setSearch function from UrlBuilder Class, but for some reason I get an error asking me to set my class as static. That's not what I want to do with this class.
[HIGH]package com.KarneeKarnay.gamefinder;
import android.os.Bundle;
import android.app.Activity;
import android.view.KeyEvent;[code]....
View 3 Replies
View Related
Jul 6, 2010
My point is to be able to call a 2.1 API if it exists, while the application should be able to run in 1.5
Specifically, I am making a GPS application which would like to call android.location.LocationManager.addNmeaListener if available. My problem is that this call takes as parameter an abstract class (GpsStatus.NmeaListener) which I cannot pass directly to Class.GetMethod (or my application won't work in 1.5). What I am currently trying is a) to create a wrapper class for GpsStatus.NmeaListener:......................
View 2 Replies
View Related
Jun 28, 2010
i have a 00 grand am, how do i hook up my eris to the stereo? where can i buy an adaptor and do i plug it in where my cigarette aux port is?
View 2 Replies
View Related
Sep 29, 2011
I need to take pictures with my application, but the only thing I am finding are examples of how to create a camera activity. Is there a way I can call up the phones native camera instead and get the byte[] data back instead of creating a camera activity myself?
I am asking because I would like to take advantage of the normal features like zoom, flash, themes, etc that the user would get if they push the camera button on their phone.
View 1 Replies
View Related
May 15, 2013
I just came across this WhatsApp widget for Root which is able to display recent messages. I was wondering how the developers managed to get the data from WhatsApp.
As of now, I can think of three possible ways:
a) The widget refreshes its contents whenever it detects activity on the WhatsApp message database.
b) The widget "hooks" methods that get called in one of WhatsApps activities when new messages arrive and mirrors the messages into its own database.
c) The widget listens for push messages with the WhatsApp signature or listens for traffic between WhatsApp and their servers.
I use the termin "hooking" because of the way iOS tweaks are written, I have no idea if this is possible on Android. Which way is more likely?
Let me elaborate on the background of my question: I noticed that WhatsApp groups new messages as a single item in the notification window. I'm thinking about selling my iPhone and getting an Android phone, but I would like to have a preview of all incoming messages like iOS's notification center.
View 1 Replies
View Related
Jun 10, 2010
I hope this question hasn't been addressed before; I've tried searching google but I may not be searching with the right keywords:
My Droid (running NexFro 1.01 - about to install BB with NexFro in ~20 mins) has been automatically mounting my SD card to my PC since installing Froyo last Saturday. I didn't have this feature enabled before flashing to Froyo, and I've tried a few roms since Saturday and they all have this feature auto-enabled.
This normally wouldn't be an issue, but this week I have been traveling with my job and I have been using tethering quite a bit, and would like to be able to charge my phone from my laptop without mounting my SD card every time.
Is there a way to disable this feature? Also I'm not sure that it is a feature at this point, as I haven't seen any other forum posts about this one any of the Android forums and I can't be the only person who doesn't want this feature enabled by default.
View 10 Replies
View Related
Jul 7, 2010
I'm creating a new class, using eclipse "New Java Class" dialog box. I can write the superclass I want (I can't find using "browse" button), but I can't write or select an interface to implement. I click "add" but ther is nothing to select. What I'm doing wrong?
View 4 Replies
View Related
Jul 14, 2010
I'm just getting into Android development, and I have a question about communicating between a receiver class and an activity class. I'm very new to JAVA and Android so I hope I don't sound too stupid. I'm developing an application where I intercept an SMS message and then based on various elements of that SMS I might delete it once it's been saved to the inbox. I have a receiver class that intercepts the txt message, and I am also able to delete messages from my inbox with code in the activity class using a button at the moment. The problem I have is communicating between the receiver class and the activity class where the code to delete a message resides. I tried putting that code directly into the receiver class but as I'm sure most of you already know the BroadcastReceiver class doesn't seem to support what I need to delete messages. I've been searching for an answer to this for a while, but haven't been able to find anything. Honestly I'm not sure I know enough about JAVA and Android to even recognize a solution if I saw it.
View 2 Replies
View Related
Jun 27, 2010
What I want to do, is be able to access the object neoApi inside the Neoseeker class, from its inner class RunningTimer. Now, in my code, you can see what I would think to work, but when I run my application, nothing pops up. Nothing inside my TextView, no Toast, nothing at all. How can I remedy this?
package com.neoseeker.android.app;
import java.util.Timer;
import java.util.TimerTask;
import org.json.JSONObject;
import android.app.Activity;
import android.app.Notification;
import android.app.NotificationManager;
import android.app.PendingIntent;.......................
View 1 Replies
View Related
Sep 8, 2010
I'm new to Java and android development. In my application I need data which is accessible for a few activities. I've read that a good solution is to use Application class for this. So I use it like this:
public class MyApplication extends Application {
private String str;
public String getStr(){
return str;
}
public void setStr(String s){
str = s;
}
}
and I can access this variable from activity like this:........................................
View 2 Replies
View Related
Oct 8, 2010
I have just started android. I just want to know that how can i call activity class from other java class. i just want to pass class object to activity class.
public class GsonParser extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
MagazineThread thread=new MagazineThread();
thread.start();
}
public GsonParser(JsonMagazineParser Obj)
{
}
}
and i am just doing like from other class. GsonParser obj=new GsonParser(this);passing obj to activity class.how can i achieve that.
View 1 Replies
View Related
Apr 23, 2010
In my app in one package there are some classes. from those classes i want to run one class that is the Gps functionality class. i want to run that class in background. how i do it, i don't know. i am not able to make it solve from any document. if anybody knows the way to solve it please me by run a "hello world" app in the background. i am not able to solve this problem by going through document.
View 2 Replies
View Related
Jul 20, 2010
I'm building a small Android application, but this is more of a Java question than an android question. Looking through the tutorials there are lines that look like: startService(new Intent(this, MyService.class));
What exactly does the "MyService.class" field represent? Is that just a reference to the class for a template?
View 4 Replies
View Related
May 19, 2009
I made a Dialog Class with it's view classI want to pop up the dialog when I got some packets from network. so I made a Thread which parses packets and then I made if clause in Run() method There is no problem with parsing packet but when I enter "if clause" and call showDialog() I got Error message
Is there anyone who knows how to pop up a dialog from different thread?
View 2 Replies
View Related
Aug 28, 2010
I am implementing a context menu for my main activity.
I have some XML to define the items:
CODE:...............
I have this code to create the menu:
CODE:.................
When I click the menu button, my context menu appears with the appropriate items and icons. When I select a menu item, I don't get the callback.
View 1 Replies
View Related
Jul 6, 2010
I'm having trouble getting the GPS's onLocationChanged to run on a different thread. I understand how to manage UI thread when I'm calling a function but with the GPS, I don't actively call the function.
My intent is to have a light flash every time the GPS receives a reading. I have put this function in a Runnable. I passed this function to a class that implements LocationListener. Then in the main class, I started a new thread that calls requestLocationUpdates. I was hoping that onLocationChanged of the LocationListener would run in a different thread, post to the callback and make the necessary UI effects in the UI thread. Unfortunately, the program crashes every time it tries to call requestLocationUpdates. What's the proper way of doing it?
Right now it looks something like this
Main class:
CODE:................
LocationListener class:
CODE:...............
The exception says Can't create handler inside thread that has not called Looper.prepare()
View 3 Replies
View Related
Aug 31, 2010
I have been watching the Google I/O presentation by Virgil Dobjanschi on the correct way to implement REST on Android with services and content providers. http://code.google.com/events/io/2010/sessions/developing-RESTful-android-apps.html
Based on the video I'm doing things the wrong way, which is not surprising given how hard the right way is. Anyway, having been shown the promised land in the video I'm having a bit of a problem figuring out how to get there.
I have most of it nailed but the one thing that's defeating me is the Binder Callback that Virgil references in the slides (see link above), on page 43 it shows step 2 as starting the service with startService( intent ) and step 10 as returning status information using a Binder Callback. There is no example code anywhere in the presentation which is rather frustrating. There is talk of open sourcing the Twitter client which apparently uses this approach but nothing yet and the announcement was in April.
In the video he states: "What is a binder callback? A binder callback, think of it as an interface that was passed in the request intent."
I have searched all over the place but have not been able to find any doc or examples that show how to pass a callback as part of an intent. Nor can I figure out any other way of passing in a callback.
I thought he may be referring to binding to the service and implementing the callback that way. However, he is specifically referring to a local service and using strarSerice() and not bindService(). Also with bindService() the service will be destroyed if the activity is destroyed which defeats the idea. The workaround is to use startService() and then bindService() and leave the service running for the duration. The other problem with bindService() is that the callback can not be use until onServiceConnected() completes which complicates the code even further as the action instructions can not be passed in the intent because the return callback may not be in place in time to return the results.
View 1 Replies
View Related
Jan 13, 2010
Our application will expose a Service that can be called by Activities in other people's applications.In many cases, the parent applications calling Activity may be paused before our Service completes. I am looking for the best way for a Service to communicate back to the calling Activity that may have been paused.These are the known options:
(1) Require calling Activities to have a registerReceiver() with a custom action and broadcast to that from our Service. The only way to secure this registerReceiver() is with a signature-based permission.As our Service communicates with any number of unknown 3rd party apps,we can't sign our Service's parent app with all these unknown certificates. These apps would therefore be exposing an unsecured registerReceiver() on their Activity. Would ideally like to avoid requiring this.
(2) Create a PendingIntent to send results back to the activity and give it to our Service. Our Service would send data to calling Activity's onActivityResult(). Each time the result is delivered, the calling Activity will go through onPause() and onResume() but this should be OK.
(3) The calling Activities could create a Handler. The Activity would then create a Messenger pointing to that Handler and send it to our service. Our Service can then use the Messenger to deliver our message back to the calling Activity.
View 2 Replies
View Related
Apr 2, 2010
in android application development, i frequently go through the word "CALLBACK" in many places. i want to know want it means to tell us technically. and how i can manage the callback of the applications.
View 2 Replies
View Related