[Q] Debug/Disassemble Running Process - Android Q&A, Help & Troubleshooting

Hi All,
I have googled this issue and searched the forums, forgive me if I haven't followed the rules (which I have read).
I have a premium app (not mine, 3rd parties), i am not looking to hack it, I have bought it.
I am trying to work out how it does some background calculations with not much luck, it uses ( I am led to believe the NDK was used, so can't be decompiled in the usual way, it has a .so library and the decompiled java doesn't show much.).
So my thought have been turned to the asm of it, and I was wondering if there was a way to attach a debugged to a running android process and be able to disassemble that running process so I can "watch" the calculation happen.
I have a rooted android device, and like I say own the game.
I believe in the iOS world with xcode and a JB device you'd would need to attach a debugger to a running process, then put a hardware watchpoint on the offset you know is the value you need then you continue, do something in the game to trigger reading that value.
I just can't find anything similar for android.
Any help would be appreciated.

If this isnt the right place to ask a question like this can anyone point towards the right place?

Related

[Q] Interfacing with a java application

I'm developing a touch screen based system for controlling electronic music. As part of the development, we'll be building our own touch screen, but that's not going to be ready for some time. In the mean time, I need to start writing the software (which will be done in java), and I'm going to need a touch screen to use for testing.
So, I am NOT trying to write an application for the Galaxy Tab. I am writing a application that runs on the my desktop, and I'd like it to be able to get touch information from the Galaxy, in any way practical. I've looked into using an iPad for this, but it looks to be too much of a pain to be worth it. All I need is a way of my java application receiving the list of co-ordinates of touches from the tab, in real time. I don't need any higher level gesture interpretation (as I'll have to do that on my end for the final system anyway), just all the touch co-ordinates. Does anyone have a suggestion on the best way to go about this? Is there something in existence already to accomplish this easily, or is there any kind of java library I can use to make calls to a connected tab from my application? I've been googling around, but haven't found any particularly useful information on the subject, as the tab is chiefly meant to be a stand-alone item, not a pc peripheral. Any tips on where I might start looking would be a huge help. Thanks!
-cullam
cullambl said:
I'm developing a touch screen based system for controlling electronic music. As part of the development, we'll be building our own touch screen, but that's not going to be ready for some time. In the mean time, I need to start writing the software (which will be done in java), and I'm going to need a touch screen to use for testing.
So, I am NOT trying to write an application for the Galaxy Tab. I am writing a application that runs on the my desktop, and I'd like it to be able to get touch information from the Galaxy, in any way practical. I've looked into using an iPad for this, but it looks to be too much of a pain to be worth it. All I need is a way of my java application receiving the list of co-ordinates of touches from the tab, in real time. I don't need any higher level gesture interpretation (as I'll have to do that on my end for the final system anyway), just all the touch co-ordinates. Does anyone have a suggestion on the best way to go about this? Is there something in existence already to accomplish this easily, or is there any kind of java library I can use to make calls to a connected tab from my application? I've been googling around, but haven't found any particularly useful information on the subject, as the tab is chiefly meant to be a stand-alone item, not a pc peripheral. Any tips on where I might start looking would be a huge help. Thanks!
-cullam
Click to expand...
Click to collapse
Ok, well I'm going to try and be brief and not turn this into an Android programming essay so here goes.
You have a couple of different routes you can take.
1. If you use eclipse for development and you hook up your tablet, you can watch the log and see that it prints useful information constantly, basically debug output that tells you whats going on in the background. If you just want to look at it, you can probably see it there.
2. This would be my choice, but I'm a programmer so I love a new adventure. I would recommend you just write a quick app for your tablet that pumps out the location of a touch whenever you touch the screen. If you are familiar with sockets and such, you can just write a simple server Java app that collects packets of data from your tablet, and just have the tablet send out a multicast packet containing the coordinates you touch every time you touch the screen.
There are probably some other ways, but if you are already going to be doing the bulk of the project in Java, you aren't looking at a difficult learning curve to write a basic little android app.
Thanks! I'll definitely try the eclipse trick. And yeah, writing an app on the tab is probably going to be necessary, but MUCH easier than having to learn a new language, and get an official license to do one on the iPad. The thing I'm really unsure about is the available communication methods for getting data back and forth between them. I was hoping there might be some sort of java api to get calls going through the usb connection. So I'll guess I'll see what the Eclipse hook up shows me.
cullambl said:
Thanks! I'll definitely try the eclipse trick. And yeah, writing an app on the tab is probably going to be necessary, but MUCH easier than having to learn a new language, and get an official license to do one on the iPad. The thing I'm really unsure about is the available communication methods for getting data back and forth between them. I was hoping there might be some sort of java api to get calls going through the usb connection. So I'll guess I'll see what the Eclipse hook up shows me.
Click to expand...
Click to collapse
apple stuff is crap anyways, leave them to their pretentious commercials and closed minded development.
as far as the android sdk, I think it will take you a lot less time to just use network communications. google socket client/server java tutorials and you should be set to go in about 2 hours. I have implemented it, its all straight forward, and imho probably an easier app to write that something that pumps out of the usb port
Awesome, thanks

