Help with importing reverse engineered APK into Android Studio? - Android Studio

Hello guys,
I've got a programming gig which needs me to edit an Android app. Problem is the source file comes in an APK, so I've used dex2jar in conjunction with APKtool to get the source code, resources and AndroidManifest.xml.
I've got some problems with the decompiled JAVA code though. I've created a new project in Android Studio and I'm importing the code in, and I've run into a few problems.
I think the code is obfuscated. The classes are all named a, b, c, d and so on, except for MainActivity. There are also no layout files. setContentView basically takes an object of class b, which is assigned new m(this, this.a). How is it possible that there are no layout files?
So the code package is in com.companyname.projectname right. dex2jar reveals some other folders inside com.companyname, like helper, ui, a, b, c, etc. Are these external packages that the project uses? What roles do they play?
Are there any more efficient ways of reverse engineering an APK and putting them into Android Studio?

terresquall said:
Hello guys,
I've got a programming gig which needs me to edit an Android app. Problem is the source file comes in an APK, so I've used dex2jar in conjunction with APKtool to get the source code, resources and AndroidManifest.xml.
I've got some problems with the decompiled JAVA code though. I've created a new project in Android Studio and I'm importing the code in, and I've run into a few problems.
I think the code is obfuscated. The classes are all named a, b, c, d and so on, except for MainActivity. There are also no layout files. setContentView basically takes an object of class b, which is assigned new m(this, this.a). How is it possible that there are no layout files?
So the code package is in com.companyname.projectname right. dex2jar reveals some other folders inside com.companyname, like helper, ui, a, b, c, etc. Are these external packages that the project uses? What roles do they play?
Are there any more efficient ways of reverse engineering an APK and putting them into Android Studio?
Click to expand...
Click to collapse
Unfortunately what you're asking, probably won't get the reply you're after as it's technically dubious. If you have a "programming gig" as you put it, they should have the source code for the project that they wan't you to work on, if not then I would suspect they don't own it. Either way, code is obfuscated for this reason, good luck.

Related

[Q] Will the G1 play .jar files?

I thought it was supposed to run java (.jar) file quite well. If it does what do I need to do to get them to play?
A midlet app I assume. I don't think I've seen one created yet...or I could be wrong.
G1 does run under java code, and all the apps are created in java, but what you're thinking is completely different and would not run without the proper framework created around the jar file to be able to run on android devices.
prash said:
A midlet app I assume. I don't think I've seen one created yet...or I could be wrong.
G1 does run under java code, and all the apps are created in java, but what you're thinking is completely different and would not run without the proper framework created around the jar file to be able to run on android devices.
Click to expand...
Click to collapse
Agreed. Sure, the G1 runs Java, but that doesn't mean it LITERALLY runs Java, it's just Java based.
The Java code must be built around different custom aspects of the G1 and Java code just for mobile devices, so thus, any ole .jar file won't play or run on the G1. Just think of all the differences between a computer and a phone, and that's your reason there.
there is an app in the market that allows you to do this but it is in it very early stages
Correct, it's called java/j2me runner. does ok for the few java apps I've tried. but yeah, came out back in decemberish and hasn't changed much/improved since.

Source code editor on the go with your Android Phone!

