[TOOL][LINUX/WIN]Android Auto-Localization - Translate Strings.XML - Localization

Android Auto-Localization - Translate Strings.XML
This is a project to localize your Android app , by translating your string resources(e.g. `strings.xml`) automatically using Microsoft Azure Translate.
It requires Microsoft Azure Translation API key (instructions below).
Helps developers localize their Android app easily to 56 languages, with just one click.
Features
Translates to 56 languages
Cache translations so you dont end up using all your quota everytime
Handles some XML escaping
Usage
Download the Source Code from https://github.com/akhilkedia/Android-Auto-Localization_Translate-Strings.XML
Simply edit the constants in `src/main/Const.java`
Run the java code (using Eclipse/AndroidStudio/etc. in Windows/Linux.) - It will generate all possible translations for you
How to get FREE Microsoft Azure Translate Subscription Key
Sign up for a Microsoft Azure account. If you don’t already have an Azure account, sign up for a Microsoft Azure account at http://azure.com.
After you have an account, sign into the Azure portal at http://portal.azure.com.
Add a Microsoft Translator API subscription to your Azure account -> Choose a pay-as-you-go subscription (Will require a credit card, but don't worry, nothing will be charged) -> Select the + New option -> Select Intelligence from the list of services -> Select Cognitive Services APIs. Select the API Type option -> Select Text Translation. In the Pricing Tier section, select the Free Tier (F0) -> Fill out the rest of the form, and press the Create button.
Retrieve your authentication key -> Go to All Resources and select the Microsoft Translator API you subscribed to -> Go to the Keys option and copy your subscription key to access the service.
Limitations
Does not handle String Arrays so far
Does not handle CDATA
Keep your strings simple, and this will work just fine. For any issues, post here or on GitHub. Or even better, send a pull request.
Contributors
akhilkedia94
Source Code: https://github.com/akhilkedia/Android-Auto-Localization_Translate-Strings.XML
Version Information
Status: Stable
Current Stable Version: 1.0.0
Stable Release Date: 2017-01-29
Created 2017-01-29
Last Updated 2017-01-29
Cross-posted from - https://forum.xda-developers.com/android/software/tool-android-auto-localization-t3547133

Related

[APP] Cyanogen Updater v1.1.1 now available [UPDATED 8/10/09]

I know the official thread for this app is over in the developer's section but that's only because it was a collaboration of developers and coders that brought it to fruition. But since it is an app after all, I thought I would post here just in case people using CM builds don't visit the developer forum on the regular.
For those who don't know, Cyanogen Updater is an application based off the JFUpdater and does exactly what you would think. Its obviously only useful for those who have root and use Cyanogen builds but it is a great time saver and helps keep up with the latest builds especially the experimental ones. It is capable of searching for updates for both experimental and stable builds (options are found by pressing menu) and has the option to apply the update immediately or apply it later.
Development for this app has really taken off and went from concept to downloadable app within about a day complete with awesome Cyanoganized graphics! The development thread moves fast and updates are soon to follow.
The app can be downloaded directly from the Market or installed with adb after you download it from our google code page.
Here are all the links you will need:
Google code page to find the change logs, to-do's, report bugs, see screenshots of it in action, and to keep up with the latest versions:
http://code.google.com/p/cyanogen-updater/
The official thread is in the developer's section: Please avoid cluttering the page with "downloading now" type responses. Suggestions are always welcomed and I think we would like bugs report to the google page rather than in the thread:
http://forum.xda-developers.com/showthread.php?t=544663
Enjoy!
Nods and change log (updated 8/10/09)
CHANGELOG
V1.1.1 (current)
* Mainly just string fixes (better English, Capitalization, CM instead of JF)
* Some minor UI enhancements (background, alignment)
V1.1
* Added graphics by prash
* Allow choice of showing experimental builds or just stable builds
* Workaround for Issue 1 (see tracker)
* Fix for Service not firing at startup
* Lots of other changes that senab can't remember...
Upcoming Features for the next Release
* Update check period can be set to manual
* Metadata-File changed to JSON Format
* Set the Location of the MetaData? File via Preferences
* MD5SUM removed from Metadata File. Its getting downloaded from the Server
* Updates are now stored in the cm-updates Folder on SD and also get applied from there
* Abbility to delete the whole UpdateFolder? via the App
* The "Existing update.zip found" replaced with a Dropdownlist of all updates in the cm-updates Folder, so the User can choose which one to apply
* Updates are not renamed to update.zip. the original filename from the server is taken to store them in the new folder. So you can have multiple updates in the folder
* A little Bit Connection cleanup on Mirror Changes
* New Infos in DownloadDialog?: Filename, Download Speed and Remaining Time
* aTrackDog support
* Russian, German, Italian, Dutch, French, Portuguese and Spanish Translation
BIG thanks to garok1989 and all the XDA members who helped make this possible and especially to:
Coders - senab, willmav5000, tuxfoo, Firefart and of course Sergi Velez for the original JFUpdater...
Artwork - prash, amarkowz, matt_stang, kingsizeriz, and all others for helpful suggestions...
Translations - FireFart, DavidChill, Moksha, Gamempire, Wiebbe, Chahk, Offcina, ss1271 and all the others
BIGGEST thanks to Cyanogen himself for bringing us great ROM's, recovery images, posting this to market, and helping us along with this project.
THANKS CYANOGEN!!!
Edit lol...
Nevermind I didnt read your post all the way and you clearly stated it was in the Market lol
Is this the same one that is in the Market? I just ran across about 5 minutes ago in the Market

[EXT3 + Turbo Kernel] GoDroid v.8 + Wifi-Tether [01 Dec 11]

{
"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"
}
[EXT3 + Turbo Kernel] GoDroid v8 Froyo 2.2.2 Build
Kernel: Duckly's Turbo with keypad drivers not as modules.
Launcher: Go Launcher EX.
After following different ROMs for my Xperia x1, in this new version I’ve decided to add my reviews to an eclectic ROM based on Needo (I remastered his Honeycomb framework), Neopeek (I took part of NeoFroyo build structure and I've used it as a base, great work), jerrytan93 (I've decided not to use his implementations), helicopter88 (we just use Midnight v9 Kernel for installing the rom in EXT3 format) and XDAndroid (FRX07) developments. So, special thanks and credits for all of them.
Modifications included that I consider fundamental respect advances made in other roms:
- A versatile launcher.
- Battery icon shows % sync.
- An ext3 format without journaling to waste less battery.
- No key freeze, no SOD.
- Market problems solved.
- Wifi-tether problems solved.
- Unstable wifi problem caused market solved.
- Bootanimation changed.
Now, everything is working except camera.
The rom only include English and Spanish language. But inside the bundle you can find GoKeyboard (to be installed by your own) and I've uploaded for Gokeyboard the next language package (to be installed by your own, too): LangPackage.zip (Arabic, Bulgarian, Croatian, Czech, Danish, Dutch, Filipino, Finnish, French, Georgian, German, Greek, Hebrew, Hindi, HongKong, Hungarian, Indonesia, Italian, Japanese, Lithuanian, Norwegian, Persian, Polish, Portuguese, Romanian, Russian, Slovak, Slovanian, Spanish, Swedish, Taiwanese, Thai, Turkish, Ukrainian, Urdu, Vietnamese)
Changelog GoDroid v8
- Added Whatsapp v2.7.
- Added Load Monitor v1.4.2.
- Added Quick Settings v.1.9 (credits to izzyk)
- Added GoLauncherEX v2.63 (I use that version for better performance).
- Added GoDialer and GoContacts v2.05 (fix phone call problems, credits to casualt).
- Added GoLocker v1.04 (Click “Menu>Preferences>Theme Settings>GO Locker” to use it).
HOW TO:
01. Download the bundle: “GoDroid_v8.0.9_bundle.zip”
02. Install the new bundle following the next instructions.
(NOTE: Please check the downloaded files name because some web browser rename them adding an space bar between the dot and the file extension, for example: GoDroid_v8.0.9_bundle.^zip)
*01. Instructions:
01. Remove the SIM card till the installation will finish.
02. Split the SDcard with Minitool Partition manager (Freeware Home Edition) into 4 partitions (it’s important to set the partitions as PRIMARY):
---> 1st partition: FAT32 (SDcard / Rest)
---> 2nd partition: EXT3 (System / about 150 MB)
---> 3rd partition: EXT3 (Data / about 250 MB)
---> 4th partition: EXT3 (Cache / about 100 MB)
03. Unzip the bundle file using 7zip.
04. Then you will get a bunch of files.
05. Copy all the files in the root of the FAT32 partition into the memory card.
06. Don't copy them in a folder just in the root otherwise Android will not work.
07. Run "haret.exe" (settled in npkboot folder) using WM File Explorer. Wait until the screen show “Press Volume Down shortly to launch ClockworkMod Recovery”, press Volume Down button.
08. Thereby in “CWM Recovery menu”, choose "install zip from SD card > choose zip from sdcard >", select “GoDroid_v8.zip”. Be patient, wait till “Installation Completed”.
09. Press OK key in the pad and go back to “reboot system” in CWM menu.
10. Run “haret.exe” again, this time let the phone boot into Android completely.
11. Be patient, wait till the build is fully installed.
12. Before reboot follow the next instructions.
*02. Before second reboot (first time boot into Android):
01. Go to “Settings > Wireless and Network > Mobile Networks>”, uncheck “Data Enabled” (very important).
02. Go to “Settings > Wireless and Network >”, turn on the Bluetooth and wait till the phone detect any other Bluetooth Device (very important).
03. Go to “Settings > Location & Security >”, check “Use wireless networks” so that you can use your GPS.
04. Go to “Settings > Location & Security > Set up screen lock > Pattern”. So, you avoid the noisy locked screen vibration.
05. Go to “Settings > Display > Brightness >" and adjust a different brightness of the screen. So, you avoid the light on function keys when X1 is in standby. For better performance disable "auto-rotate screen" and "animations", too.
06. Launch Load Monitor app, go to “Menu > Preference >” and enable “Add Notification, Only notify high load, Auto start, Update interval 30 min., Wake lock”.
07. Press Phone button and choose GoDialer as default app (fix phone call problems, credits to casualt).
08. “Power Off” the mobile. Now take out the SD and replace the npkboot folder for this one:"npkboot.zip"
(NOTE: We only use Midnight kernel for install the rom in ext3 format, after we change "npkboot" folder for having Turbo Kernel. Jump step 08th if you want to continue using Midnight Kernel).
*03. Second reboot (GAPPS installation):
01. Download “GoDroid_GAPPS.zip”
02. Run “haret.exe” again, go into CWM Recovery, choose "install zip from SD card > choose zip from sdcard >", select "GoDroid_GAPPS.zip".
03. After finish install, reboot phone.
04. Run “haret.exe” again and leave it to continue booting into Android.
05. Now "clear Market data" and "uninstall updates" (Setting > Application > Manage applications > Market). After that disable Market Updater:
---> Install TerminalEmulator.apk (included in the bundle).
---> Type the following command in the terminal emulator:
---> su *PRESS ENTER*
---> pm disable com.android.vending.updater *PRESS ENTER AGAIN*
06. And reboot and run haret.exe again. That's all.
*04. Boot GoDroid automatically in your phone (DualBoot from Windows Mobile):
01. Run Windows Mobile.
02. Install "Gen.Y DualBOOT WVGA v1.0.6.0-Storage Card.cab" in Windows Mobile (it’s inside the bundle). You have to install it to "\Storage Card", not "\Windows", take care of that.
03. After it's installed, you have to edit the Windows Mobile Registry using "Total Commander" file explorer (inside the bundle). The registry location is at [\\\Plugin\Registry\HKCU\Software\Gen.Y\DualBOOT]. <--- This is located in the android mobile root but not in storage card root.
04. Inside DualBOOT folder find a registry named "AndroidBootFolder", click it and write “npkboot” without quotations marks. I've left a list describing what the keys are for:
---> "AndroidBootFolder"= npkboot <----- boot haret.exe from npkboot folder: \Storage Card\npkboot\haret.exe
---> "AutoBootAndroid"= 1 <----- 1 if you want to autoboot Android or 0 for autobooting Windows
---> "AutoBootEnabled"= 1 <----- 1 for enabling autoboot or 0 for disabling it
---> "FastBootEnabled"= 1 <----- 1 for enabling fastboot or 0 for disabling it
---> "StorageBootMode"= 1 <----- 1 always, take care of this setting
(Note: If you don't manage with Total Commander, as well you can use "PHM Registry Editor" for editing the registry: [HKEY_CURRENT_USER\Software\Gen.Y\DualBOOT]).
05. Reboot the mobile and changes will take effect.
*05. Wifi-Tether 3.1 Beta 6:
(I was the first to find the wifi-tether solution for xperia x1 in FRX07 and jerrytan93 included it in SenseDroid_v7 changelog)
01. Wifi-tether shouldn't be installed if you ain't going to use it.
02. Install WifiTether.apk (included in the bundle).
03. Launch the app.
04. Go to "settings".
05. Then go to "Change Device-Profile" and choose HTC Desire (GSM) and start tethering.
06. Without stop tethering go again to "settings>Change Device-Profile>" and choose HTC Dream.
07. Now stop tethering and start again.
(Important: sometimes after using wifi-tether, it stops the wifi interface and we can't use the wifi because the system gives an error. It is not necessary to reboot, to rearm the wifi is easy using again wifi-tether. Inside of wifi-tether, we have to go again to "Change Device-Profile" and choose HTC Desire (GSM) and start tethering. Without stop tethering go again to "settings>Change Device-Profile>" and choose HTC Dream).
NOTES:
* If you want better battery performance, uninstall LoadMonitor app or any Taskmanager you've already installed.
* Wifi have to switch on in WM before booting Android or else you will get error message.
* Silent the phone before booting Android so that you will have sound in Android.
* Charge your phone before booting Android so that you can charge your phone in Android.
* DO NOT install GAPPS directly after finish installing the build or else you will get a serious problem.
* NEVER try to sync your phone with Google before installing GAPPS or else you will get serious problem.
* Changes needed to have GoDroid in your BlackStone (credits to jerrytan93):
---> Edit the build.prop and delete the 'ro.sw.rotation=180' line
---> Change the lib 'surfaceflinger' in my build with the one in your Blackstone Android build.
---> Use your BlackStone's kernel and calibration.
* To solve incoming calls problems, put calls on hold. If making a phone call you can't hear anything, just turn the speakers on and off and it will work. If the touch screen isn't responding, then use the pad and move to the speakers and click it on and off (credits to izzyk).
* Let me remind you that it is important remove the SIM card before installing GoDroid rom and wait till everything is done to use the sim card. And for changing between 3G to GPRS network, first always set the mobile in Airplane Mode. Due to a bug in Froyo 2.2.2, the bug reboots Android OS when you change between 3g to 2g. As the system doesn't close properly, it corrupts the rom a bit and you begin to have key freeze. Kernels like xdandroid avoids the bug with a proper control of mobile network.
new build again...!!! good job kuskro.....everthing working? please give a note for the working fiture and not working...thanks
vannanta said:
new build again...!!! good job kuskro.....everthing working? please give a note for the working fiture and not working...thanks
Click to expand...
Click to collapse
Did you notice that what he had mentioned above? It is based on SenseDroid and FRX07. If a new build can be made by just changing the launcher and removing some apps, then congratulation my friend, you had MADE a NEW BUILD..
jerrytan93 said:
Did you notice that what he had mentioned above? It is based on SenseDroid and FRX07. If a new build can be made by just changing the launcher and removing some apps, then congratulation my friend, you had MADE a NEW BUILD..
Click to expand...
Click to collapse
ok jerry now i know..thank...please dont leave x1
jerrytan93 said:
Did you notice that what he had mentioned above? It is based on SenseDroid and FRX07. If a new build can be made by just changing the launcher and removing some apps, then congratulation my friend, you had MADE a NEW BUILD..
Click to expand...
Click to collapse
I've clarified it in the first post. Thank you for pointing it out.
Modification included that I consider fundamental respect advances made in SenseDroid v8:
- Lighter and versatile launcher.
- Battery icon shows % sync.
- Market problems solved.
- Wifi-tether problems solved.
- Unstable wifi problem caused by wifi-tether solved.
- Added switcher for wifi, bluetooth, brightness, gps, etc...
- Added a task manager.
- Added cyanogen theme.
- Bootanimation changed.
I've reviewed these minor SenseDroid problems and it has been solved in GoDroid because SenseDroid_v8 is a final version.
testing now
kuskro said:
Minor modification included that I consider fundamental respect advances made in SenseDroid:
- Lighter and versatile launcher.
- Now battery icon shows % sync.
- Market problems solved.
- Wifi-tether problems solved.
- Unstable wifi problem caused by wifi-tether solved.
- Added switcher for wifi, bluetooth, brightness, gps, etc...
- Added a task manager.
I've reviewed these minor SenseDroid problems and it has been solved in GoDroid because SenseDroid_v8 is a final version.
Click to expand...
Click to collapse
- You just simply remove my LPSense launcher and replace it with Go launcher
- It just a TIPS for the Market and Wifi-Tether, not a FIX
- Switcher for wifi, bluetooth, brightness, gps, etc.. are from my ARCDroid
- Task manager is just an additional app for Go launcher which can download from Market FREE.
I can't see any difference in your build with mine besides of those 'FIX' and the 'NEW' launcher.
It is useless to give people credits but never asking for permission when taking stuffs from people.
jerrytan93 said:
- You just simply remove my LPSense launcher and replace it with Go launcher
- It just a TIPS for the Market and Wifi-Tether, not a FIX
- Switcher for wifi, bluetooth, brightness, gps, etc.. are from my ARCDroid
- Task manager is just an additional app for Go launcher which can download from Market FREE.
I can't see any difference in your build with mine besides of those 'FIX' and the 'NEW' launcher.
It is useless to give people credits but never asking for permission when taking stuffs from people.
Click to expand...
Click to collapse
I completely agree about you are saying. As I've explained in the first post, this is a modification of your job and XDAndroid (they deserve merit also). And the reason why I released GoDroid is because you did a final version in which people have found some problems like wrong wifi-tether installation that provides wifi unstability.
Solve this problem it's so easy as you say, but the 80% of the people who install a rom in their mobile don't know how to resolve this kind of things, they need you to do it, but you don't take out the wifi-tether from your rom because you did a final version.
Tell me what I must do and I will do without any reserve. But please solve the wifi-tether problem in your rom.
As you can notice I've not asked for a coffee invitation because I don't deserve. But the people who follow your job maybe want something more.
P.D.= If people install a new launcher like GoLauncher straight from Market, your launcher and the other works at the same time so consume more resources and the rom works slowly. The switcher are from the go launcher new version not from ARCDroid, and the Market is a new version, too. The wifi-tether problem in your rom is because you included it in your build and it doesn't work (it's duplicated in your rom, in /data/app you have one version and in /system/app have another).
kuskro said:
I completely agree about you are saying. As I've explained in the first post, this is a modification of your job and XDAndroid (they deserve merit also). And the reason why I released GoDroid is because you did a final version in which people have found some problems like wrong wifi-tether installation that provides wifi unstability.
Solve this problem it's so easy as you say, but the 80% of the people who install a rom in their mobile don't know how to resolve this kind of things, they need you to do it, but you don't take out the wifi-tether from your rom because you did a final version.
Tell me what I must do and I will do without any reserve. But please solve the wifi-tether problem in your rom.
As you can notice I've not asked for a coffee invitation because I don't deserve. But the people who follow your job maybe want something more.
P.D.= If people install a new launcher like GoLauncher straight from Market, your launcher and the other works at the same time so consume more resources and the rom works slowly. The switcher are from the go launcher new version not from ARCDroid, and the Market is a new version, too. The wifi-tether problem in your rom is because you included it in your build and it doesn't work (it's duplicated in your rom, in /data/app you have one version and in /system/app have another).
Click to expand...
Click to collapse
I can give a conclusion that you had done a great job by discovered the Wifi Tether solution, other than that no more effort I can see to be done by you.
User can easily remove system apps by installing 'Root App Remover' from the Market.
About the 'NEW' Market are you using version 3.3.11? , and I want to apologize to you for the switcher. That's all
okay i have tried this build and it seems ok
one thing is that I think it is absolutely imparitive that we use the camera button as a home and not power button as if the keyboard does freeze we can still use the phone
please fix this in your update I have tried changing the usr and it hasn't helped
thank you dev
casualt said:
okay i have tried this build and it seems ok
one thing is that I think it is absolutely imparitive that we use the camera button as a home and not power button as if the keyboard does freeze we can still use the phone
please fix this in your update I have tried changing the usr and it hasn't helped
thank you dev
Click to expand...
Click to collapse
Thank you so much. I take note.
For the next version, I will change many thing to avoid critics, althought I love the jerrytan93 customization.
Best.
brothers
kuskro said:
Thank you so much. I take note.
For the next version, I will change many thing to avoid critics, althought I love the jerrytan93 customization.
Best.
Click to expand...
Click to collapse
Guys we are all in this community TOGETHER. Lets work together and respect other devs and yours as what they like. We have to remember and thank each dev for taking their time for the community and providing THEIR versions of what THEY like THEMSELVES. Each rom is unique to the individual and I think its great that you devs are releasing it to the public. Please lets keep it a community of friends and work together.
Yes I agree with you casualt.. every developer have their own style on making their ROM, and every ROM have their own good features and function.. and it is depends on the users on what features they prefer the most.
casualt said:
Guys we are all in this community TOGETHER. Lets work together and respect other devs and yours as what they like. We have to remember and thank each dev for taking their time for the community and providing THEIR versions of what THEY like THEMSELVES. Each rom is unique to the individual and I think its great that you devs are releasing it to the public. Please lets keep it a community of friends and work together.
Click to expand...
Click to collapse
jerrytan93 said:
Yes I agree with you casualt.. every developer have their own style on making their ROM, and every ROM have their own good features and function.. and it is depends on the users on what features they prefer the most.
Click to expand...
Click to collapse
Thank you both.
I've just updated the Go Launcher, the Cyanogen theme and Bobclock (nothing important). So, we have a new bundle and it works better than I collected first.
Best.
New update...
Well, I've uploaded a new bundle with new customizations.
Download from: GoDroid_v5.0.2_bundle.7z
ChangeLog GoDroid v.5
- New customization.
- New Bootanimation.
- Added BobClockD3 v1.1.1 (better perfomance).
- Added Market v2.12 (works quicker and properly).
- Added Go Launcher EX v.2.62.
- Added GoLocker v1.02 (see screenshots).
- Added GoDialer and GoContacts v2.05 (fix phone call problems, credits to jerrytan93 and casualt).
Best.
Give credits when taking idea from other user!
kuskro said:
Well, I've uploaded a new bundle with new customizations.
Download from: GoDroid_v5.0.1_bundle.7z
ChangeLog GoDroid v.5
- New customization.
- New Bootanimation.
- Added BobClockD3 v1.1.1 (better perfomance).
- Added Market v2.12 (works quicker and properly).
- Added Go Launcher EX v.2.62.
- Added GoLocker v1.02 (see screenshots).
- Added GoDialer and GoContacts v2.05 (fix phone call problems).
Best.
Click to expand...
Click to collapse
Please show your credit to the user who had discovered the phone call problem's solution, is ME and CASUALT!!
Meanwhile I had continue my development on my SenseDroid and released my latest V9, so you should declare your ROM description that YOU ARE USING MY PREVIOUS V8 ROM AND NOT THE FINAL VERSION. Please fix this as soon as possible.. thank you
Surely. I will change.
Greetings!
The charge problem isn't solved, the answer to a call too isn't solved!
---------- Post added at 04:36 PM ---------- Previous post was at 04:33 PM ----------
sorry for my english
rucckiy said:
Greetings!
The charge problem isn't solved, the answer to a call too isn't solved!
sorry for my english
Click to expand...
Click to collapse
Well, my English is worse than yours, you can be sure of that.
The GoContacts application includes GoDialer and this app fix the problem. Try to do a phone call and choose GoDialer for doing it. Therefore, GoDialer takes control of incoming and outcoming calls.
For me this change solved the problems, I tried several times and it worked in my case.
Best.
But a charge?

[Discontinued-ROM][[2013-12-16][Guhl] Permission Spoofing Framework - AOSP 4.4

[Closing message]
Hi,
I am discontinuing the work on the Android Permission Spoofing Framework as I am not using Android anymore.
If anybody is interested in taking over the development I would be very happy to help her or him getting started as much as possible.
Feel free to contact me if you would like to work on it.
Sorry and have fun - Guhl
[End closing message]
This ROM is based on AOSP KitKat 4.4.2_r1. Besides the deep integration of the permission spoofing functionality the ROM is completely stock - it's not even rooted!
In addition to the original AOSP rom it includes the permission spoofing framework enhancement that was originally developed by Plamen K. Kosseff for Android 2.3. The functionality has been rebased to Android 4.4 and enhanced (a lot) by me and is now available.
My work was/is originally done for the HTC vision (G2/DZ) for which i provide ROMs based on ASOP and CM10.1 (see posting in the vision forum) but since i do also own a N4 i will provide ROMs for it also. There is also a CM version for the Nexus 4 here.
If you as a developer want to add the permission spoofing framework to your ROM please go ahead it should be portable easily. I will keep the commit list updated. If you need help don't hesitate to ask!
Actually the main motivation to publish this is to inspire other developers to integrate this with their work.
The source of the enhancement can be found on github in the repositories:
platform_frameworks_base
platform_frameworks_opt_telephony
platform_packages_apps_settings
The current work is done in the 4.4.2_r1 branch and the relevant commits are:
framework initial commit
framework bug fix 1
framework bug fix 2
frameworks telephony initial commit
app settings initial commit
framework permission spoofing - location
framework pff: infrastructure code cleanup
framework pff: permission spoofing - contacts and phone log
framework pff: permission spoofing - calendar (Instances)
framework pff: permission spoofing - calendar (Instances - cleanup)
framework pff: permission revoking - initial commit
framework pff: add PFFInfoDatabase to make spoofed informations persistant and changeable
framework pff: bug fix for permission revoking
What is permission spoofing
Permission spoofing means that the framework will return spoofed information to Apps instead of the original information based on permissions that the App requested during installation. The main motivation for the development of this functionality is the protection of the privacy of the phones owner.
Examples for spoofed information are:
Empty contact list instead of real contacts - READ_CONTACTS
False location instead of real location - ACCESS_COARSE_LOCATION / ACCESS_FINE_LOCATION
False Information for phone id and phone number - READ_PHONE_STATE
Empty log instead of real phone call log - READ_CALL_LOG
Empty calendar list instead of real calendar entries - READ_CALENDAR
....
Current implementation
Currently the following permissions are available:
READ_PHONE_STATE
While this permission allows the App to read the state of the phone (in call, ...) it also allows the App to read information like the phone number or the IMEI of the phone. Instead of revoking the permission that has to be granted to an App, permission spoofing provides spoofed information for this sensitive data.
ACCESS_COARSE_LOCATION and ACCESS_FINE_LOCATION
Instead of the real location a location that can be set using the PFF-GPSPath will be reporte (the default spoofed location is the top of Mt. Everest). The implementation is not perfect yet (Google maps and Latitude still seem to know the coarse location - working on that)
READ_CONTACTS and READ_CALL_LOG
Instead of the contacts and the call log an empty list will be reported. The implementation sets the limit parameter of the query to 0 if the permission is spoofed.
READ_CALENDAR
The implementation changes the date for which the items will returned to the first week of 1970.
More permissions might be added in the future.
Usage
Spoofing can be enabled on a per App basis. To enable spoofing go to Settings - Apps, choose the App for which you want to spoof the permission. Below the spoofable permission will be a switch that can be set to On to enable spoofing or Off to disable spoofing for this App.
Optional Apps
The source of these apps is also available at https://github.com/guhl
PFF-GPSPath
The PFF-GPSPath App can be used to set the spoofed location and in addition it can also be used to define a path the can then be simulated in the App (by effectively moveing the spoofed location)!
HowTo for PFF-GPSPath HowTo
PFF-Settings
The PFF-Settings app provides the same functionality as App - Settings but in a more comprehensive way.
It provides a list of all Apps (including system Apps) that have a spoofable permission and allows you to set spoofing On/Off for them
PFF-Test
If you spoof a spoofable permission for the app PFF-Test you can check the info that the framework provides to PFF-Test
Downloads
ROM aosp_mako-ota-eng.4.4.2.pff.20131216.zip
Gapps are not included in the rom - they can be found at pa_gapps-stock-4.4.2-20131215-signed.zip
PFF-GPSPath_1_3.apk
PFF-AppSettings_1_1.apk
PFF-Test
Communication
I do not want to start a flame war on spoofing on XDA. Whiile spoofing is important for me I do understand people opposing it.
If you want to talk to me, the best way to do this is to look for me (Guhl) at #nexus4, #G2ROOT or #andromadus on freenode IRC.
Changelog
2013-12-16
Rebased from AOSP 4.3 to 4.4.2
Credits
Plamen K. Kosseff for the original framework changes
Flinny for his huge work on the Andromadus roms and supporting me with my original development for the vision
pierre_ja, Nipqer, Hymie and all the others at #G2ROOT for their endless help and entertainment
XDA:DevDB Information
Permission spoofing framwork - Nexus 4 - AOSP 4.4, ROM for the Google Nexus 4
Contributors
guhl99
ROM OS Version: 4.4.x KitKat
Based On: AOSP
Version Information
Status: Stable
Created 2013-12-16
Last Updated 2014-07-06
PFF-GPSPath Version 1.3
Hi,
In my constant struggle to remove everything that involves the use of the closed source Google Play-Services from my devices I rewrote the PFF-GPSPath App.
Version 1.3:
- Switched to OpenStreetMap data using the MapQuest Android API
- Completely removed dependencies on Google play-services
Known-Issues:
- Draging Markers is not implemented yet
There is no functional improvement between version 1.2 and version 1.3 but it is all free!
Have fun - Guhl
*******

[Discontinued-ROM][[2014-02-02][Guhl] Permission Spoofing Framework - Xperia Pro - CM-11.0

[Discontinued-ROM][[2014-02-02][Guhl] Permission Spoofing Framework - Xperia Pro - CM-11.0
[Closing message]
Hi,
I am discontinuing the work on the Android Permission Spoofing Framework as I am not using Android anymore.
If anybody is interested in taking over the development I would be very happy to help her or him getting started as much as possible.
Feel free to contact me if you would like to work on it.
Sorry and have fun - Guhl
[End closing message]
This ROM is based on LegacyXperia CM-11.0. Besides the deep integration of the permission spoofing functionality the ROM is unchanged from the LegacyXperia CM-11.0 builds!
In addition to the original LegacyXperia rom it includes the permission spoofing framework enhancement that was originally developed by Plamen K. Kosseff for Android 2.3. The functionality has been rebased to Android 4.4 and enhanced (a lot) by me and is now available.
My work was/is originally done for the HTC vision (G2/DZ) for which i provide ROMs based on ASOP and CM.
If you as a developer want to add the permission spoofing framework to your ROM please go ahead it should be portable easily. I will keep the commit list updated. If you need help don't hesitate to ask!
Actually the main motivation to publish this is to inspire other developers to integrate this with their work.
The source of the enhancement can be found on github in the repositories:
android_frameworks_base branch lx_cm-11.0
cm-android_frameworks_opt_telephony branch cm-11.0
cm-android_packages_apps_Settings branch cm-11.0
The relevant commits are:
framework initial commit
framework bug fix 1
framework bug fix 2
frameworks telephony initial commit
app settings initial commit
framework permission spoofing - location
framework pff: infrastructure code cleanup
framework pff: infrastructure bug-fix in ContextImpl.java
framework pff: permission spoofing - contacts and phone log
framework pff: permission spoofing - calendar (Instances)
framework pff: permission spoofing - calendar (Instances - cleanup)
framework pff: permission revoking - initial commit
framework pff: add PFFInfoDatabase to make spoofed information persistent and changeable
framework pff: bug fix for permission revoking
What is permission spoofing
Permission spoofing means that the framework will return spoofed information to Apps instead of the original information based on permissions that the App requested during installation. The main motivation for the development of this functionality is the protection of the privacy of the phones owner.
Examples for spoofed information are:
Empty contact list instead of real contacts - READ_CONTACTS
False location instead of real location - ACCESS_COARSE_LOCATION / ACCESS_FINE_LOCATION
False Information for phone id and phone number - READ_PHONE_STATE
Empty log instead of real phone call log - READ_CALL_LOG
Empty calendar list instead of real calendar entries - READ_CALENDAR
....
Current implementation
Currently the following permissions are available:
READ_PHONE_STATE
While this permission allows the App to read the state of the phone (in call, ...) it also allows the App to read information like the phone number or the IMEI of the phone. Instead of revoking the permission that has to be granted to an App, permission spoofing provides spoofed information for this sensitive data.
ACCESS_COARSE_LOCATION and ACCESS_FINE_LOCATION
Instead of the real location a location that can be set using the PFF-GPSPath will be reporte (the default spoofed location is the top of Mt. Everest). The implementation is not perfect yet (Google maps and Latitude still seem to know the coarse location - working on that)
READ_CONTACTS and READ_CALL_LOG
Instead of the contacts and the call log an empty list will be reported. The implementation sets the limit parameter of the query to 0 if the permission is spoofed.
READ_CALENDAR
The implementation changes the date for which the items will returned to the first week of 1970.
More permissions might be added in the future.
Usage
Spoofing can be enabled on a per App basis. To enable spoofing go to Settings - Apps, choose the App for which you want to spoof the permission. Below the spoofable permission will be a switch that can be set to On to enable spoofing or Off to disable spoofing for this App.
Optional Apps
The source of these apps is also available at https://github.com/guhl
PFF-GPSPath
The PFF-GPSPath App can be used to set the spoofed location and in addition it can also be used to define a path the can then be simulated in the App (by effectively moveing the spoofed location)!
HowTo for PFF-GPSPath HowTo
PFF-Settings
The PFF-Settings app provides the same functionality as App - Settings but in a more comprehensive way.
It provides a list of all Apps (including system Apps) that have a spoofable permission and allows you to set spoofing On/Off for them
PFF-Test
If you spoof a spoofable permission for the app PFF-Test you can check the info that the framework provides to PFF-Test
Downloads
ROM cm-11-20140202-UNOFFICIAL-LegacyXperia-iyokan-pff.zip
Gapps are not included in the rom - they can be found at legacyxperia CM-11.0 gapps page
PFF-GPSPath_1_3.apk
PFF-AppSettings_1_1.apk
PFF-Test
Communication
I do not want to start a flame war on spoofing on XDA. Whiile spoofing is important for me I do understand people opposing it.
If you want to talk to me, the best way to do this is to look for me (Guhl) at #nexus4, #G2ROOT or #andromadus on freenode IRC.
Changelog
2014-02-02
Rebased from Andromadus CM-11.0 to LegacyXperia CM-11.0
Credits
Plamen K. Kosseff for the original framework changes
Flinny for his huge work on the Andromadus roms and supporting me with my original development for the vision
pierre_ja, Nipqer, Hymie and all the others at #G2ROOT for their endless help and entertainment
and of course the LegacyXperia projekt
XDA:DevDB Information
Permission spoofing framwork - Xperia Pro - CM-11.0, ROM for the Sony Ericsson Xperia Arc
Contributors
guhl99, LegacyXperia
ROM OS Version: 4.4.x KitKat
Based On: CyanogenMod LegacyXperia
Version Information
Status: Beta
Created 2014-02-02
Last Updated 2014-07-06
Hi,
In my constant struggle to remove everything that involves the use of the closed source Google Play-Services from my devices I rewrote the PFF-GPSPath App.
Version 1.3:
- Switched to OpenStreetMap data using the MapQuest Android API
- Completely removed dependencies on Google play-services
Known-Issues:
- Draging Markers is not implemented yet
There is no functional improvement between version 1.2 and version 1.3 but it is all free!
Have fun - Guhl

Rebuild required after changing xml layout files in Android Studio

I am developing in Android Studio.
There is a problem though. When I change the code and I run the app it works fine, But when i change something in the layout it does not change until i do a clean project. e.g. i add a button and run the app, the button does not exist but when i do a clean project it is there...
Even Android studio shows an error when accessing the id of the newly added view...
Please help me solve this problem. Any help would be much appreciated.
Additional information:
-Android Studio version: 1.3.1
-Operating system: windows
-Gradle version: 2.6
I am having multiple directories as my resources with gradle like this:
Code:
sourceSets{
main {
manifest.srcFile 'src/main/AndroidManifest.xml'
java.srcDirs = ['src/main/java', '.apt_generated']
aidl.srcDirs = ['src/main/aidl', '.apt_generated']
res.srcDirs = [
'src/main/res',
'src/main/res/layouts/test',
'src/main/res/layouts/login',
'src/main/res/layouts/main',
'src/main/res/layouts/includes'
]
}
}
When i try to run the project with changed layout it says:
No apk changes detected. Skipping file upload, force stopping package instead.
DEVICE SHELL COMMAND: am force-stop com.my.package
Click to expand...
Click to collapse
saeednt said:
I am developing in Android Studio.
There is a problem though. When I change the code and I run the app it works fine, But when i change something in the layout it does not change until i do a clean project. e.g. i add a button and run the app, the button does not exist but when i do a clean project it is there...
Even Android studio shows an error when accessing the id of the newly added view...
Please help me solve this problem. Any help would be much appreciated.
Additional information:
-Android Studio version: 1.3.1
-Operating system: windows
-Gradle version: 2.6
I am having multiple directories as my resources with gradle like this:
Code:
sourceSets{
main {
manifest.srcFile 'src/main/AndroidManifest.xml'
java.srcDirs = ['src/main/java', '.apt_generated']
aidl.srcDirs = ['src/main/aidl', '.apt_generated']
res.srcDirs = [
'src/main/res',
'src/main/res/layouts/test',
'src/main/res/layouts/login',
'src/main/res/layouts/main',
'src/main/res/layouts/includes'
]
}
}
When i try to run the project with changed layout it says:
Click to expand...
Click to collapse
Look, there are couple of things you should see,
first when you make changes you should save it every time when you make changes in it
go over all the functions you created and make sure they are wire up correctly and they should not get separated when you make changes, App location can be a problem as well, go over from your code couple of times you will find out the issue because its in your hand

Categories

Resources