Physics Projection Calculator, Problems.

I am developing my first android app, I have been studying javascript for a few months, and have manged to get it down pretty well, along with creating some fair applications with it.
This is my first android application, and please take into account that i started it less then 5 hours ago. Ill post on this thread whenever I run into problems to hopefully get some help.
Here is my aplication currently:
(attached)
nothing actually "does anything" right now, except the button its just a XML screen and a splash screen really.
Here is a project i did in JDK which i am trying to "Mimick":
The first problem i am having right now is that the background that i am trying to put on to my application is not showing up in the XML properties "Background" under drawable. The Background is saved in all 3 of the draw able folders under rec. Whenever i try to add the background manually with code i get this error.
Failed to convert @drawable/background3 into a drawable
Couldn't resolve resource @drawable/background3
Click to expand...
Click to collapse
Secondly I am trying to figure out how to send the numbers entered into the "editText" objects to the main java method. I used actionListeners in java but i don;t know here. No need to explain it i would be very appreciative if someone could just point me in the right direction.

[Q] A Java emulator for Honeycomb and above

After watching that introduction video, it is with wavering resolve that I post this.
I'd love .jars to run on my Xoom with Honeycomb 3.2. I've spent a few hours today searching for if, and how this is possible, and the options seemed to be:
Convert sounce code to apk and run that
Run the .jar through a J2ME emulator
So I don't have the source code, writing off the first option. Everything related to the second option seems to link back to this old thread. Here, the version only goes up to android 2.2, and does not run on 3.2. In fact, I can't find anyone even asking about this in 2012.
Is this just not a common thing to want to do? Or is it that I'm using the wrong search terms.
Finally... does an app exist to do this on 3.2? Unlocked, rooted, whatever. It'd be great if this could work.

file, i.e., text editor that monitors/detects file changes (locally)

Hello @all,<br>I'm kinda new to "asking a question on a forum" hence I kindly ask you in advance to be a bit apologetic for any blunder I'm going to 'produce' .. thx
The reason me being 'new' is because usually I find my way around—not that I consider myself almighty but a simple Google-search does it's magic .. usually. This time I ran out of luck, which surprised me (even a search-string-overhaul was to no avail).
I'm looking for a neat text/script editor that is capable of monitoring file-changes that may happen in the background while a file is open .. a standard for any given IDE on a PC-environment (in fact, the simplest notepad replacement would cover such basics). Or a precocious check upon file-saving would be sufficient. As of now every App I tried so far failed to notice when I "sneak into my own phone and 'secretly' modify a file" currently open by this very App (of course, there are different scenarios conceivable why a file might have changed, though). QuickEdit looked promising but .. alas .. and why the heck is no there UltraEdit available for Android .. but I reckon this would be an entirely different topic and too much to ask.
ps: chose the 'post'-icon because it seemed fit .. although in a slightly different way than probably intended
pps: for the non-working line-break .. just use your imagination

Question regarding what "this does"

Now I avoided the hell out of "Octopus" as it's an extremely scetchy application that wants literally all permissions for no good reason. I looked into something called Panda Gamepad Pro and it requires to run ADB root and run a script, however I'd like to get some more insights into what exacly it does or rather what it can do. I looked into it myself a little bit as a person that doesn't have that much experience with Android development but as far as I can tell it seems to inject something in possibly it's own process?
I uploaded the script that the ADB.bat executes with adb root and would like to get a rough idea what is going on. The application itself doesn't seem to require more than storage permissions which makes sense as it needs to know where the game executable is for custom layout, nothing scetchy there. Can someone shed some more light on this?

Categories

Resources