I'm enjoying the TW4 experience on my GS2 so much that I would like to port it over to my Nexus S as well.
I have asked about this in the NS forum and was told that flashing the original GS ROM to NS caused a boot loop due to required changes in init.rc
What is so unique about TW that it fails to boot on other hardware and how would one go about porting it over?
I'm not a developer but if the fixes are relatively simple (like editing config files or something) then maybe I'd be able to get a GS2 ROM to boot on NS and then hand the project over to NS developers to fix the driver issues.
Any idea from anyone?
The TouchWiz Launcher, much like the Sense UI's Rosie launcher and the MIUI launcher, require framework tweaks and thus will not run on AOSP Android.
In order to get TW4 on a different device, you'd have to find a twlauncher.apk port that isn't dependent on the framework.
Related
Hello all,
So I remember not too long ago a lot of people were asking for touchwiz 4.
Now it's out and I haven't really seen any steps in porting it to other devices (like ours).
BUT, some people over at the Galaxy S I9000 already ported it to their devices.
So, since we can also run android 2.3.4 now, I was wondering if there was a porter around here interested in porting this.
Here's a Link To the original post at the Galaxy S forum.
I don't have much experience porting other apps (unless I can get the whole source I.E. All the Java files and XML files in original format), otherwise I would have tried it.
Dympy
I think Gaby02 try port this.
Hello
I did not try this one yet, but maybe it works:
http://forum.xda-developers.com/showthread.php?t=1061883
I linked to that post in the OP.
Already tried and didn't work :/
Dympy.
Whoops, sorry did not saw that
Try running it through Chainfire? Or am I talking **** now?
Well graphics aren't the problem.
First of all, it just won't install (Maybe because I'm on Froyo (The manifest file requires a minimum SDK version of 8, so if I'm right Froyo is capable of using it)).
If that problem can be overcome, I think the rest of the porting Would be quite easy.
Dympy.
Try pushing it to /system/app and reboot? Maybe it works then?
the current port of Touchwiz 4 on froyo is for arm v7 devices only....... so i suggest wait till marcellusbe port's cm7 and releases gingerbread AOSP.... cause then only the pngs will have to be converted... i guess......
Installed on cm7 but when I select tw it just gives a black screen with the notification bar :/
Touchwiz 4 is for ARMv7 so for the moment I think it's impossible to use it :S
i have tried all on froyo and on cm7 but no one would start i cant install it and only blackscreen
Probably, this would take an another marcellusbe to port the lib files
The first thing I want to say is that my English is not really good. I hope you understand my questions.
I have an idea for a new Android rom, but I'm faced with a dilemma. I want to have as much as possible supported devices, so I also can just build a launcher apk which can be installed through Google Play. In this way all mobile devices with the minimal platform version can use it. The biggest problem is that I don't only want a replacement for the application launcher but also the notification drawer and everything else. Is it possible to replace them also? I don't think so, so I think I'll work on a custom rom.
The next problem is which base rom I would use if I really build a custom rom. It's most likely to use AOSP as base because it's clean. The question is which version of AOSP: Gingerbread, Ice Cream Sandwich, or the newest version Jelly Bean. You would probably say Jelly Bean because this is the newest version. The problem is the phone support. Gingerbread is supported on most phones. If I build ICS or JB the phones which are supported by Cyanogenmod are easy to support, because I can use their device files. The only problem is that my phone, the Samsung Galaxy Gio is not officially supported and the unofficial port is not really stable. I don't think it's a big problem to use this device files and just wait till the developer makes it more stable, but I don't know for sure.
The last thing I want to know is if it's really that simple to support multiple devices. If I read tutorials about porting existing roms to your device they all say you just have to add your device files to the source and compile it. But they never say something about the kernel. Most devices need another kernel because their hardware is different isn't it? Please explain me how this works.
I'm sorry about this hazy story, but please help me before I make wrong choices. Thanks on purpose.
Wietse
WietsedeVries said:
The biggest problem is that I don't only want a replacement for the application launcher but also the notification drawer and everything else. Is it possible to replace them also? I don't think so, so I think I'll work on a custom rom.
Click to expand...
Click to collapse
These changes you are talking about can be done. They are system changes so not supported by the android app installer.
Eg: Your notification drawer, status bar are part of SystemUI.apk. The source for this is can be found in the AOSP source code under android/frameworks/base/...
You can make your modifications, compile it into an apk and then make a flashable zip to replace the current one (or push it via a rooted adb console).
or you can compile the entire source code into a flashable zip (eg CM7,9 etc..) and use it a replacement ROM with your modifications.
This is the line between an application under the android runtime and the android runtime itself.
these files, under framework are part of the OS. so to provide a customized version of the operating itself is what people like to call ROMs.
Now ROMs (like any OS) are device dependant. Windows has the code to run in a lot of different hardware configs, but android aims to be small. It should have only the minimum required code to efficiently run itself on a device.
Thats the kernel. The kernel communicates with the hardware and so the rest of the hardware can happily talk to a working kernel and expect the hardware to function as advertised. Kernel is a simple program which goes into the RAM on system start and sits there directing the operation of the phone.
Kernel devs work on making sure the hardware and the android runtime work perfectly together. Now, in this imperfect world, not all sources are open, even though they should be. and therein the issue lies.
If you want to compile android from source and make sure it works on your phone, first you need to make sure you have the kernel with all the changes(patches) to it made by the vendor (chap who made the phone and bullied you into buying it) to get it working on your hardware.
If you dont have that, you have to do it yourself. Or wait for someone else to do it.
once you can compile android and get it working on your phone with all the itty bitty hardware working A-OK.. then you can browse through the source, make changes as per your individual requirements and compile it into a ROM.
see the changes to the OS are separate from the changes to the kernel. The kernel changes are for hardware-software interaction so they are phone SPECIFIC.
but changes to your custom android OS (ROM) can be "cherry-picked" from other ROM/gerrit/AOSP/CM/AOKP sources and put inside your own source tree to get included in your build.
so if you have all the device / kernel stuff from a working android distribution, you can take the source of another android distribution and swap the device stuff into it and see if it works.
hope this helps.
wingie6200 said:
These changes you are talking about can be done. They are system changes so not supported by the android app installer.
Eg: Your notification drawer, status bar are part of SystemUI.apk. The source for this is can be found in the AOSP source code under android/frameworks/base/...
You can make your modifications, compile it into an apk and then make a flashable zip to replace the current one (or push it via a rooted adb console).
or you can compile the entire source code into a flashable zip (eg CM7,9 etc..) and use it a replacement ROM with your modifications.
This is the line between an application under the android runtime and the android runtime itself.
these files, under framework are part of the OS. so to provide a customized version of the operating itself is what people like to call ROMs.
Now ROMs (like any OS) are device dependant. Windows has the code to run in a lot of different hardware configs, but android aims to be small. It should have only the minimum required code to efficiently run itself on a device.
Thats the kernel. The kernel communicates with the hardware and so the rest of the hardware can happily talk to a working kernel and expect the hardware to function as advertised. Kernel is a simple program which goes into the RAM on system start and sits there directing the operation of the phone.
Kernel devs work on making sure the hardware and the android runtime work perfectly together. Now, in this imperfect world, not all sources are open, even though they should be. and therein the issue lies.
If you want to compile android from source and make sure it works on your phone, first you need to make sure you have the kernel with all the changes(patches) to it made by the vendor (chap who made the phone and bullied you into buying it) to get it working on your hardware.
If you dont have that, you have to do it yourself. Or wait for someone else to do it.
once you can compile android and get it working on your phone with all the itty bitty hardware working A-OK.. then you can browse through the source, make changes as per your individual requirements and compile it into a ROM.
see the changes to the OS are separate from the changes to the kernel. The kernel changes are for hardware-software interaction so they are phone SPECIFIC.
but changes to your custom android OS (ROM) can be "cherry-picked" from other ROM/gerrit/AOSP/CM/AOKP sources and put inside your own source tree to get included in your build.
so if you have all the device / kernel stuff from a working android distribution, you can take the source of another android distribution and swap the device stuff into it and see if it works.
hope this helps.
Click to expand...
Click to collapse
Thank you very very much for your explanation! It's a pity it's impossible to hit multiple times "Thanks".
I think I'm going to make a modified SystemUI.apk but you didn't tell the application launcher is also in this file. Did you just forget this or is this stored in another file/folder? And the lock screen? And I want also to replace the boot animation if it's possible.
If I take the source files of the SystemUI.apk of AOSP ICS, does this work on every phone running ICS? Included CM, AOKP and other (smaller) custom roms? And my last question: Since SystemUI.apk a apk file is, is it possible to edit these files through Eclipse and build it in Eclipse? Or do I get errors?
//Edit:
Still another question: How much work is it to, as example, port a modified Gingerbread SystemUI.apk to ICS? (Or vice versa)
WietsedeVries said:
Thank you very very much for your explanation! It's a pity it's impossible to hit multiple times "Thanks".
I think I'm going to make a modified SystemUI.apk but you didn't tell the application launcher is also in this file. Did you just forget this or is this stored in another file/folder? And the lock screen? And I want also to replace the boot animation if it's possible.
If I take the source files of the SystemUI.apk of AOSP ICS, does this work on every phone running ICS? Included CM, AOKP and other (smaller) custom roms? And my last question: Since SystemUI.apk a apk file is, is it possible to edit these files through Eclipse and build it in Eclipse? Or do I get errors?
//Edit:
Still another question: How much work is it to, as example, port a modified Gingerbread SystemUI.apk to ICS? (Or vice versa)
Click to expand...
Click to collapse
Only way is through exchanging the png files since porting the whole .apk is impossible.
Sent from my Jelly Beaned Ace
Thanks for the answer. And do you also know the answers of the other questions?
Sent from my GT-S5660 using xda app-developers app
WietsedeVries said:
If I take the source files of the SystemUI.apk of AOSP ICS, does this work on every phone running ICS? Included CM, AOKP and other (smaller) custom roms? And my last question: Since SystemUI.apk a apk file is, is it possible to edit these files through Eclipse and build it in Eclipse? Or do I get errors?
//Edit:
Still another question: How much work is it to, as example, port a modified Gingerbread SystemUI.apk to ICS? (Or vice versa)
Click to expand...
Click to collapse
There are two roads you can go now - one is use apktool to *decompile* apk the apk file that you've taken from your phone, it doesnt convert the app to java source code but java bytecode in .smali files (like an assembly version of the source) but you will have access to the resource files (xml, images etc..) so you can replace them and create some new themes.
http://forum.xda-developers.com/showthread.php?t=1814441
http://forum.xda-developers.com/showthread.php?t=1760133
And no - a GB systemUI.apk will *NOT* work on ICS. It is very probable that any changes you make through any of these methods can brick you phone. So make sure you have CWM and a nandroid backup.
If you want to add/edit functionality within the source code of systemUI.apk, you need to learn how to compile Android from Source. i would suggest getting hold of the CyanogenMod source tree for your device and playing around with it.
Ginger bread is CM7 and ICS is CM9.
http://forum.xda-developers.com/showthread.php?t=1552090
once you have the full source tree, you'll find a folder called android/frameworks/base/core/...something../systemui/..
this will contain the javasource code for your application. Here you can edit stuff to your hearts content!
Note that this cannot be compiled standalone by eclipse. The Android build system must be used to compile this (cuz its a system app).
a nice resource i used when i was doing the same thing :laugh:
http://iserveandroid.blogspot.in/2011/01/how-to-implement-your-own-status-bar.html
cheers and have fun.
I've just started looking into porting ROMs (more specifically, ICS themes to Gingerbread), and I found a few tools that port the ROM for you. If it were really that easy, isn't it possible to port any ROM to any device? This might be a really stupid question and I'm not fully understanding what porting a ROM means.
These were the tools that I found:
http://forum.xda-developers.com/showthread.php?t=2196491
http://forum.xda-developers.com/showthread.php?t=2276871
kk415kk said:
I've just started looking into porting ROMs (more specifically, ICS themes to Gingerbread), and I found a few tools that port the ROM for you. If it were really that easy, isn't it possible to port any ROM to any device? This might be a really stupid question and I'm not fully understanding what porting a ROM means.
These were the tools that I found:
http://forum.xda-developers.com/showthread.php?t=2196491
http://forum.xda-developers.com/showthread.php?t=2276871
Click to expand...
Click to collapse
Generally porting a rom means to get a rom which you like of some other device to your device... Both the devices should be same screen resolution and same android version..
I use this guide :highfive: -> http://forum.xda-developers.com/showpost.php?p=32080012
So if I wanted to theme Gingerbread so that it looks like ICS (i.e. by editing Mms.apk, SystemUI.apk, etc), how exactly would I do so?
I found HoloEverywhere (https://github.com/Prototik/HoloEverywhere, README: https://github.com/Prototik/HoloEverywhere/blob/master/README.md) that lets developers theme their apps to the Holo Theme, but I'm not sure how to apply this to the Gingerbread APK files.
Hi,
I have seen people port touchwiz multiwindow (henceforth MW) from touchwiz roms of mid-level / high-level Samsung sets to low-end ones. Like there are ROMs for j7 2015 based on stock (which is NON-MW) that has all the MW features. I really want to learn how to do that.
I use MW a lot. It's not fair to bother busy developers demanding new releases when Samsung releases updates with security patches. I would like to do it myself.
So far i have discovered extra xml files in /system/etc/permissions folder and a multiwindow.jar in framework folder . But i dunno anything else that might have taken place within framework res and other jar files.
Could soneone be kind enough to show me the path to enlightenment, please.
Thanks and regards,
P. S. I tried contacting the developer, but he seems really occupied with something at the moment.
Is it possible to port some particular feautres of any given Rom to another Rom(say Stock android rom) keeping all the properties of the Rom remain same.
Explanation:
Let us say we need some features of a MIUI and some other features of EMUI, Is it possible to add those features from those roms to the original Stock rom or Some other Roms of the mobile.
Also Is it possible to make the Rom of some other mobile (which has similar specs that of my mobile ) to work on my mobile..
Actually I am just a noobie & newbie to the field of porting Roms, I had these doubts stuck up in my mind from long time.
Some people extract the APKs from specific ROMs (for instance, I managed to get MIUI's Ambient Doze working on a different ROM) and install them on other ROMs.
However, that isn't always the case because some mods have been built into system APKs such as the SystemUI apk.