Decompiler wrappers and general modification tools. - Galaxy Note II, Galaxy S III Developer Discussion

I wanted to open up a little chat here about what decompilers themers and developers are using to crack this bad boy open. I have tried autoapktool, but that one is giving me errors left and right. I will continue to try new ones and post the ones I find work best, but I was curious as to see what other people have found / use / like / dislike.

Rather off track for a dev discussion.
Esp since the one you posted-auto apktool is a wrapper for apktool.
There are only two tools for decompiling-the original smali/baksmali and apktool. Wrappers arent important. I dont like any of them, and use a collection of my own scripts whenever I have to decompile.

As mentioned, there aren't many actual choices (but several wrappers.)
This is kind of borderline on if it's a dev discussion or not. My opinion is that the OP is somewhat off, but the result might be useful as a reference (and will also fuel my flame thrower if/when someone else posts a similar item without searching.)
I also can't think of a better section for this type of thing (at least until something called "XDA-U" shows up.)

The rules for this sub forum state that this section can be used for discussion of any kind of development. Themeing and modding pre existing roms may not be high level stuff, like porting cm or having issues with a custom kernel... but it is still development. That's why modded roms get posted in the development forum. If a mod feels that I am in the wrong, then please move this to somewhere that makes more sense.
Section Guidelines -- READ THIS FIRST
This area is currently experimental and was set up by the XDA Administrators for development discussion. The idea in this section is for developers (not only recognized developers, but all developers) to have a place for discussion threads to "talk shop."
Click to expand...
Click to collapse
In the mean time. Fine... then lets talk wrappers.
I have not had much luck with the latest auto apktool. But the 2.x variants seem to do quite well. Xultimate seems to work fairly well as well.

