Need help with starter app in eclipse - Android Q&A, Help & Troubleshooting

Hello,
I am very new to eclipse and java programming and I am attempting to create a simple soundboard as a starter project. I have already created my raw folders and have all my files in the correct folder. I have my main.xml setup and my layout prepared with the graphics icons etc. Just the last part I cannot figure out. In the properties for the button I have enabled the button to be clickable and enabled soundfx. My guess was I have to create a Onclick string and assign the sound file to the string and button. I am feeling kind of lost if anyone can help me out would be greatly appreciated.
Leigh G.

Related

[APP][01.08.2011]SettingsExporter v0.1 beta – customisable registry backup

Hello,
I present my second Windows Mobile app:
SettingsExporter – I think the name is self-explaining. I tried to develop an easy to use application able to backup the vital system/user/programs settings and parameters to a .reg file, which enables the user to quickly restore the settings after a flash or HR.
Yes, we already have the fantastic fdcTaskManager from dotFred but this one exports either single registry key (with all the values and subkeys) or whole registry. My tool is able to store:
- single registry value
- several registry values in one key
- all the values of a key but without subkeys
- values which names start with a certain string
- values which names end with a certain string
- values containing certain string
- whole key with all subkeys/values
The last point is realized with a help of already mentioned fdcTaskManager under permission from dotFred (thank you Man!).
Program features/requirements:
- supports AppToDate
- requires NetCF 3.5 to be installed in your ROM.
- the app is partially dependent on the TaskManager from DotFred. A file called dotTaskMgr.exe should always be placed in program folder. Of course it is included in the download files.
- the program can run from any folder on both device memory or Storage Card. You don't even have to install it (that's why I included also a zip archive with all the files), you can just run it from the actual location. However the installation cab includes also program shortcuts (they appear in Start Menu) and files neccessary for AppToDate.
- REMARK: Because of .NetCF limitations the program cannot parse some of the value kinds, like REG_MUI or REG_QWORD however these types are used in so deep system settings that I wouldn’t even try to touch, so from this point of view they are not necessary for normal user customization purposes.
REMEMBER: never play with registry unless you know what you are doing. Always make backup of your data before you start to edit any registry values.
I spent many nights on testing this app and on choosing the settings worth exporting so everything should work fine (I made at least 10 flashes in the mean time and didn’t discover anything suspisious). However I cannot be held responsible for any damages to your ROM/device.
​
Below you can find my screenshots and download.
In following posts you can find also:
Program description - post #2
INI file syntax and notes - post #3
Description of default .ini files - post #4
How does it work?
Currently the SettingsExporter is basically a registry parser reading thru one (or more) of three config files (keys_....ini) in which the user puts keys/values that are supposed to be backed-up. For each line which is recognized as a registry value the program tries to gather it from the registry and writes to a (specified) text file as Microsoft Registry Entries (.reg) syntax. If the line is not recognized as a correct registry key/value or if it does not exist in the device’s registry, it is simply ignored.
Following the tip from Jackos (thanks Man!) there can be three config (.ini) files:
- keys_System.ini
- keys_Manila.ini
- keys_Other.ini
The user can choose to process one, two or all three .ini files. He can also choose if all the entries from the checked .ini files should be stored in one .reg file or the program should create one .reg file for each .ini file. This way we can divide our backup into groups and then restore them on different ROM (e.g. with different version of UI).
The main screen of the program consists of 5 main elements:
- “Current file path” text box with current path and name of the destination file. The path is initially set to \Storage Card\Backup\MyBackup.reg, but it can be changed either directly in this text box or using “Change File Name” button which opens the SaveFileDialog allowing you to choose a location and name for your destination file. Unfortunately the native .NetCF SaveFileDialog is poor and allows only to save in 2 folders depths, so this is the reason why I left the text box unlocked to allow manual editing of the path. Additionally when closing SettingsExporter saves last used path in registry so when you open it for the second time the initial path will be “yours”. This feature can be switched off in options.
- 3 checkboxes allowing you to choose which .ini files the app should process
- Save File button starting the Backup procedure
- Menu softkey allowing you to change the program options
- Exit softkey that (surprisingly) closes the application.
The Options screen (you can open it via Menu -> Options) is also very simple:
- Save all settings in one file – when you tap “Save File” all the .ini files which are “checked” in the main window will be processed and the effect will be saved in one file mentioned in the “Current file path” text box in the main window.
- Save in separate files – the “checked” .ini files will be processed but this time the effects will be stored in separate files. There will be separate destination files created basing on the same file name from the “Current file path” text box, but with appropriate suffix, so using the default MyBackup.reg file name, the destination files will be MyBackup_System.reg, MyBackup_Manila.reg, MyBackup_Other.reg.
- Backup previous output files – if any of the output (destination) files already exists it will be copied with “_old” suffix before writing new file.
- Associate Reg Files to fdcTM – this button associates the files with .reg extension to the fdcTaskManager which is located by default in the program directory. From this point on you can tap on a .reg file in File Explorer and it will be automatically imported to the registry. Use this function to easily restore your .reg files.
- Save last backup path – this option enables saving last used backup (destination) path upon program exit. Remember – the path is written to registry when you close the program. So if you configured the .ini file to store also SettingsExporter’s settings (stored in HKCU\Software\Skrobel\SettingsExporter) and you want to backup also this setting, you have to set the file path in the Main Window, then Exit the program (to write the path to registry) then open the program again and now you can press “Save File”.
ini files requirements
The .ini file should be a Unicode text file stored in the same folder that the program executable is stored. The names of the file must be exactly one of the names mentioned above (keys_System.ini, keys_Manila.ini, keys_Other.ini). Of course the “keys_Manila.ini” file is not reserved ONLY for values connected with Manila/HTC and the “keys_System.ini” doesn’t need to contain ONLY system settings. It’s my proposal for the entries grouping, but you can change the contents according to your own needs. Only leave the file names intact.
About the syntax:
I tried to make the syntax of these .ini files as simple as possible. So it’s really similar to the syntax of a normal .reg file, exctept it does not need a “REGEDIT4” nor “Windows Registry Editor Version 5.00” at the beginning and of course the values cannot be given next to the valuenames. Here are some examples of the content of an ini file:
Code:
[HKEY_LOCAL_MACHINE\SOFTWARE\WIDCOMM\Connections]*
[HKEY_LOCAL_MACHINE\nls\overrides]
*
[HKEY_CURRENT_USER\Software\Microsoft\Inbox\Settings]
"SMSDeliveryNotify"
"SMSAvailable"
"SMSUnicode"
[HKEY_LOCAL_MACHINE\SOFTWARE\HTC\QuickGPS]
actSync
auto
roaming
[HKEY_CURRENT_USER\SOFTWARE\HTC\MANILA]
Manila://*
"Weather*"
*Co0kie*
*Enabled
And what does it mean?
Code:
[HKEY_LOCAL_MACHINE\SOFTWARE\WIDCOMM\Connections]*
It means that the specified key will be stored with all it’s values and subkeys (if there are any).
Code:
[HKEY_LOCAL_MACHINE\nls\overrides]
*
This one means that all the values under the [HKEY_LOCAL_MACHINE\nls\overrides] will be stored but without any subkeys.
Code:
[HKEY_CURRENT_USER\Software\Microsoft\Inbox\Settings]
"SMSDeliveryNotify"
"SMSAvailable"
"SMSUnicode"
[HKEY_LOCAL_MACHINE\SOFTWARE\HTC\QuickGPS]
actSync
auto
roaming
In these two cases only the mentioned values will be stored from the specified key.
Code:
[HKEY_CURRENT_USER\SOFTWARE\HTC\MANILA]
Manila://*
"Weather*"
*Co0kie*
*Enabled
And this is an example of using regular expressions.
Manila://* - means that all the values with names starting with “Manila://” will be saved
*Enabled - means that all the values with names ending with “Enabled” will be saved
*Co0kie* - means that all the values with names containing “Co0kie” will be saved
As you can see the quotes are ignored so you can put valuenames with or without them and it will not make any difference for the parser.
The current version of the program includes my .ini files that are a result of long and careful tests and save most of the configuration of WM6.5 and WM6.5.x. I created these .ini files on HTC Rhodium and different Jackos ROMs. Most of them should work on a variety of HTC devices, however I've already seen that many settings for HTC Kaiser is stored in different locations than on Rhodium. But as I wrote before: if a registry key/value mentioned in the .ini file is not found in the actual registry, it will not be stored in any form.
On the other hand some of the key names may not work or not exist on different devices/ROMs. Especially when you try to restore a bunch of settings taken from a Sense 2.5 ROM on a Titanium or CHome ROM, you should expect some problems. That’s where grouping comes in handy.
If you have ideas for other registry values which should be backed-up by default or settings for popular third party programs I don’t use, please share key/value names here with a short description of what the values mean. I will put them in the default .ini files so other users can benefit from them.
What settings are included in default .ini files
keys_System.ini
In this file I included many settins which are changed via standard Windows Mobile Control panel applets and a bit from Advanced Config:
- notifications settings (remember - when you restore these settings after a flash, you have to make sure your ringtones and sound files must be in the same places that they were during backup)
- locale/time zone information (no language specific settings, only message coding, date/time/number formats, locale and time zone)
- messaging settings like threading, delivery report, unicode etc.
- paired Bluetooth devices
- owner information
- volume settings
- screen off/suspend timeouts
- some phone/dialer settings
- Font size/Clear type
- basic ArcSoft MMS settings
- last used profile
- clock/alarm settings
- AGPS
- hardware button assignment (only Long Press Send Key on Rhodium)
- Long Press EndKey action
- some other settings like noise reduction, AGC, USB to PC and less important parameters
Click to expand...
Click to collapse
keys_Other.ini
In here I stored some of the third-party applications I use. Please propose other applications with their settings and I'll add them:
- PimBackup
- HTCAccountManager
- Palringo
- Total Commander
- RSS Hub
- SK Tools
- Spb Backup
- cleanRAM
- Skype
- ultrashot UTask
- Quick Shutdown
- QuickGPS
- Whip2Snap
- last but not least - own SettingsExporter settings
Click to expand...
Click to collapse
keys_Manila.ini
Manila has many versions with extremely different settings and behaviours so I tired to store ONLY the most basic settings which should work on all the manila versions (correct me if I am wrong):
[HKEY_CURRENT_USER\SOFTWARE\HTC\MANILA]
HomeBackgroundPath - self explaining
AnimationWallpaperFolder - default folder for "choose background" option
Home.WallpaperMode - setting connected to full screen weather animation
Manila://* - this allows to store the configuration of showed/hidden Sense tabs
"Weather*" - settings for Manila weather
Of course I could add here all CHT settings, but there are also different versions of CHT on the "market" so I personally prefer to use CHT Editor backup/restore functions than to try to make universal backup utility for Co0kie settings. But if you guys have some hints on this topic I appreciate any help.
Click to expand...
Click to collapse
I will try to post here detailed description of all the values I know and will try to add here all suggestions from the community. But this unfortunately depends on my free time...
this is post #5
post #6 just in case...
Congratulations on your release I'll try and report back soon!
Looks great.........
oh thanks a lot! i like to play a lot with co0kie home tab 2.0 and also with the registry so it will be very useful to save some lines of a reg key. In CHT 2.0 all setting are in hkcu/software/htc/manila/CHT.*** (also CHTE.*** and CHTI.***) and i would like to save registry setting like CHT.Tweaks.***
I will try and report back later. Thanks again!
c_shekhar said:
Looks great.........
Click to expand...
Click to collapse
It looks ****, but works great
Jackos, you always know something good to say.
Good morning Skrobel,
Once again thank you for taking the time to develop this application. Sorry I didn't get back to you earlier. I had technical difficulties.
Following our recent conversation I'm posting below my findings about version 0.1 beta.
Pros:
Easy, intuitive UI
3 customizable registry patterns for different settings
A lot of 3-rd party software patterns
Thought-out set of settings
Cons:
90's looking UI
No support for exporting Twitter and Youtube Account Manager settings
Poorly implemented AppToDate support
Partly Sense and CHT support
No way to backup e-mail accounts and signatures (I know it's difficult to assemble)
No file backup at all
No support for all registry types (not really needed through)
I think you will agree that this app still needs further development. In my opinion Sense SDK is good enough to start with.
Yours truly,
Jackos
Hello,
Thank you all for your comments. I plan further development, so whatever you will find, I will at least try to solve.
@Jackos
You deserve special thanks. I don't wan't to defend myself but please remember I am still n00b if about programming And I'd like to comment at least some of your cons:
90's looking UI - I fully agree. This is still on my "to-do" list. Honestly I have already tried to run the Sense SDK from eboelzner (on an early stage of the app) and I just couldn't get the controls to appear on the form. I haven't spent much time on it though as this was not the most important thing to do. And there are only a few controls in this app which are big enough to operate with finger
Poorly implemented AppToDate support - honestly I did it same way as you did for your ROMs I know there is a possibility to download up-to-date cab directly from within the program, but I think the vital thing is to inform the user that something has changed. Nevertheless I will try to improve also here.
No way to backup e-mail accounts and signatures (I know it's difficult to assemble) - yes, you're right. And WiFi settings would also be fantastic to backup. I honestly don't know how to handle it. I did an extensive search among some developers forums and nothing up to now...
No file backup at all - this honestly was not in my plans. I use SettingsExporter in conjunction with PIMBackup in which I have my configuration (stored by the SettingsExporter by the way), and I backup all my files, contacts, messages and calendar within 2 clicks. I don't think any file backup is necessary...
No support for all registry types (not really needed though) - I've seen a tool written using NetCF where (according to the description) it is possible. I will ask the developer for help.
The rest of the "cons" concerns the configuration files which are subject to develop continously and independently on the tool itself. I was kinda hoping that this thread will grow with suggestions of other values of which I don't know and/or I don't use. So whatever you feel should be placed here, please post it hence help to improve for other users.
Skrobel said:
No way to backup e-mail accounts and signatures (I know it's difficult to assemble) - yes, you're right. And WiFi settings would also be fantastic to backup. I honestly don't know how to handle it. I did an extensive search among some developers forums and nothing up to now...
Click to expand...
Click to collapse
There are some encryption algorithms that aren't reverse-able. I have no knowledge with one is used in WinCe so maybe it's not possible at all. You could try to backup settings without including passwords.
I guess we have to ask ultrashot. He knows nearly everything about nearly anything
Skrobel said:
I guess we have to ask ultrashot. He knows nearly everything about nearly anything
Click to expand...
Click to collapse
He's disassembling WM and SE mobile systems since he stopped using chamber pot
Strange, 35 downloads and nobody reported further problems? I don't believe there aren't any.
I dig up the e-mail and WiFi backup, but no real results yet. On the other hand I know how to handle the Sense SDK controls, so the next release will probably have better look as requested. But I don't want it to be the only update, so report guys, report
Runs fine on my Axim X51V running WM6.5. I've been using an old app until now called SettingSavior. And for specific third party apps, if I was able to find a registry entry where the registration key was stored, I used SKTools to create a reg file for that. then I used Shashimi to import cabs and .reg files.
Will explore your app more.
Some suggested other 3rd party apps for setting backup:
Sprite Backup
Galarm
Resco Explorer
Pocket Music
I used similar method to store my settings. I used CeRegEditor to make an "image" of the registry, then I changed my settings (also for third party apps), then I compared the saved image with the current state.
But if you use these programs and you have your setup created with SKTools, could you share it with me? I could check what settings are used for these apps, and update config files with them.
Thanks for creating this useful application ,I use this application, PIMBack-up and XDA_UC_NET - portable to fully automate the restore. Now a Hard reset or ROM update is a breeze.
Regards [email protected]

Editing smali code.

Hey you gurus out there. Any extra ordinary person out there? Help me edit some smali code to add the buttons in my rom.
I av added the resources to framework-res.apk added the images and added the necessary values in the strings.xml, public.xml. damn those files are hard to edit. I had to do vb.net application to scan available item ids. But wen it comes to editing the smali files it really hard for me. Would be happy if anyone help me out
Sent from my TECNO N3S

[APK][Xposed] ResXploit : Theming your android the easiest way! No decompiling APKs!

This would be my second public-released xposed module...
(A duplicate thread is also posted in the Android Themes Section, so user who are only interested in themes can also see this)
I did not expect that my WisdomSky Xploit would be a big hit.
I'm just an Amateur developer who just started delving into android development 3months ago and I didn't expect that much appreciation from my work... XD
But all of these would not be made possible if not because of sir @rovo89 and sir @Tungstwenty and their Xposed Framework, right? That's why I thank them a lot...
REQUIREMENTS
Xposed framework must be pre-installed before installing this.
What does the ResXploit do?
ResXploit has two parts:
the Removable part, terminal
and the main star, engine
The terminal is where you enter the commands(I'll discuss it later). These commands will then be interpreted by the engine and then passed to Xposed framework...
Flow:
TERMINAL >> ENGINE >> XPOSED FRAMEWORK
I have provided a variety of modules:
ResXploit (Terminal + Engine) (RECOMMENDED FOR NEWBIES)
ResXploit Terminal (Terminal Only)(DEPRECATED)
ResXploit Engine (Engine Only)
You might be wondering why I made one which has both terminal and engine... and other two which are separated...
ROM Chefs, Themers and some others would understand directly why...
All the commands are interpreted by the Engine right? so that would mean that once you have entered all the desired commands, the terminal will now end up as useless... so you will just delete so no one can touch the engine...
If you are a ROM Chef or a themer, you can theme all the apps you need to theme using ResXploit and then remove the terminal, so end-user interaction of the engine is prevented after you have released your ROMs to the world.
FOR NEWBIES!
I recommend you to use the ResXploit (Terminal + Engine)...
It is very smart..
I included 99% accurate error-checking system,
line numbering system,
and also Xposed module prioritization(which is first implemented on ResXploit for better module performance).
COMMANDS
We have four basic commands in the ResXploit, the apk, drawable, string, and boolean.
apk - A prerequisite command. This command is very vital whenever you using the ResXploit. This will define the target application by using the package name of the target application. You need to include this before you enter any command or else your command will not know which application is targeted and end up in lost island.
Code:
[B]format[/B]: [I]apk <package name>[/I]
[B]example[/B]: apk com.android.systemui
drawable(also drw) - The most often used command. The command which will change icons/images (png drawables) of an application. You can either overlay the existing image with your favorite color or completely replaced it with a .png image from your sdcard.
Code:
[B]format1[/B]: [I]drawable <target application's drawable name> <image path, no need to include /sdcard> <transparency, 0 to 255>[/I]
[B]example1[/B]: drawable status_bar_background bg.png 255
[B]format2[/B]: [I]drawable <target application's drawable name> <HEX RGB color code> <transparency, 0 to 255>[/I]
[B]example2[/B]: drawable status_bar_background #fff00ff 255
string(also str) - This command will change string(text) values of the application. The predefined string values are usually located in res/values/strings.xml of an application, but I guess they are not visible when you view the contents of an application using Archive managers like RootExplorer. But there is a way to identify them. I will include it later.
Code:
[B]format[/B]: [I]string <target application's string value holder name> <replacement string>[/I]
[B]example[/B]: string app_name My App
boolean(also bln) - This command will change boolean values of the application. The predefined boolean values are usually located in res/values/bools.xml of an application, but I guess they are not visible when you view the contents of an application using Archive managers like RootExplorer as well.
Code:
[B]format[/B]: [I]boolean <target application's boolean value holder name> <replacement boolean value, either [B]true[/B] or [B]false[/B] only>[/I]
[B]example[/B]: boolean allowNumberNotifications true
Some simple examples screenshots:
drawable and string commands in action
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
ResXploit UI screenshots:
If you find my ResXploit module interesting,
Please hit THANKS!!! XD:angel:
UPDATES & CHANGELOGS:
ResXploit Engine 1.0.8 - added support to framework-res(android).(latest)
ResXploit 1.0.8 - updated engine(1.0.8).(latest)
NOTICE: ResXploit is now an abandonware.
My flash drive where I stored the sources of my android projects was corrupted unexpectedly.
And also, my phone was broken. I have no device to use to re-write everything from scratch... Sorry...
Tutorial and samples
System Apps Package Names:
SystemUI - com.android.systemui
Settings - com.android.settings
Mms - com.android.mms
Contacts - com.android.contacts
Launcher - com.android.launcher
Gallery - com.android.gallery3d
File Explorer - com.android.qrdfileexplorer
Framework-res - android
Tip: If you want to find the package name of a specific application(not on the list), you can open Root Explorer(download it from googleplay) and then browse the apk you want to check, open it and choose "view". You can find AndroidMaifest.xml file inside. Open it then find the package="xxxxxxxxxxx". The words or group of words inside the quotations separated by a period is the package name of that application.
Note: ResXploit is far safer(in terms of error awareness) to use than the ResXploit terminal. If possible, only use ResXploit. In the simple tutorials below, please expect that I'm referring to ResXploit only.
Changing Statusbar background color
let's say color red...
Code:
#!/
apk com.android.systemui
drawable status_bar_background #ff0000 255
Changing Notifications Panel background color into transparent
Code:
#!/
apk com.android.systemui
drawable notification_panel_bg #000000 0
Changing Notifications Panel background with an image from sdcard
let's say that the png image is located in /sdcard/my_img.png
Code:
#!/
apk com.android.systemui
drawable notification_panel_bg my_img.png 255
You might be wondering where i'd get the target application's drawable filename?
Actually, you can just open the root explorer and view the files inside the apk of the target application. under the /res directory(folder), you can find a variety of subdirectories prefixed with [drawable, like drawable-hdpi,drawable-mdpi and so on... Basically, all images inside those folders are under the scope of drawable command in Resxploit. And if you want to target a certain image in the drawable folders, you just need to get the file name without the .png or .9.png. That's it!
Adding "comments"...
Comments in programming are human-readable additional information. If you want to put notes somewhere in your script, you can put "#" before your statement. When the terminal find a "#" before a statement, the terminal will ignore it and skip it. However if you will enter a non-command information and is not started withcl a "#", the terminal will ofcourse read it as command and then throws an error message.
Code:
#!/
# my comment. my comment. my comment
apk com.android.systemui
drawable status_bar_background #ff0000 255
# the terminal will skip the command below
# because it started with a "#"
#drawable oh_no #ff00ff 255
Defining working directory path of your images
If you want to start theming and you already have the images you want to use stored inside a single folder, then you can tell the terminal where these images are located so you don't need to enter the path redundantly.
You can define it on the very first line of ResXploit, after the "#!/" you can add the folder name or path to the folder.
let's say we have our images put in a folder in sdcard named my_images or /sdcard/my_images, then you can define it like this.
Code:
#!/my_images
#we can start theming now
drawable hello some_image.png 255
drawable world next_image.png 255
great work dude...noypi are very smart of course,,
Very interesting. I've been interested in theming for a while now but haven't gotten my feet wet. I'll be waiting for your tutorials. Great work mate!
Sent from my Galaxy Nexus
Nice! I love to see Pinoys In-Action with the XDA community!
Will wait for the tutorial of yours repa!
@greedisgood99999 Please stop that bad-habit of quoting... It's quite irritating tropa...
Wait for the tutorial
Sent from my Xperia Mini Pro
So ... a scriptable general purpose module. This is a phenomenal idea. OK still requires digging into the apk but a whole lot easier than building a new module from scratch.
Mission: Get rid of Armv7 calls the FC apps on my old clunker (also need help buying a new phone--if I had it, would have reserved the edge already!). Google Now first tries to init the "off line" voice recognition engine. Minimum, want to simply disable this call. I use overlays to prevent other such calls. Maximal, to replace with the old "on line" voice recognition engine.
Capability in this yet?
Among the booleans?
what say you
Dovidhalevi said:
So ... a scriptable general purpose module. This is a phenomenal idea. OK still requires digging into the apk but a whole lot easier than building a new module from scratch.
Mission: Get rid of Armv7 calls the FC apps on my old clunker (also need help buying a new phone--if I had it, would have reserved the edge already!). Google Now first tries to init the "off line" voice recognition engine. Minimum, want to simply disable this call. I use overlays to prevent other such calls. Maximal, to replace with the old "on line" voice recognition engine.
Capability in this yet?
Among the booleans?
what say you
Click to expand...
Click to collapse
i don'think so... because ResXploit's scope is only the res or resource directory of the apk structure...
if a boolean value is defined in the res/values/bools.xml that will actually toggle controls then it would be great... but i think, in your case it is deeply hard-coded to work like that...
Framework.res?
Can you theme the framework.res using this?
package name is only 'android' no com. or anything..
EDIT: Tried and it seems to go through ok, but nothing seems to change. Rebooted several times, changed an image in my keyboard, checked it was ticked in Xposed framework, setup a folder in my internal storage, checked superuser granted access, pressed high priority in settings. Don't know
Here's a debug log (uploading tomorrow, pc occupied)
Will this work for non system apps? The unlock button on the PowerAmp lock screen drives me insane because it's the only thing I can't change and I absolutely hate green.
Metallijim said:
Can you theme the framework.res using this?
package name is only 'android' no com. or anything..
EDIT: Tried and it seems to go through ok, but nothing seems to change. Rebooted several times, changed an image in my keyboard, checked it was ticked in Xposed framework, setup a folder in my internal storage, checked superuser granted access, pressed high priority in settings. Don't know
Here's a debug log (uploading tomorrow, pc occupied)
Click to expand...
Click to collapse
I'm so sorry for that...
in exposed, framework-res(android) uses different method...
so i forgot to implement it fo support the framework-res...
thanks for your feed back. I'll add it up and upload it later...
Rokonacdc said:
Will this work for non system apps? The unlock button on the PowerAmp lock screen drives me insane because it's the only thing I can't change and I absolutely hate green.
Click to expand...
Click to collapse
Ofcourse! it will work with non-system apps too... XD
This looks very promising, thank you for your work!!
here's a Debug
Here's my Debug log
Xperia Z 4.2.2, Images in internal storage, Xposed priority set low, all other xposed modules that I have installed disabled
Metallijim said:
Here's my Debug log
Xperia Z 4.2.2, Images in internal storage, Xposed priority set low, all other xposed modules that I have installed disabled
Click to expand...
Click to collapse
sir l've already added support for framework-res, please check the changelogs for the download link...
Interesting, sounds like a concept similar to Ninjamorph.
A couple of quick questions:
Is this able to apply folders or just single png's?
Also do you need extract png's from apks in order to apply or does it extract and apply automatically?
:good:
dully79 said:
Interesting, sounds like a concept similar to Ninjamorph.
A couple of quick questions:
Is this able to apply folders or just single png's?
Also do you need extract png's from apks in order to apply or does it extract and apply automatically?
:good:
Click to expand...
Click to collapse
Unlike ninja morph, in resxploit, there is no permanent replacing of resources happened... which means you can deactivate, share, edit easily anytime....
Q: Is this able to apply folders or just single png's?
A: only single pngs... 1 drawable command = 1 png... but there is no limitation on how how many commands you can add
Q: Also do you need extract png's from apks in order to apply or does it extract and apply automatically?
A: As what I've added on the title, "No decompiling APKs"... it means, no decompiling or extracting is involved in the process as what Xposed Framework aimed. You just need to put the image to replace inside your sdcard and just add a command to tell the engine "to replace that with this"... there is no permanent replacing of resources happened here... the image is just move into the /data partition and will be just overlapped to the target resource so there will be an impression of replacing of resources
I didnt mean does it decompile/extract full apks. I meant can you pull an resource/image out of the apk to apply.
I know it overlays instead of permanently overwriting the original resource, similar to Icon themer and XTheme engine.
Ninjamorph/ Metamorph unzips apks into folders so you can navigate through them and choose what you want to apply.
Example:
Choose target resource/image to change.
Choose apk to pull resource/image from.
Navigate and choose resource/image (extract if applicable) to apply.
This would be good if it also done the same. Although you could just unzip with an on board app like Zarchiver.
Basically it would make it a new and improved Ninjamorph/ Metamorph (dont tell Stericson i said that)
No offense, but looking at it from newbies point of view, it seems like a bit of a drawn out process if you were wanting to change numerous items.
I know it's early days and I'm sure this would be greatly improved with a GUI, if you decide to add one.
Personally speaking, i think this has massive potential and could be something very special. I applaud you, i wish i had your talent.#
Thanks.
I tried clicking on the changelog link, it gave an error "Invalid Attachment specified. This can happen for a variety of reasons-- most likely because the thread or post you are trying to view has been moved or deleted. Please return to the forum home and browse for another similiar post."
Not sure if its the file attached to the post that is the updated one or if the actual update got deleted. Please help me here
phanitej said:
I tried clicking on the changelog link, it gave an error "Invalid Attachment specified. This can happen for a variety of reasons-- most likely because the thread or post you are trying to view has been moved or deleted. Please return to the forum home and browse for another similiar post."
Not sure if its the file attached to the post that is the updated one or if the actual update got deleted. Please help me here
Click to expand...
Click to collapse
Oh sorry for that.. ill just upload it to a third party site and add the link...
thnx for reminding...
dully79 said:
I didnt mean does it decompile/extract full apks. I meant can you pull an resource/image out of the apk to apply.
I know it overlays instead of permanently overwriting the original resource, similar to Icon themer and XTheme engine.
Ninjamorph/ Metamorph unzips apks into folders so you can navigate through them and choose what you want to apply.
Example:
Choose target resource/image to change.
Choose apk to pull resource/image from.
Navigate and choose resource/image (extract if applicable) to apply.
This would be good if it also done the same. Although you could just unzip with an on board app like Zarchiver.
Basically it would make it a new and improved Ninjamorph/ Metamorph (dont tell Stericson i said that)
No offense, but looking at it from newbies point of view, it seems like a bit of a drawn out process if you were wanting to change numerous items.
I know it's early days and I'm sure this would be greatly improved with a GUI, if you decide to add one.
Personally speaking, i think this has massive potential and could be something very special. I applaud you, i wish i had your talent.#
Thanks.
Click to expand...
Click to collapse
thanks for the appreciation and to your suggestions...someone did suggest to me to add GUI...
I'm still a newbie in terms of androld... there's so much to learn first before I can fully implement whats on my mind...
My phone is also not that good for development... its so slow... XD
but if everything turns out good... then maybe I should reconsider...XD
WisdomSky said:
Oh sorry for that.. ill just upload it to a third party site and add the link...
thnx for reminding...
thanks for the appreciation and to your suggestions...someone did suggest to me to add GUI...
I'm still a newbie in terms of androld... there's so much to learn first before I can fully implement whats on my mind...
My phone is also not that good for development... its so slow... XD
but if everything turns out good... then maybe I should reconsider...XD
Click to expand...
Click to collapse
Which phone do you use?

[APP][ENGINE][2.3.6+][Xposed] Resflux - A powerful and very easy to use per-application theming module.

[APP][ENGINE][2.3.6+][Xposed] Resflux - A powerful and very easy to use per-application theming module.
Resflux
--------------------------------------------------------------------------------------------------
Do you want to THEME your phone easily, without learning how to do it?
Then you are in the right place!!!
Resflux is very straight-forward. It's very easy to use. You don't need to learn anything just to get started. All you need is your common sense. Once you launch the application, you will see very big buttons with one-word description of what that button will do.
And I forgot to tell you that Resflux supports Gingerbread 2.3.6 and up! yeah you heard it right!
Just use the ported version of xposed installer for gingerbread users...
What else can I do with Resflux?
Tons! All you need is the idea!
- Theming an app or all of your apps.
- Replacing icon and name of your apps.
- Translating app from one language to another
- Overriding default settings inside frameworl-res.apk, settingsprovider.apk and systemui.apk
- and many more posibilities!
Laboratory
The laboratory is where most things will happen. It is where you start theming resources of a specific package. You can theme as many as packages if you want.
After you have selected the target package, Resflux will redirect you to the Experiment area where you can see five buttons namely "Drawable", "String", "Color", "Boolean" and "Integer" though you can only see their icons.
When you click a tab, the list will be populated with the corresponding resources and their current values are even shown so you can tell if it is what you are looking for and trying to replace.
Drawable Tab
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
In the Drawable tab, previews of every drawables are shown and by clicking the selected drawable, you can replace it with a new one.
This is replacement drawable chooser dialog
String Tab
In the String tab, you can take a look at the list of all string resources in an apk. The current value is shown in each string resource and you can replace the value with a new one if you want by clicking it.
Color Tab
In the color tab, all the color resources are listed and the preview of each color is also shown. You can replace it with a new color using the HoloColorPicker dialog.
Boolean Tab
In the boolean tab, you can see all the boolean resources of an apk. Boolean is type where its value is only true or false. You can also change it anytime just like the other resources.
Integer Tab
The integer tab is new in Resflux, since the old Resxploit only supported Drawable, String, Color and Boolean.
Export
If you plan to distribute your work or do a back-up or share it to your friend, then you can export it anytime. You can select which packages you want to export and which are not to be included.
From there, you can also completely, remove all modifications made to a specific package by long-pressing the target package.
Import
If you have exported a mod or got it somewhere and you want to upload it into your Resflux, then all you need to do is to put the zip file inside /sdcard/Resflux. By putting it inside /sdcard/Resflux, Resflux will quickly find it, but you can still leave it in other directories as Resflux will also search the other directories inside your sdcard.
Download Link:
http://repo.xposed.info/module/com.iwisdomsky.resflux
Please leave FEEDBACKS or SUGGESTIONS
And don't forget to hit Thanks if you find it useful!
Change logs:
Code:
1.6.1
- Replaced AAPT with ResourceFileParser library
(This will fix resflux compatibility issue with Kitkat and Lollipop. Marshmallow is yet to be tested. This change also causes resflux mapping of resources to becoming 2-10x faster than before)
[B]REMOVE:[/B]
[COLOR="Red"]1.7
- support for kitkat and above.
- faster mapping of resources (the mapping of resources will be done in the cloud)
- requires internet connection.
- 3x lesser apk file size.[/COLOR]
1.6
- Disabled xposed installed check on app start.
1.5
- UI updates.
1.4
- fix for colors not working issues.
- fix for double "#" on color resource's values.
- minor ui updates.
1.3
- The scroll position will remain and will not jump to the top when resetting/restoring a resource's value.
- Resflux Compiler link
1.2
- Fixed the resource name bug where an exclammation mark will appear before the modified resource's name.
- Forced the screen orientation of the Experiment area to stay in Portrait mode to avoid crashes when accidentally changed your phone's orientation.
- Added a possible fix for crashes on Import area.
- Increased the minimum width of dialogs to occupy some extra space on phones with bigger screen.
- Added labels to the tab buttons in the Experiment area.
- Updated the modified resource high-lighting feature for better visibility.
- Fast scroll enabled. Useful when you are trying to find a specific resource in the list quickly.
- Hold press a modified resource to restore its original value back.
- Clear cache action. If an installed app has received an update, it is a good practice clear the package's cache in Resflux so all changes to the resources to the updated app will become visible to Resflux.
- Added ability to supply a specific hex value to the color picker dialog as requested by many.
- Drawable picker dialog has been completely removed and replaced with an image chooser intent which will open the Gallery by default.
- When on drawable tab, you can change the drawable image preview's size by pressing the MENU key of your phone. Take note, this will not actually reflect to the final result but only to the previews.
- Other few minor UI changes.
1.1
- resource caching system for faster consecutive access.
- high-lighting of the modified resources to distinguish changes.
- added large heap attribute to the application element inside the android manifest file.
- empty package mods cleaner for the packages directory of Resflux.
1.0
- Initial release
Disclaimer
Though Resflux can modify any application, it is not guaranteed that it is can successfully modify all applications.
XDA:DevDB Information
Resflux, Xposed for all devices (see above for details)
Contributors
WisdomSky
Xposed Package Name: com.iwisdomsky.resflux
Version Information
Status: Stable
Current Stable Version: 1.5
Current Beta Version: 1.0
Beta Release Date: 2014-06-22
Created 2014-06-22
Last Updated 2014-08-03
How to use:
STEP 1: First, open Resflux then click Laboratory.
STEP 2: Next you need to choose the application you want to modify from the list and then click it.
STEP 3: Once you have clicked an application, Resflux will start mapping it's resources, you need to wait until it is finished before you can start.
STEP 4: If the mapping of resources has finished, you can now start changing any resource from the list. They are actually categorized as Drawable(Images), String(Texts), Color, Boolean(Switch) and Integer(Number)
STEP 5: Once you're done, you need to reboot your phone in order for the changes to take effect.
Sample Scripts
Disables Low Battery Warning notification
http://upfile.mobi/575226
System Font color changer (you need to extract the zip first then choose the zip of your fave color)
http://upfile.mobi/575213
NOTE: To install the scripts, you need to put all of them inside /sdcard/Resflux folder in your sdcard and then open Resflux and select Import and choose the file.
Reboot your phone afterwards to apply changes.
Resflux is proven working on these devices:
Motorola Moto G running Stock KitKat 4.4.2
S4 i9505 LTE running C-RoM 7.1 KitKat 4.4.4
Samsung Galaxy Y S3560 running Hyperion 8 GM Final Gingerbread 2.3.6
Cherry Mobile Flare S running Stock JellyBean 4.1.2
Cloudfone Thrill 430x running Stock JellyBean 4.1.2
Samsung Note Pro 12.2 tablet
HTC M8 running GPE KitKat 4.4.3
Samsung Note 2 running Touchwiz KitKat 4.4.2
Samsung S4 Mini
Xolo A500 running IceCreamSandwich 4.0.4
If Resflux is working on your device, please post your phone brand and model. thanks!
Special Thanks
I would like to thank everyone especially @rayjr13 for keeping the Resflux thread alive and answering all questions of other resflux users. Thank you very much! :good::good::good:
I would also like to thank all who donated! Please send me your names.
Source Code
Link.
Paypal Donations
If you have a very nice heart and want to make my wish come true, please don't hesistate to send your donations to my paypal account: [email protected]
Scripting
(For themers and programmers)
Apart from the Laboratory where users are provided with user-friendly interface, there is an another way to make modifications and that is by using the scripting feature of Resflux.
Soon, I will be focusing on adding more features to it. One is providing support for layouts. Not the whole layout, but to the components inside defined with an id.
When you export packages mod in Resflux, you will be given a zip file. And when you look inside it, you will actually find atleast a Resflux.ini file. And when you look inside the Resflux.ini file, you will see how Resflux turn everything into series of keys, sections, comments and how they are arranged.
The structure of the Resflux.ini complies with of an INI file as defined here:
http://en.m.wikipedia.org/wiki/INI_file
From the INI File wiki page, you can learn about which one is a key, section or comment.
From it, you may start studying how to write your own.
If you are a programmer, you may find it very easy to understand on how it works. And you can see that you are like dealing with objects. For now, we only have drawable, string, color, boolean, integer, layout, resflux and ini.
Rules
Resflux have rules in when it comes to syntax, grouping and arrangement.
RULE 1: The Resflux.ini can contain only keys, sections, comments and blank lines(with space or not) and should follow their corresponding syntax and must occupy a line therefore two keys in a single line is not honored.
For comments:
Code:
# [any text here]
; [any text here]
For sections:
Code:
[package.name.here]
For keys:
Code:
object.property_name = value
object.property_name : value
For blank lines:
A an empty line or composed of whitespaces.
If an invalid syntax is found, resflux will return error status 0
RULE 2: All resflux.* must be grouped together and must be placed before sections and any other keys except comments.
When this rule is violated, Resflux will return Error Status 1 during an attempt of importing it.
Rule 3: ]: All ini.* must be grouped together and must be placed after resflux.* and before sections and any other keys except comments.
When violated, it returns error status 2.
Rule 4: Before starting defining a key, you must have atleast defined a section. A section is composed of a opening square bracket "[", followed by the package name of the target app, and then a closing square bracket "]".
For example:
Code:
[com.my.app]
Rule 5: Each key must follow their respective value's format.
For drawable:
it could be a PNG image relative path like:
Code:
drawable.ic_launcher = icon.png
# or it could be also a color hex code:
drawable.ic_launcher = #ffff0000
For color:
color can have a single possible format for its value.
Code:
color.bg_color = #ff0000
For boolean:
boolean can only have two choices, the value could be either true or false.
Code:
boolean.enable_nothing = true
boolean.enable_nothing = false
For string:
string can have any value.
Code:
string.app_name = anything you want!!!
# enclosing value with quotes is also fine and work with all types of keys
string.app_name = "!want you anything"
OMG! the first themeing engine for gingerbread! many thanks sir! much appreciated it! :good:
i'm gonna try it soon & report back.
Two quick questions:
Will you upload this to the Xposed repo?
Do you plan on making the source available?
Thanks
GermainZ said:
Two quick questions:
Will you upload this to the Xposed repo?
Do you plan on making the source available?
Thanks
Click to expand...
Click to collapse
Thnx for the reminder sir...
I've uploaded it to the Xposed Repo.
I'm also planning to make it open sourced, but I still need to fix some things up. XD
Excelent work.
Enviado desde mi LG-D802 mediante Tapatalk
Has anyone been able to use this with Hangouts at all? It seems to never get past the "Mapping Resources" screen...
EDIT: Maybe I'm just not waiting long enough. Is it normal for it to take more than 10 minutes to map resources for some apps?
GermainZ said:
Two quick questions:
Will you upload this to the Xposed repo?
Do you plan on making the source available?
Thanks
Click to expand...
Click to collapse
mattdm said:
Has anyone been able to use this with Hangouts at all? It seems to never get past the "Mapping Resources" screen...
EDIT: Maybe I'm just not waiting long enough. Is it normal for it to take more than 10 minutes to map resources for some apps?
Click to expand...
Click to collapse
It really depends... if the /res dir contents of the apk file is really big for example (more than 1k resources) then it should take some considerable time... and it will also depend on ur phone's processing power...
I tested the framework-res.apk with a quad-core phone(not mine) and it took more than 30secs...
and when I tried it with my Samsung Galaxy Y, it took almost a lifetime...
WisdomSky said:
It really depends... if the /res dir contents of the apk file is really big for example (more than 1k resources) then it should take some considerable time... and it will also depend on ur phone's processing power...
I tested the framework-res.apk with a quad-core phone(not mine) and it took more than 30secs...
and when I tried it with my Samsung Galaxy Y, it took almost a lifetime...
Click to expand...
Click to collapse
Yeah, I let it go even longer, and it finally finished. I'm on an S4 Mini, which only has a dual-core Snapdragon 400.
Now my other problem is that when I look in the drawables of Dialer or Camera, there doesn't seem to be any launcher icon in the list. (I'm running an AOSP-based rom, FYI)
mattdm said:
Yeah, I let it go even longer, and it finally finished. I'm on an S4 Mini, which only has a dual-core Snapdragon 400.
Now my other problem is that when I look in the drawables of Dialer or Camera, there doesn't seem to be any launcher icon in the list. (I'm running an AOSP-based rom, FYI)
Click to expand...
Click to collapse
I believe the Camera is part of Gallery.apk and the Dialer is on Phone.apk
WisdomSky said:
I believe the Camera is part of Gallery.apk and the Dialer is on Phone.apk
Click to expand...
Click to collapse
Ohhhh, right. Now I feel dumb. This is an awesome module, I'm gonna have fun with it!
I'd like to offer a UI suggestion if I may though. Some of the lists are very long, and they scroll very slow on my phone. How about enabling a draggable scroll bar on the lists, so we can jump down to the bottom quickly?
mattdm said:
Ohhhh, right. Now I feel dumb. This is an awesome module, I'm gonna have fun with it!
I'd like to offer a UI suggestion if I may though. Some of the lists are very long, and they scroll very slow on my phone. How about enabling a draggable scroll bar on the lists, so we can jump down to the bottom quickly?
Click to expand...
Click to collapse
someone actually granted your wish already...
http://forum.xda-developers.com/xposed/modules/mod-force-fast-scroll-force-listviews-t2785006
WisdomSky said:
someone actually granted your wish already...
http://forum.xda-developers.com/xposed/modules/mod-force-fast-scroll-force-listviews-t2785006
Click to expand...
Click to collapse
Oh, nice! Thanks for pointing that out.
New problem...I changed the Hangouts launcher icon, but it's not actually changing after I restart. Any idea why this might be?
mattdm said:
Oh, nice! Thanks for pointing that out.
New problem...I changed the Hangouts launcher icon, but it's not actually changing after I restart. Any idea why this might be?
Click to expand...
Click to collapse
have you check the resflux in the xposed installer?
are you using samsung's default launcher?
coz I think it caches the packages' icon that's why u can't see the changes...
WisdomSky said:
have you check the resflux in the xposed installer?
are you using samsung's default launcher?
coz I think it caches the packages' icon that's why u can't see the changes...
Click to expand...
Click to collapse
Yes, I have it checked in the Xposed Installer. No, I'm using the Google Now Launcher (running SlimKat). The xSuite module also has trouble changing the Hangouts icon...there must be something different about it than other apps.
Great
Enviado desde mi unknown mediante Tapatalk
mattdm said:
Yes, I have it checked in the Xposed Installer. No, I'm using the Google Now Launcher (running SlimKat). The xSuite module also has trouble changing the Hangouts icon...there must be something different about it than other apps.
Click to expand...
Click to collapse
does resflux works fine with the other apps?
WisdomSky said:
does resflux works fine with the other apps?
Click to expand...
Click to collapse
Actually, I'm not sure. It's taking me quite a long time to test...I haven't been able to find a launcher icon to try to change in Phone, Dialer, Camera, Gallery, or Chrome. And each time I try a new app, it takes 5 - 10 minutes to map the resources. I'll find a small app to try and let you know...
EDIT: Ok, I just tried changing the icon of Buildprop Editor, and it worked perfectly.

Help with IPTV Core

I made an m3u playlist with all the greek channels and I decided that I should make an android application. Since I am not a java programmer and I have never worked with android development I found that githubcom/AlexanderSofronov/iptv.example and it was perfect for me.
I download the zip and extract the containing folder in my desktop. I have edited the MainActivity.java folder and add an m3u location and also changed the layncher icons. Can you tell me what to do next in order to make it an apk?

Categories

Resources