Hello, i want to ask if there is any program availiable for android phones like notepad++ for pc where i can write code for programming languages. Compiling them i know it's not possible but i want an app for writing the code while i am away from my pc.
Even though I don't agree with notepad++ (I am a linux user, but I always thought it was terrible) I would like this too.
I have spent some time looking and have yet to find anything that will do this, so I have to ssh into our development server and then use nano. It works for small fixes, which is the only thing you would really want to do on your android.
yeah i also would really like to see this so i can be programming while at work and school when i'm on the go. I've recently started learning to develop for android maybe this would make a good project.
i believe some roms have gedit or nano included so you could use that
Check out our touchqode source code editor for Android at touchqode dot com (forum does not allow us to post link)
It features syntax highlighting, code suggestions (autocomplete) and incremental search. We support Java (most mature), Python, C++, C# and Ruby (partial support).
We are eager to hear some feedback.
We just release Codeanywhere for Android, try it out I think this my be to your linking.
Just search Codeanywhere in the Android Market!
Let us know what you think
Just to let you know... Codeanywhere works but stops showing code at line 52 (consistently, doesn't depend on file type) on my Asus Eee Pad Transformer (16GB) w/ dock.
You can also try DroidEdit: https://market.android.com/details?id=com.aor.droidedit

[Q] [Problem] How to list parameters in

It's quite a simple one I hope. Also, apologies for adding noise to the forum, but I couldn't find any detailed documentation or many tutorials.
I'm making use of findAndHookMethod for a little test project of mine. The problem is, the method which I am hooking has custom classes in its parameters.
Obviously I don't have access to these classes in terms of having the source code imported, so my first thought was just to list the paramaters as Object.class, but this didn't work.
What (if any) are the solutions? Thanks!
P.S.
In case I worded it badly. Say I have method to be hooked...
public void methodThatDoesSomething(ThisCustomClass nameOfParameter)
How do I use findAndHookMethod when listing parameters, as ThisCustomClass.class is not within the scope of my project
Use a string with the class' full name, e.g. "com.hooked.package.ThisCustomClass".

[Q] Idea about how to get values from a table

Hello!
As some could see in my other topic, I'm learning about android studio to make an app with some maths to help me with my job.
Well, in one specific case, I need to search and get values in a table, based in a reference. Its basically like the VLOOKUP/HLOOKUP function in Excel.
My doubt is the ideal way of doing that, is there any kind of table inside the android studio, like a container or something ? Or I should use a data base ?
Below is the same math, on excel, that is the base that I'm creating the app for android, in this case is a simple table, but in some cases are many values:
The attachment 001.png is the list where I select the materials Standard, and then I get the 2 values σt and σe from the table.
The attachment 002.png is the table I am looking for the values:
Sorry about this kind of question, but I'm just reading a lot, looking for tips leading me to an ideal way of doing it, but its a little hard in the beginning.
Thanks in advanced.
Barata
Conversion
Hey from your question , I undestood that you are looking for ready table to give values.
As i see you are getting values in excel.
1) There is no direct conversion table available into android studio.
2) You can use library project import if you require familiar conversion tables.
3) If in excel you make your own conversion method . apply same into Anddroid studio.
What more , share your method or query breif.
Hello,
Thanks for replying satyampv,
Actually my doubt isnt about conversion, I said about excel because I'm used to work with it. And its so easy to use vlookup there that I was wondering if would have something like it on android studio .
If I have to put some huge table in a database here on android, it's ok, I accepted that I would have to do it. But the doubt is if I really have to use a database, or if exists other way to look up for values in a table. Like you said "2) You can use library project import if you require familiar conversion tables.", is that an alternative for a database ?
Or should I just forget those "normal tables" from my mind and use SQL lite ? Because is just to look for values, just read, I don't need to write neither do any changes in the table after it's created.
Thanks in advanced, again.
barata

Building a Project on a Network Attached Storage Case Sensitive File System

Hello,
I'm just starting out with Android Studio. I did a search on my issue but didn't find anything related.
I have Android Studio installed on a MacOS computer and I tried building a basic blank app project for testing. The destination folder for the project was on a Network Attached Storage hard drive (Western Digital MyCloud). The build failed with the following gradle error:
Code:
Could not create service of type FileCollectionSnapshotterRegistry using TaskExecutionServices.createFileCollectionSnapshotterRegistry().
> Could not create service of type CachingFileHasher using TaskExecutionServices.createFileSnapshotter().
I did some Google searches but could not find anything to help me interpret what that means.
I did notice a few other things I think are more meaningful. Before the build, Android Studio warned me my project was being installed on a case sensitive file system so I put the statement in my preferences to set case sensitive to true.
After the build failed with the gradle error I looked at the code in the MainActivity class. Several of the
Code:
import
statements were greyed out and a mouse over showed that they indicated as unused. The
Code:
@Override
annotations were underlined with red error markings and a mouse over indicated that the classes to be overriden were unresolved.. I suspect the class names weren't being resolved because of case sensitivity issues with the file system.
I decided to build the project on my local hard drive. I got a warning that it was a case insensitive file system because I still had case sensitive set in my preferences but the project built successfully with no errors there.

Categories

Resources