lickarock said:
The rules for this sub forum state....
Click to expand...
Click to collapse
Yes, I wrote that post. As I mentioned, this thread is kind of borderline. (While it's not noted on my title, I am a moderator of this section.) If you'd like to debate the finer points of the guidelines, I'd be happy to do so in PM's.
lickarock said:
In the mean time. Fine... then lets talk wrappers.
Click to expand...
Click to collapse
I'd prefer if we didn't. I don't see any issue with discussion of tools and how they relate to the NoteII (or even the exynos4 platform in general), but when you get into wrappers for those tools, things can get a bit far off focus, and solving the platform/device specific issues would have to be done at the base tool level, not the wrapper level. There are also, of course, threads in other sections for specific tools and even wrappers...
(Hopefully, the next paragraph will keep this on-topic AND show what I'm trying to get at.)
To that end, I HAVE been able to properly decompile most of the NoteII apk's I've tried with apktool. In that case, I wasn't able to to use an older version of apktool, and had to find one that was reengineered to work with ICS firmware. (So, for example, if a wrapper used an older version...) Updating the JDK can also solve some issues. Here's a link to the version of apktool I ended up using: http://forum.xda-developers.com/showpost.php?p=23886280&postcount=1
Take care
Gary

lickarock said:
The rules for this sub forum state that this section can be used for discussion of any kind of development. Themeing and modding pre existing roms may not be high level stuff, like porting cm or having issues with a custom kernel... but it is still development. That's why modded roms get posted in the development forum. If a mod feels that I am in the wrong, then please move this to somewhere that makes more sense.
In the mean time. Fine... then lets talk wrappers.
I have not had much luck with the latest auto apktool. But the 2.x variants seem to do quite well. Xultimate seems to work fairly well as well.
Click to expand...
Click to collapse
No offense, but please don't talk like Samsung does.

garyd9 said:
To that end, I HAVE been able to properly decompile most of the NoteII apk's I've tried with apktool. In that case, I wasn't able to to use an older version of apktool, and had to find one that was reengineered to work with ICS firmware. (So, for example, if a wrapper used an older version...) Updating the JDK can also solve some issues. Here's a link to the version of apktool I ended up using: http://forum.xda-developers.com/showpost.php?p=23886280&postcount=1
Take care
Gary
Click to expand...
Click to collapse
Thanks, I was having issues recompiling systemui.
As far as wrappers go, without a "digression" into wrapper UI or other such nonsense, I think it's valid. While most of us know our way around bash, conversation could lead into nice tools like T889 specific git sources or other useful tools.

Related

Getting down to Android

Hi all!
I'm sort of new here, although i've been reading forums for quite some time now.
I have a Galaxy S (the main reason i'm here in the first place), and given i have a programming experience on different platforms i figured - what the hell. I am planning to try myself in Android apps development and possibly get down to custom ROMs and all that jive.
It is obvious where i should start with development (e.g. download SDK, read some tutorials, books etc.). As for messing with ROMs, i couldn't find an easy introduction to that. I mean, come on, everyone can root the device and install Voodoo lagfix (as i did already), but actually *creating* these ROMs is another story. If someone could possibly point me in the right direction (i just don't know where to start) it will be very appreciated.
P.S. I'm not your usual noob. I am neither afraid of command line, nor technicalities that are involved with this, and i completely understand that this will require HELL OF A LOT of reading, understanding, learning, and i completely understand that all this is way above my current knowledge, that's why i'm interested in the first place.
I think a good start would be to search tutorials for "deodexing" as this is one of the methods to prepare a ROM. From there it should lead you deeper into the rabbits burrow.
Thanks for the tip. Now i have questions that are probably belonging to the Chef section (started to read threads in there and realized that i should have started reading that section in the first place), but anyway.
If i compile the AOSP from source - will it work straight away on any device? Probably not, as the hardware needs drivers and stuff. So, next thing is drivers. As my device is Galaxy S, you can assume that all i ask is related to that device.
I saw that the open-source package (including the drivers) for Galaxy S has been released by Samsung. Does that mean that i can take Eclair AOSP source, copy the drivers, compile and use the result on my device? Well, probably Samsung made some modifications to the kernel, so it would be good idea to copy the kernel source too (i have never done kernel development before but i hope i have a somewhat general idea of how things work down there).
Anything else i need to be aware of?
Following the advice given earlier, i have googled for deodexing and ended up having a folder full of apk's. Does that mean that if i wish to install some Samsung stock apps (like camera) - i can take these apk's and install them as a regular app (or even include them in a resulting vanilla android ROM)?

How to make an app?

I'm putting my theming project aside for now and get onto creating an app that I've always wanted to create that I do not see ANYWHERE in the market, forums, android websites, etc.
I've been reading and reading and reading different threads, instructions, etc. But no clue where to start. I've been reading on App Inventor but realized that it is very limited and I have my high doubts that App Inventor will not be able to achieve what I have in mind to make.
I've got the latest SDK and AVD Manager, JDK, Java, and have been using my emulator to test edited APKs. I'm pretty sure I'll be using my emulator to see how my app progress is coming along and see possible FCs and other issues and correct them as well as adding more to the app to make it even better.
But right now I'm stuck at where to begin here. Right when I was about to create this thread, I was making the name of the Title of this thread and was given threads relating to my title name and saw one thread that was sort of mentioning what I'm asking here.
I read the link provided in that thread ( http://developer.android.com/guide/topics/fundamentals.html ) and got some clues but just not enough to get me started here. I just need that push to get me going and eventually push it out to the market and make some money as a side project and learn from that and possibly make more useful apps. I cannot disclose my ideas here because then someone else (who has experience making apps) could take those ideas from me and go make it.
Is anyone willing to work with me here to get me started? I've helped countless people so it would be nice for a change for someone to help me out here.
There are so much Android development books on the market that I suggest to start with one of them. It's the best way to get some knowledge of the design principles used by the Android development framework.
Another method is to start with some examples found on the web. Just search for Android examples or something like that and you get tons of links
Another method is just to create something, get stuck and try to search for a solution (the most pragmatic method )
Yeah I know. That's why I'm constantly researching. I'm seeing some similarities between Java coding and building scripts in IRC (which I used to do, nothing big, just really small stuff). But my main problem is knowing what exactly are the main tools I need. I've had Eclipse for awhile but never used it. It has a lot of stuff in it and I get lost after a couple executions.
I'm just anxious to get started somewhere and get the momentum rolling for starters.
Could someone point me to a good book/ebook ? There are many out there but I'm sure that are some better than others...
If any french-speaker knows one in Voltaire's language, I'm in too. But English is fine...
DannyBiker said:
Could someone point me to a good book/ebook ? There are many out there but I'm sure that are some better than others...
If any french-speaker knows one in Voltaire's language, I'm in too. But English is fine...
Click to expand...
Click to collapse
Yeah, a good book (english) would be great. Can anyone recommend one?
You don't have to buy books but they do contain a lot more info in one book and would be better to have than trying to scour the internet and pull a bunch of infos together and try to put it together to understand step by step on how to get started and everything else.
Here's a link to a lot of android development books:
http://www.amazon.com/s/ref=nb_sb_s...pment&sprefix=android+application+development
Here's a link to some more info to getting started that is also useful:
http://developer.android.com/guide/basics/what-is-android.html
You may also need to get a Java coding book to help you put codes together properly and understand what each coding does, and tweaking them to work better.
Here's the link to Java coding for Android stuff for beginners:
http://www.amazon.com/s/ref=nb_sb_s...x=java+for+dummies&rh=n:283155,k:android+java
I just bought 2 books for Android application development and looking around for a good Java coding for beginners.
mdonova33 said:
Yeah, a good book (english) would be great. Can anyone recommend one?
Click to expand...
Click to collapse
professional android 2 application development by Reto Meier: http://www.wrox.com/WileyCDA/WroxTi...ication-Development.productCd-0470565527.html
Or, the Busy Coder's guide to android development by Mark L Murphy: http://commonsware.com/Android/
Last one is more written in a "let's get dirty" style. Really like that
TheSwaggeR said:
...
I just bought 2 books for Android application development and looking around for a good Java coding for beginners.
Click to expand...
Click to collapse
I think any java book will do, as long as it covers the principles of object oriented design and the data structures used by Java. You don't need any info about GUI programming in Java because that's all covered by the Android application framework.
The best Java books are the ones written by James Gosling et al, the designers of Java. But that may also be over the top for Android application development. Just some basic Java will do to get you started. The algorithms needed for basic apps aren't that complex.
App Inventor is a great tool to develop your android app. It simplifies the development and the editor is very intuitive.
Check out my blog on App Inventor and AppToMarket and a Workshop
http://Amerkashi.Wordpress.com

[Q] skip music track via long volume press for non cm7 miui roms

i would love to learn how to incorporate this functionality into a rom (i'm an owner of a htc phone and primarily use sense roms). from what i've read, it's only a matter of adding a couple of files (phonewindowmanager$12.smali and phonewindowmanager$13.smali) and modifying phonewindowmanager.smali. if done right, this functionality can be added to any rom.
i've been comparing the cm7 smali file to a sense smali file to see what the differences are in terms of code but it just makes my eyes go wonky since i know nothing about reading/writing code.
until yesterday, i had no idea how to extract classes.dex from android.policy.jar nor was i aware of any of the information mentioned above. in other words, i'm a noob at this. i would like to learn how to do this and by the looks of it, many others on the forum are interested as well.
is there a dev out there that would like to share his/her knowledge/wisdom/experience on this with the rest of the xda community? i realize this is a lot to ask but i thought i'd try. thanks in advance.
I'd also be interested in this, for phones where Cm7 isn't available
Me too. Am going to put this thread as my signature until some kind soul comes up with an tutorial. Or at least a rhetoric answer.
By the way, the only guy that i know is, Andy Thompson, who's always update his mod/hack for MIUI roms
http://miuiandroid.com/community/threads/mod-skip-track-via-volume-press.7356/
and also CosmicDan
http://miuiandroid.com/community/th...hold-volume-to-skip-tracks.17381/#post-131527
Must have skill/mod/hack or even app for music lover and flashaholic.

Rom OP Format...DEVS READ PLEASE

Below is a format that should be used as an example of how a rom thread should look. It doesnt have to be exact. I suggest that you stay creative and use all the features in the advanced panel when creating a thread.
1. Name of rom, team, etc
2. Introduction
3. Changelog in code or php tags
4. What's included in the rom in the (apps, tweaks, scripts, addons, mods) in code of php tags
5. What works/what doesn't work in code or php tags
6. Credits (Users name-with link to (profile/github/or thread u got tweak from embedded), and what they did to help you)
7. Screenshots (2-10 different screenshots of different aspects of rom)
8. Kernel with either link to thread you got it from or github (if stock sense or cm please state that and that is enough)
9. Instructions on how to install the rom (also if special instruction for a2sd or beats audio...etc)
10. Do's and Don'ts of the rom
11. Questions & Answers section (I find this helpful to write out asked questions with solutions at the bottom of the op. I find that it cuts down on the question being asked a million times)
12. Finally the dl link
13. Additional add-ons (this can go into first post or reserved posts after)
I find the embedded link looks and feels better throughout the op if possible.
All sections should have a header with enlarged text and spaced out so people can read it easily.
I am hoping that this helps to make this section a little cleaner and easier. enjoy
The way I look at this is that it takes US weeks/days/hours to make these roms....we can take the time out to make sure that the op looks professional and clean
Also Make sure the op is fully ready before posting. I know we all get excited to release a rom but stating that half the stuff will be updated as time permits just shows that you are lazy and in a hurry which doesnt look good cause if thats the case then how does your rom run....
No posting a a rom thread without a DL link either
Thanks Papa Smurf151 i think everyone who is getting ready to post a rom should be redirected here!
sorry if im not allowed to post here, so please delete my comment if needed
i left this open for feedback
How about how stable it is like in the old days?
I remember last year everyone would label them as beta, RC, final etc.
bennyboy78 said:
How about how stable it is like in the old days?
I remember last year everyone would label them as beta, RC, final etc.
Click to expand...
Click to collapse
I think what Papa Smurf outlined in the OP is more then enough and it covers the basics while keeping the majority of the threads uniformed or at least try to
I also don't think we should start being over critical here and require individuals that start threads in the development section to add labels like Alpha, Beta, MC, RC or whatever.
I understand that having labels would make things a whole lot easier for the user BUT it also doesn't encourage the user to read about what he or she flashes onto their phone.
I don't know how many times I've seen a user complain and harass developers over something that was clearly their (the user) fault because they didn't read the OP. They saw fancy screenshots and saw the download link and either ended up bricking their phone or causing their phone to turn into a hot pocket...lol
Not trying to tell people how to do their job BUT I think we should encourage users to read/search more not shortcut things for users.
Mazda said:
I think what Papa Smurf outlined in the OP is more then enough and it covers the basics while keeping the majority of the threads uniformed or at least try to
I also don't think we should start being over critical here and require individuals that start threads in the development section to add labels like Alpha, Beta, MC, RC or whatever.
I understand that having labels would make things a whole lot easier for the user BUT it also doesn't encourage the user to read about what he or she flashes onto their phone.
I don't know how many times I've seen a user complain and harass developers over something that was clearly their (the user) fault because they didn't read the OP. They saw fancy screenshots and saw the download link and either ended up bricking their phone or causing their phone to turn into a hot pocket...lol
Not trying to tell people how to do their job BUT I think we should encourage users to read/search more not shortcut things for users.
Click to expand...
Click to collapse
Well said, couldn't agree any more.
MBQsniper said:
Well said, couldn't agree any more.
Click to expand...
Click to collapse
See I assumed this was common sense and ROMs that are missing a lot of these details, I don't give the time of day too so those ROMs don't matter to me. Because in my mind all the good ROM's out there already follow this in some way shape or form.
I appreciate what you did but I don't see why we need it is all.
As long as these are only guidelines and not enforceable rules, I agree with them. But I wouldn't agree with deleting/locking threads that fail to follow these guidelines; that would send the wrong message to developers.
v5HMeca said:
As long as these are only guidelines and not enforceable rules, I agree with them. But I wouldn't agree with deleting/locking threads that fail to follow these guidelines; that would send the wrong message to developers.
Click to expand...
Click to collapse
Rom threads will never be locked or deleted for not following these guidelines. I would hope devs would embrace them and if a fellow dev isn't then I would hope someone would point them here and try to help them. Most rom devs want to have a nice looking op. But some of them are new and don't know better or are very young and don't know better. This just helps to give structure that they can refer to and say oh yeah maybe I should have that or this.
XDA Moderator
Cherokee4Life said:
See I assumed this was common sense and ROMs that are missing a lot of these details, I don't give the time of day too so those ROMs don't matter to me. Because in my mind all the good ROM's out there already follow this in some way shape or form.
I appreciate what you did but I don't see why we need it is all.
Click to expand...
Click to collapse
What?

What are the requirements to become a modder?

I am beginner and want to learn that how I can become android modder. So, I can mod android OS and apks?
It's just like being an interior designer. There isn't any requirements.
Just get your business cards printed and go for it!
So.. you're here just to advertise that site of yours?
Lame...
CXZa said:
So.. you're here just to advertise that site of yours?
Lame...
Click to expand...
Click to collapse
nope dude I actually want to learn. I mean to say that which language should I learn?
Java is as good as any. Once you learn one you can do others too...
CXZa said:
Java is as good as any. Once you learn one you can do others too...
Click to expand...
Click to collapse
Thank you very much
andromodguide said:
Thank you very much
Click to expand...
Click to collapse
EDIT: Ok, now I see what type of modding you were talking about. XDA is not the place to request such knowledge, as it's basically the same as a warez request. The website you have in your signature, idk if you're part of this scam or not, but seriously, GTA 5 apk mod... this website is sooo sketchy. Please read the rules before posting.
Don't get me wrong, I'm disapproving the website, if you're not part of it, and just asked if you could learn how to mod an apk it's fine, it's just not at xda you should ask. But if you're part of this website advertising those fake apks that maybe used to hack someone's device, I think that's truly despicable.
I left my original answer down here:
Spoiler: ...
XDA is the place !
I personally don't know much java, and was unable to understand a word of english, so all of the tech documentation was a mystery for me. I just heard about one reverse engineering tool called apktool. So I set it up and started cracking open apks to understand how they really works from the inside by reading files and stuff. Then I came here (with a better knowledge of English and of what's an apk) and found many resources to learn. It depends on the kind of things you want to mod. If the UI is your priority, I'll advice you to start by understanding what's xml and how google uses it inside of every app. Eventually you'll have to learn java for more deeper tweaks, but to begin I think understanding how xml works is easier, and more practical since you'll have to modify that in order to change any UI element.
If you're after modding how the app works itself, then java is the first thing you should learn. (And don't learn any java, Android uses more the Java OOP).
I'll leave you some links for both ways of modding :
Modding UI (theming):
App resources overview | Android Developers
developer.android.com
I also did guide for theme using a simple method that doesn't require any prior knowledge of xml and stuff, and get you to play with the interface (like changing color and stuff):https://forum.xda-developers.com/t/guide-theming-how-to-theme-any-android-app.3777101/
Ticklefish is one good themer here on xda, he made some guides about theming that, even if they're old, can teach you a lot about xml : https://forum.xda-developers.com/general/xda-university/xml-101-xml-modding-easy-t2929816/
For the Java way:
I've seen many many java courses around the internet. Actually I can't tell you which one is the best or which one to avoid because I didn't learn java yet myself. Your on your own for that one, but good luck !

Categories

Resources