[HOW TO][GUIDE][MOD] Change Package Names of APKs - Miscellaneous Android Development

I’ve Seen A Lot of People around Here and Other Forums who wants to know how to change the Package Name of Android Apps
Code:
(Ex. [COLOR="Red"]com.xvipre.settings[/COLOR] to [COLOR="Blue"]com.modded.app[/COLOR])
But some of them can’t really do it because of proper Programming Skills and Development Knowledge!
So today I will show you how to do it! Without Programming Skills or Extra Development!
Caution: Only use this if the App is Open-Source and ask for Developer Rights before doing this!
I and XDA do not support Piracy! So don’t try to ruin Humanity by doing Piracy of Apps!
So This shall be Only Used for Learning and Development Purposes!
Requirements:
· A Brain
· Apktool
· An APK to Work With!
· PC/Android Device
· DroidEdit/Notepad++
· A Little Knowledge in DroidEdit or Notepad++​
Now Let’s Start—
At First Decompile your APK using a Suitable and comfortable apktool. Use Apk-Multitool/Virtuous or other Tools.
As you can see there are 2 files and 2 Folders inside Decompiled XVipreSetting.apk Folder.
└── XVipreSettings.apk
├── AndroidManifest.xml
├── apktool.yml
├── res
└── smali
Click to expand...
Click to collapse
Lets assume that our APK Information is like this—
APK Name: XVipreSettings.apk
APK Package Name: com.xvipre.settings
We’ll Change it to the following—
APK Name: ModdedApp.apk
APK Package Name: com.modded.app
Before you begin, Let me tell you that all the modification done in this Project are Imaginary!
You have to assume that the package is com.xvipre.settings but actually it’s different for each app in the world! So you must know about what you are going to do, and what all these means!
It’s just an example! You have to use your app’s package and your desired app package name! Or Else it won’t Work at all!
Now Open apktool.yml and Search for these lines--
Code:
apkFileName: [COLOR="red"]XVipreSettings.apk[/COLOR]
And
Code:
packageInfo:
cur_package: [COLOR="Red"]com.xvipre.settings[/COLOR]
orig_package: [COLOR="red"]com.xvipre.settings[/COLOR]
{
"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"
}
Now Edit the Package Name and APK Name as You Desire—
For Example:
Code:
apkFileName: [COLOR="blue"]ModdedApp.apk[/COLOR]
And
Code:
packageInfo:
cur_package: [COLOR="blue"]com.modded.app[/COLOR]
orig_package: [COLOR="blue"]com.modded.app[/COLOR]
Save the File and Close apktool.yml
Now Open AndroidManifest.xml and Look for these lines—
Code:
<manifest android:hasCode="false" android:versionCode="14" android:versionName="2.1" android:installLocation="internalOnly" package="[COLOR="red"]com.xvipre.settings[/COLOR]"
Now Edit the Package name here—
For Example:
Code:
<manifest android:hasCode="false" android:versionCode="14" android:versionName="2.1" android:installLocation="internalOnly" package="[COLOR="Blue"]com.modded.app[/COLOR]"
Save and Exit.
Now Navigate to /smali/com/xvipre and Do the Following
· Rename settings to app
· Go Back to /smali/com Folder and Rename xvipre to modded
Now It’s Time to Go Hardcore!!
Open Notepad++ And Press Ctrl+F to Open “Find”
Click on Find in Files
Now in Directory, Click on “Browse” or “…”
Now Navigate to your Working Folder and Select /smali/
Now Click on Find What: and Type Your Package Name! But Like This—
Code:
[COLOR="Red"]Lcom/xvipre/settings[/COLOR]
Click on Replace With: and Type Your Desired Package name—
For Example:
Code:
[COLOR="blue"]Lcom/modded/app[/COLOR]
Click on Replace in Files
Now It Shall take up to 1-2 Minutes to Find and Replace all the package names in smalis!
When Done, Just Re-Check All the Files, Folder Names, Recheck AndroidManifest.xml to Find Another Line with Package name And Make Corrections Yourself!
Done for Now! Just Re-Compile and *SIGN* your Newly Created APK!!
Install the APK as User App! See if it Worked!
If you Like my Guide… Just Leave a little Thanks!
Comment if this guide has mistakes or I said anything Wrong, About Errors or Suggestions!
Written by Xtreme Ornob
Official Developer of XVipre ™
Thanks to
Google Inc.
XDA-Developers.
Mushfiqus Salehin (For giving me the Title of “Debeloper Sab” in Bangladeshi Groups)
Everyone Hail to Sadia Afrin Rumu for Teaching me the Usage of Android And Facebook Groups.
She’s an idol to me as she made me realize that I am a “Dim” and also a “Choto Pola”​

Thx
Thx button pressed Thx for making this guide. June 2014, hmm still fresh :good:

Another Great TUT :good: Very Clear and concise Well Done bro :highfive:

If I want to change it from com.xviper.settings
to com.modded.app.something
??

@Shahzeb5444
Then You'll have to make a Folder named "something" and put your activities (.smali) in there
For Example Create a folder like this /com/modded/app/*something*
Then Go Back to /app and Cut everything from there and paste into /something
Then Follow the guide from the top

Excellent tutorial. Thanks.
I like to add a couple of things
1) in some cases, you also need to change the package name in all *.xml under res/ not just in AndroidManifest.xml, because there may be layouts that refer to the package. In above example, you want to replace
com.xvipre.settings
with
com.modded.app
in all *.xml files under res/
2) You probably want to give the app a different name, too. In AndroidManifest.xml find
Code:
<application blahblahblah. android:label="xxxx" blahblahblah.>
xxxx may be something like My Awesome App or @string/app_name. Just replace that with what name you want. This is the user friendly name that will appear in the home screen, app drawer, etc.
Someone coming across this may wonder what are concrete, LEGITIMATELY reasons to want to do this. I can tell you why /I/ did it.
a/ I have an app that does not support multiple accounts. I asked the dev to add it, and of course he was like okay I'll think about it, which meant like never So I decompiled the app, made a new package name, and now I have a cloned app that has its own separate set of account and settings.
b/ I have another app that I made some mods to, for my own education and use. But I want to keep the original app for reference. Also, in case something funky happens in the modded app, I want to make sure I can reproduce the bug in the original app before I report it to the dev.

I've tried to do this for Snapchat - I have two different accounts, and I want to be able to have two versions of Snapchat installed so that I can use both accounts simultaneously. Currently my only work around is to use a 3rd party app, as there is no other way round it. However third party apps for Snapchat mostly suck balls, and are not up to date. When I tried following this guide, everyt time I ran the new APK it just quit. Any suggestions on how to achieve getting two Snapchat accounts running simultaneously?

Sorry I don't use snap chat so I don't know. It must have some other wrinkle.
What do you see in the log cat?

Nice guide...thanks bro:good:

Well it's Good to see.....you made good guide...bt i want to inform you....if u trash this thread then it will be great...i know u will ask why.....the question is here in this world lot of developer made app with hardcore time and using brain...bt there is also lots of noobs which will change apk name to something else and may be they get credit ,profit instead of original developer
hope u understand what i mean

[email protected] said:
Well it's Good to see.....you made good guide...bt i want to inform you....if u trash this thread then it will be great...i know u will ask why.....the question is here in this world lot of developer made app with hardcore time and using brain...bt there is also lots of noobs which will change apk name to something else and may be they get credit ,profit instead of original developer
hope u understand what i mean
Click to expand...
Click to collapse
So you missed this paragraph??
Caution: Only use this if the App is Open-Source and ask for Developer Rights before doing this!
I and XDA do not support Piracy! So don’t try to ruin Humanity by doing Piracy of Apps!
There is nothing wrong with this thread. Threads don't pirate apps. People pirate apps. Its called personal responsibility.
Nice wright up @Xtreme.Ornob
Sent from a Shaftamle Galaxy S4
"Thanks Button" is always appreciated!
149ThemedGoogleKeyboards!!!!!!
If you root your phone, you need to know this!!
MyColorScreen

Shaftamle said:
So you missed this paragraph??
Caution: Only use this if the App is Open-Source and ask for Developer Rights before doing this!
I and XDA do not support Piracy! So don’t try to ruin Humanity by doing Piracy of Apps!
There is nothing wrong with this thread. Threads don't pirate apps. People pirate apps. Its called personal responsibility.
Nice wright up @Xtreme.Ornob
Sent from a Shaftamle Galaxy S4
"Thanks Button" is always appreciated!
149ThemedGoogleKeyboards!!!!!!
If you root your phone, you need to know this!!
MyColorScreen
Click to expand...
Click to collapse
ya forgot

Xtreme.Ornob said:
I’ve Seen A Lot of People around Here and Other Forums who wants to know how to change the Package Name of Android Apps
Code:
(Ex. [COLOR="Red"]com.xvipre.settings[/COLOR] to [COLOR="Blue"]com.modded.app[/COLOR])
But some of them can’t really do it because of proper Programming Skills and Development Knowledge!
So today I will show you how to do it! Without Programming Skills or Extra Development!
Caution: Only use this if the App is Open-Source and ask for Developer Rights before doing this!
I and XDA do not support Piracy! So don’t try to ruin Humanity by doing Piracy of Apps!
So This shall be Only Used for Learning and Development Purposes!
Requirements:
· A Brain
· Apktool
· An APK to Work With!
· PC/Android Device
· DroidEdit/Notepad++
· A Little Knowledge in DroidEdit or Notepad++​
Now Let’s Start—
At First Decompile your APK using a Suitable and comfortable apktool. Use Apk-Multitool/Virtuous or other Tools.
As you can see there are 2 files and 2 Folders inside Decompiled XVipreSetting.apk Folder.
Lets assume that our APK Information is like this—
APK Name: XVipreSettings.apk
APK Package Name: com.xvipre.settings
We’ll Change it to the following—
APK Name: ModdedApp.apk
APK Package Name: com.modded.app
Before you begin, Let me tell you that all the modification done in this Project are Imaginary!
You have to assume that the package is com.xvipre.settings but actually it’s different for each app in the world! So you must know about what you are going to do, and what all these means!
It’s just an example! You have to use your app’s package and your desired app package name! Or Else it won’t Work at all!
Now Open apktool.yml and Search for these lines--
Code:
apkFileName: [COLOR="red"]XVipreSettings.apk[/COLOR]
And
Code:
packageInfo:
cur_package: [COLOR="Red"]com.xvipre.settings[/COLOR]
orig_package: [COLOR="red"]com.xvipre.settings[/COLOR]
Now Edit the Package Name and APK Name as You Desire—
For Example:
Code:
apkFileName: [COLOR="blue"]ModdedApp.apk[/COLOR]
And
Code:
packageInfo:
cur_package: [COLOR="blue"]com.modded.app[/COLOR]
orig_package: [COLOR="blue"]com.modded.app[/COLOR]
Save the File and Close apktool.yml
Now Open AndroidManifest.xml and Look for these lines—
Code:
<manifest android:hasCode="false" android:versionCode="14" android:versionName="2.1" android:installLocation="internalOnly" package="[COLOR="red"]com.xvipre.settings[/COLOR]"
Now Edit the Package name here—
For Example:
Code:
<manifest android:hasCode="false" android:versionCode="14" android:versionName="2.1" android:installLocation="internalOnly" package="[COLOR="Blue"]com.modded.app[/COLOR]"
Save and Exit.
Now Navigate to /smali/com/xvipre and Do the Following
· Rename settings to app
· Go Back to /smali/com Folder and Rename xvipre to modded
Now It’s Time to Go Hardcore!!
Open Notepad++ And Press Ctrl+F to Open “Find”
Click on Find in Files
Now in Directory, Click on “Browse” or “…”
Now Navigate to your Working Folder and Select /smali/
Now Click on Find What: and Type Your Package Name! But Like This—
Code:
[COLOR="Red"]Lcom/xvipre/settings[/COLOR]
Click on Replace With: and Type Your Desired Package name—
For Example:
Code:
[COLOR="blue"]Lcom/modded/app[/COLOR]
Click on Replace in Files
Now It Shall take up to 1-2 Minutes to Find and Replace all the package names in smalis!
When Done, Just Re-Check All the Files, Folder Names, Recheck AndroidManifest.xml to Find Another Line with Package name And Make Corrections Yourself!
Done for Now! Just Re-Compile and *SIGN* your Newly Created APK!!
Install the APK as User App! See if it Worked!
If you Like my Guide… Just Leave a little Thanks!
Comment if this guide has mistakes or I said anything Wrong, About Errors or Suggestions!
Written by Xtreme Ornob
Official Developer of XVipre ™
Thanks to
Google Inc.
XDA-Developers.
Mushfiqus Salehin (For giving me the Title of “Debeloper Sab” in Bangladeshi Groups)
Everyone Hail to Sadia Afrin Rumu for Teaching me the Usage of Android And Facebook Groups.
She’s an idol to me as she made me realize that I am a “Dim” and also a “Choto Pola”​
Click to expand...
Click to collapse
Thanks for This Tutorial
Can i do this or work in Whatsapp
can u tell me Whatsapp Tutorial

i_4_u89 said:
Thanks for This Tutorial
Can i do this or work in Whatsapp
can u tell me Whatsapp Tutorial
Click to expand...
Click to collapse
It should work for any app. Change the WhatsApp package name to whatever u like per the OP. Also, in the future don't quote the main post of any thread . it just clutters everything up. Just use the @ sign with whoever's name after it. Example: @i_4_u89
Sent from a Shaftamle Galaxy S4
"Thanks Button" is always appreciated!
149ThemedGoogleKeyboards!!!!!!
Eclipse ROM fatness!
MyColorScreen

@Shaftamle :thank you for reply caN you help me for my 1st whatsapp mods
im working with WA-2-12.58 i want to add all hide feature on stock WA
an with my new pkg name plz tell me the tutorial
Thank you

Matrixie said:
I've tried to do this for Snapchat - I have two different accounts, and I want to be able to have two versions of Snapchat installed so that I can use both accounts simultaneously. Currently my only work around is to use a 3rd party app, as there is no other way round it. However third party apps for Snapchat mostly suck balls, and are not up to date. When I tried following this guide, everyt time I ran the new APK it just quit. Any suggestions on how to achieve getting two Snapchat accounts running simultaneously?
Click to expand...
Click to collapse
Did it work for you? Please do reply me.. I'm trying this for Snapchat as well..

hitulg said:
Did it work for you? Please do reply me.. I'm trying this for Snapchat as well..
Click to expand...
Click to collapse
Heya. Unfortunately no, it didn't work. I'm just using Snapchat on two different accounts on my phone now. Not ideal, but it'll do.

Matrixie said:
Heya. Unfortunately no, it didn't work. I'm just using Snapchat on two different accounts on my phone now. Not ideal, but it'll do.
Click to expand...
Click to collapse
That means you have 2 Snapchat accounts running simultaneously on your phone? If yes, please PM me the apk... Please!

hitulg said:
That means you have 2 Snapchat accounts running simultaneously on your phone? If yes, please PM me the apk... Please!
Click to expand...
Click to collapse
Sorry, I wasn't clear - yes, I have two Snapchat accounts running simultaneously, but only through Lolipop's inbuilt multiple user accounts feature. I use the Guest account for one Snapchat account, and my own account for my other one.

Hi
I only have forced-package-id: '127'
in my apktool.yml, i have not got
packageInfo:
cur_package:
orig_package:
but instead have got
packageInfo:
forced-package-id: '127'
Haw can I do?
PLEASE!

Related

Changing and Editing Andriod OS.

I'm new to this and I've asked people for help but nobody seems to can BUT if you can show me how I can edit things like, change the folder to where you d/l a MMS or edit the size of the favorited person on FB.
There is no general answer to this question. You must reverse engineer an app and find a way, how to modify what you want.
Ok, I'm listening and willing to learn, but for the touted of such an open source OS like Android, I find it VERY difficult that I cant do things like save pics to a different folder other than "all downloads". There must be a way I can edit the strings or permission to the access of this folder only for downloads.

[APP]Log This - End-User Friendly Debug Logs!

Log This
by Mgamerz Productions
<50 downloads, 1 ratings (5 avg)
Free
{
"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"
}
Download Log This from Android Market
^^^This info does not update on it's own^^^
I have created a very simple but useful application called Log This. In short, it lets end-users get logcat logs (perhaps the app didn't crash - but it isn't working right.) without all the ADB fuss that surrounds logcat. It is meant to be simple for end users and powerful for developers.
It includes pastebin support that makes it easy to paste to your favorite android development forum, not mentioning any names that start with X.
Android Market Description said:
Log This is an application that can read logs given a provided tag and log level - and send them to developers. This saves them the hassle of having to use logcat on their computer with ADB.
As a developer, requesting the READ_LOGS permission is risky - it scares away a lot of users. Log This uses this permission, but is meant to be used by developers to request their end users to send in debug logs - one app to log em' all.
As an end user, you can install the app and help out your developers when they need debugging on specific phone models - provided they have logging enabled (perhaps via a logging mode).
It also can fetch kernel (panic) logs, as long as you supply the location of the log (a kernel developer can tell you if it does or not - not all kernels do)
This application is NOT optimized for tablets, but it should work on them. I don't have one to test with.
Permissions Explained:
READ_LOGS: Application has to be able to read the logs - the only data read is displayed in the email
INTERNET/CHECK_NETWORK_STATE: Advertising
WRITE_EXTERNAL_STORAGE: Used for building the log file. I leave the latest log as log.txt on the root of your media area (internal SD) so that you can always check it yourself.
Click to expand...
Click to collapse
I know there is an app called Log Collector already but I want to create some additional features.
Some new features that will be coming soon:
Three Click Logs - click on a file, accept the preview, click send. (file association)
I hope someday this app will be really useful.
Thoughts?
More otpions is always good. Thanks.
Balancing school, work, research (GibberTalk) and this app will be one great task
My friend and I were just discussing making an app like this. You beat us to the punch and you did a great job at doing that. Will it be okay to include your app in custom ROMs?
Of course! Just make sure it is linked to android market (so it will update itself). And as long as the rom isn't sold for money (I hear some roms are?). Happy cooking!
Awesome thanks a bunch!
Thanks! This should help a novice like myself.
just
want to say thanks
as6 said:
want to say thanks
Click to expand...
Click to collapse
Yes, but did you hit the "THANKS" button?
Hi,
I'm quite new to Android.
It definitely will be helpful to me when I want to help a developer.
I have a question.
Does this app run itself in the background or do I have to enable it?
You must run this app yourself. A logging service would seem kind of creepy Logcat is ~10000 long (thats as far as my eclipse one goes anyway) so you should have a good 10 minutes, unless your device just booted, then DLNA parser (at least on my atrix, perhaps its just the media scanner) will flood your logcat for like 10 minutes.
The way this app is intended to work (end users wise, not as devs)
Devs either have logging/debug mode or have logging on by default
end-user experiences odd behavior/crash (crashes on 2.2 can be sent through 'reporting' to the market)
End user asks dev why this doesn't work
Dev either A) gives user file that auto collects needed info (they just have to send), and they open it after they start the app/it doesn't work properly or B) dev gives them the needed info (not much) to fill out the forms and send it in.
PROFIT!
ja
MobileWon said:
Yes, but did you hit the "THANKS" button?
Click to expand...
Click to collapse
yes i did already hit the button
Forgive me for not fully understanding the logging process. I'm on Serendipity VII. Will your program 'turn on' logging, or is there something I still have to do to enable it?
Android has a user-hidden system called LogCat that is always running. You can oly see it with the logcat command built into the system (also accessible through ADB, its very VERY useful for developers for debugging/seeing what is going on). This just runs the 'logcat command' (prints out text) and filters it out. This app just captures that log command (with the filters)
Mgamerz said:
Android has a user-hidden system called LogCat that is always running. You can oly see it with the logcat command built into the system (also accessible through ADB, its very VERY useful for developers for debugging/seeing what is going on). This just runs the 'logcat command' (prints out text) and filters it out. This app just captures that log command (with the filters)
Click to expand...
Click to collapse
I see. I thought I'd read that you had to enable it in recovery or something - thank you for the education!
Hello,
I'm planning to communicate a procedure to use this app to the users of my own app who encounter problems.
There are however some questions / remarks I already have :
"Log an application tag" field : is this the TAG constant we pass to the android.util.Log.* calls ? In this case, I personally use several different tags in the same app so this would not be enough for all cases.
internationalization : the app is in english only, is it possible to help translating ? I can do it for french...
in the screenshots at the market, there is a screen that I don't have on my device : ss-480-1-1 (the one with the nice looking arrows "keep it private" / "make it public"), is it an old screen ?
From my first tests, it looks like there is not a lot of logs extracted, but I didn't tested it extensively. I'll will test it more and give you more feedback, thanks for this possibly great alternative to Log Collector !
I am soon going to add multiple tags, but they will all have to use the same level. I've been incredibly busy with my schoolwork that just started (and it sucks too!)
The app right now is english only. I can work on making it more translatable, but I throw a mix of R.string.xx with string literals.
The 'keep it private' screen isn't there cause it was a GIMPED photo. To promote your app you should add text. That would never fit on a small screen. Still trying to make screen scaling better than just scroll panes. It'll get there though.
How long before your app is released?
Edit: Or how long would you need? I have some ideas that could be wrapped around this:
Should all the tags be inline?
Should they be spread across .txt files? (Although that would be a bit more difficult as iirc the gmail app only supports up to 5)
I'd list more but my class is about to start
Mgamerz said:
I am soon going to add multiple tags, but they will all have to use the same level. I've been incredibly busy with my schoolwork that just started (and it sucks too!)
Click to expand...
Click to collapse
Don't worry, just do your schoolwork, I am not in need, just thinking about the next features I could implement in my app(s)
The app right now is english only. I can work on making it more translatable, but I throw a mix of R.string.xx with string literals.
Click to expand...
Click to collapse
Ok, no pb. If you need a translator in the future you know where to find me
The 'keep it private' screen isn't there cause it was a GIMPED photo. To promote your app you should add text. That would never fit on a small screen. Still trying to make screen scaling better than just scroll panes. It'll get there though.
Click to expand...
Click to collapse
Anyway, I was just curious. Using images to give important indications to user is probably not a very accessible thing...
How long before your app is released?
Click to expand...
Click to collapse
I've just released one already, soon in the app forum of xda, if I manage to get some time to do it right...
As I said, I'm not in need of any blocking feature... I think using "Log this" doesn't need to be programmatically integrated in the application, and that's a good point for me. We just need to tell users to install it and what parameters to use, on a per case basis.
Edit: Or how long would you need? I have some ideas that could be wrapped around this:
Should all the tags be inline?
Should they be spread across .txt files? (Although that would be a bit more difficult as iirc the gmail app only supports up to 5)
I'd list more but my class is about to start
Click to expand...
Click to collapse
I haven't thought about it yet, but a txt file looks too much complicated for users... Maybe it's best to uncheck the corresponding checkbox if there are multiple tags, or to use some generic patterns like "my.package.*"...
Also I was wondering if a simple URI like logthis://tag=TAG1&tag=TAG2&level=debug&... could be easily parsed as an Intent by some BroadcastReceiver...? This would help the developer give the user the right parameters via e-mail or other...
Again, this would require more thinking before considering those as good ideas and implement them... Maybe this will give you a starting point...
Nice tool, thanks a lot
@Mgamerz : Here is my app "SwitchDataSwitch" at xda : http://forum.xda-developers.com/showthread.php?t=1287025
I will soon include a chapter on how to use Log This in case of problem on the website : http://bitbucket.org/nicobo/switchdataswitch
Fyi, the next version might include a direct link to use Log This.
---------- Post added at 12:50 PM ---------- Previous post was at 12:49 PM ----------
By the way, this is a first test, I think I will generalize the use of both Log This and Log Collector in my future apps, thanks.

[APP][2.2+] Backitude - Server-side development

I am creating this thread to start an area for Backitude server side developers and for casual users looking to implement their own flavor of location history or Google Latitude, to come and chat, ask questions, and get information.
Backitude is an android application that allows users to track their device locations in a highly configurable and continuous manner. Location data can be stored locally as (KML, CSV) or posted to a custom server. Anyone can create their own server implementation for storing or sharing location data.
Currently, three users are sharing their implementations:
http://backitude.ascanwex.de/ ([email protected])
-and-
https://bitbucket.org/nparley/mylatitude/wiki/Home ([email protected])
-and-
http://www.backituders.com ([email protected])
Let me know if more exist you would like me to add to the list!
Quick hack for using Traccar as backend
Hi,
If you want to use Traccar as the backend, then you can quickly implement a server side fix in PHP that converts the HTTP POST from Backitude to the required HTTP GET request OsmAnd style that Traccar expects.
Requirements:
- HTTP server with PHP
Place a backitude.php file with this content on your Traccar server:
PHP:
<?
$data=$_POST;
array_walk($data , create_function('&$v,$k', '$v = $k."=".$v ;'));
$url='http://127.0.0.1:5055?'.implode("&",$data);
$response = file_get_contents($url);.
echo "200 OK\n";
?>
Replace 127.0.0.1 with your Traccar server, if it's located on another host than the one you put the PHP code in.
Configure Backitude like this:
Server URL: http://<yourserveraddress>/backitude.php
Successfull response code: 200
Authentication: none
Custom field1: <enter your imei or the ID youre using in Traccar>
Latitude: lat
Longitude: lon
Accuracy: hdop
Speed: speed
Altitude: altitude
Direction Bearing: bearing
Location Timestamp (UTC): timestamp
TimeZone Offset: do not post/empty
Custom Field 1: id
Works for me! Thanks a lot for Backitude - the Traccar client is not nearly as reliable or battery friendly as Backitude.
wire103 said:
Hi,
If you want to use Traccar as the backend, then you can quickly implement a server side fix in PHP that converts the HTTP POST from Backitude to the required HTTP GET request OsmAnd style that Traccar expects.
Requirements:
- HTTP server with PHP
Place a backitude.php file with this content on your Traccar server:
PHP:
<?
$data=$_POST;
array_walk($data , create_function('&$v,$k', '$v = $k."=".$v ;'));
$url='http://127.0.0.1:5055?'.implode("&",$data);
$response = file_get_contents($url);.
echo "200 OK\n";
?>
Replace 127.0.0.1 with your Traccar server, if it's located on another host than the one you put the PHP code in.
Click to expand...
Click to collapse
Would this whole implementation be a lot simpler, if Backitude sent over a GET instead of a POST ?
Yes, a toggle switch between GET and POST would make your program directly compatible, if the user can set port number on the URL as well.
Sendt fra min GT-I9505 med Tapatalk
To repost from the other thread:
I have finally got around to opening up my Google App Engine app code. It runs on the free quota on Google App Engine and so it does not require you to pay for a server. Also as it's your app you have control of your location data, and can delete it at any time by going into the Google App Engine settings for your app. You send your location to your app and it is recorded in a database. The app allows you to share your location with other people by creating a white list of allowed Google accounts. I have also made a history page which you can use to see your updates from each day. I can't add links but you should be able to find the code at bitbucket.org / nparley
No doubt there will be bugs which I have not found. If you find one please add an issue to on the bitbucket page. I will continue to add new features as I can but am open to requests, just add a feature requestion issue on bitbucket.
Cheers,
Neil
[B[/B][/B]
nparley said:
To repost from the other thread:
I have finally got around to opening up my Google App Engine app code. It runs on the free quota on Google App Engine and so it does not require you to pay for a server. Also as it's your app you have control of your location data, and can delete it at any time by going into the Google App Engine settings for your app. You send your location to your app and it is recorded in a database. The app allows you to share your location with other people by creating a white list of allowed Google accounts. I have also made a history page which you can use to see your updates from each day. I can't add links but you should be able to find the code at bitbucket.org / nparley
No doubt there will be bugs which I have not found. If you find one please add an issue to on the bitbucket page. I will continue to add new features as I can but am open to requests, just add a feature requestion issue on bitbucket.
Cheers,
Neil
Click to expand...
Click to collapse
ON WEB PAGE IT SHOWS ONLY "Hello world!"
holysmoke001 said:
[B[/B][/B]
ON WEB PAGE IT SHOWS ONLY "Hello world!"
Click to expand...
Click to collapse
Hi holysmoke001,
I am not quite sure what you are referring to,
Neil
nparley said:
Hi holysmoke001,
I am not quite sure what you are referring to,
Neil
Click to expand...
Click to collapse
Hi Neil
I follow all your instructions for Setting up the app but when i go to yourapp(my app).appspot.com/
IT SHOWS ONLY "Hello world!" written on corner of the web page.
can you please upload detailed instructions step by step how to set up the app
holysmoke001 said:
Hi Neil
I follow all your instructions for Setting up the app but when i go to yourapp(my app).appspot.com/
IT SHOWS ONLY "Hello world!" written on corner of the web page.
can you please upload detailed instructions step by step how to set up the app
Click to expand...
Click to collapse
I assume you have done all the steps here? https://bitbucket.org/nparley/mylatitude/wiki/Setup App Does your site say running if you go to here https://appengine.google.com/
---------- Post added at 09:34 PM ---------- Previous post was at 09:26 PM ----------
holysmoke001 said:
Hi Neil
I follow all your instructions for Setting up the app but when i go to yourapp(my app).appspot.com/
IT SHOWS ONLY "Hello world!" written on corner of the web page.
can you please upload detailed instructions step by step how to set up the app
Click to expand...
Click to collapse
OK the problem could be this https://code.google.com/p/google-app-engine-samples/issues/detail?id=40 i.e. the path is wrong and the app engine application launcher has created another default app.yaml and app.py file.
nparley said:
I assume you have done all the steps here? //bitbucket.org/nparley/mylatitude/wiki/Setup%20App Does your site say running if you go to here://appengine.google.com
---------- Post added at 09:34 PM ---------- Previous post was at 09:26 PM ----------
OK the problem could be this //code.google.com/p/google-app-engine-samples/issues/detail?id=40 i.e. the path is wrong and the app engine application launcher has created another default app.yaml and app.py file.
Click to expand...
Click to collapse
yes problem is same.Launcher is creating a new folder inside my project folder with a default main.py and app.yaml file.
my project folder is JMlatitude and i copied my client secret file in JMlatitude folder and edited the app.yaml file as JMlatitude.yaml but launcher is creating new folder (JMlatitude) inside project folder.pls help what to do
Thanks Brian for the dedicated post.
This is how to get started with my service (www.backituders.com).
0) The service is free
1) Drop me an email to [email protected] backituders <Dot> com. You'll get a username pwd password back.
2) Start using backituders!
You can find more infos, expandoing docs and guides at www.backituders.com.
Backituders is meant as an API you can use to implement your own applications on. I provide the server and APIs to set and get positions, set alamers and alerts and so on. There is also a ready-to-use "draw my map" and "follow my device live" feature.
Will use this post as updates to the service are done.
- 20131031: display timestamps in RFC format, display speed
- 20131104: changed the icons on the map to reflect direction (8 main dir) when available.
- 20131104: sono disponibili istruzioni base in italiano.
Thanks any for testing.
holysmoke001 said:
yes problem is same.Launcher is creating a new folder inside my project folder with a default main.py and app.yaml file.
my project folder is JMlatitude and i copied my client secret file in JMlatitude folder and edited the app.yaml file as JMlatitude.yaml but launcher is creating new folder (JMlatitude) inside project folder.pls help what to do
Click to expand...
Click to collapse
Hi,
Sorry I might not have been clear in my instructions. You have to keep the file named app.yaml as this is the file Google App Engine looks for and will create a new one if not found. It is inside this file where you have to make the edit, the top line contains `application: YOURAPPNAME` here you have to change YOURAPPNAME to JMlatitude.
Neil
nparley said:
Hi,
Sorry I might not have been clear in my instructions. You have to keep the file named app.yaml as this is the file Google App Engine looks for and will create a new one if not found. It is inside this file where you have to make the edit, the top line contains `application: YOURAPPNAME` here you have to change YOURAPPNAME to JMlatitude.
Neil
Click to expand...
Click to collapse
Thanks Neil its working now
Hi Neil pls help me in setting up backitude custom server settings
1.there are two custom field 1 one in request parameter values and another is in request parameter keys .which key i have to fill in both custom fields
API key or application key setup at yourapp.appspot.com. when i fill custom field 1 in request parameter values it shows no custom field parameter key configured, value will not post (configure below) when i run test it shows error gaugler.backitude.service.backitudeException:Custom Server POST failure: HTTP/1.1400 Bad Request
2. what to fill in Device ID
holysmoke001 said:
Hi Neil pls help me in setting up backitude custom server settings
1.there are two custom field 1 one in request parameter values and another is in request parameter keys .which key i have to fill in both custom fields
API key or application key setup at yourapp.appspot.com. when i fill custom field 1 in request parameter values it shows no custom field parameter key configured, value will not post (configure below) when i run test it shows error gaugler.backitude.service.backitudeException:Custom Server POST failure: HTTP/1.1400 Bad Request
2. what to fill in Device ID
Click to expand...
Click to collapse
Get the key from going here: yourapp.appspot.com/viewkey. You want to end up with something like this:
https://bytebucket.org/nparley/mylatitude/wiki/settings.png I.e. at the top in the custom field type your long key. Under requestion parameter keys change custom field 1 (it'll have no value to start with) to the word "key". I don't seem to have a device ID on my backitude version are you sure you have the latest version from the play store? (or try leaving it bank) Also make sure you change the response codes to 200,202
Neil
Trying to set up the app in google apps
nparley said:
To repost from the other thread:
I have finally got around to opening up my Google App Engine app code. It runs on the free quota on Google App Engine and so it does not require you to pay for a server. Also as it's your app you have control of your location data, and can delete it at any time by going into the Google App Engine settings for your app. You send your location to your app and it is recorded in a database. The app allows you to share your location with other people by creating a white list of allowed Google accounts. I have also made a history page which you can use to see your updates from each day. I can't add links but you should be able to find the code at bitbucket.org / nparley
No doubt there will be bugs which I have not found. If you find one please add an issue to on the bitbucket page. I will continue to add new features as I can but am open to requests, just add a feature requestion issue on bitbucket.
Cheers,
Neil
Click to expand...
Click to collapse
I have also tried to set up the app with google engine. I got stuck where I need to download a copy of my app code. I have no idea how to do this. In the description you wrote to download the latest .zip or clone the git repo into a directory. How will I be able to do that?
Thanks for helping me.
regards
Manfred
nparley said:
Get the key from going here: yourapp.appspot.com/viewkey. You want to end up with something like this:
https://bytebucket.org/nparley/mylatitude/wiki/settings.png I.e. at the top in the custom field type your long key. Under requestion parameter keys change custom field 1 (it'll have no value to start with) to the word "key". I don't seem to have a device ID on my backitude version are you sure you have the latest version from the play store? (or try leaving it bank) Also make sure you change the response codes to 200,202
Neil
Click to expand...
Click to collapse
Hi Neil!
Great app, finally got it to work. Will report more feedback later!
Good work!!
Error message with key
nparley said:
Get the key from going here: yourapp.appspot.com/viewkey. You want to end up with something like this:
https://bytebucket.org/nparley/mylatitude/wiki/settings.png I.e. at the top in the custom field type your long key. Under requestion parameter keys change custom field 1 (it'll have no value to start with) to the word "key". I don't seem to have a device ID on my backitude version are you sure you have the latest version from the play store? (or try leaving it bank) Also make sure you change the response codes to 200,202
Neil
Click to expand...
Click to collapse
Hi Neil!
Now the app worked for a couple of hours and now I get this message:
Google has disabled use of the Maps API for this application. The provided key is not a valid Google API Key, or it is not authorized for the Google Maps Javascript API v3 on this site. If you are the owner of this application, you can learn about obtaining a valid key here: https://developers.google.com/maps/documentation/javascript/tutorial#api_key
Do you have any idea what I could do?
Thanks!
dukerider33 said:
Hi Neil!
Now the app worked for a couple of hours and now I get this message:
Google has disabled use of the Maps API for this application. The provided key is not a valid Google API Key, or it is not authorized for the Google Maps Javascript API v3 on this site. If you are the owner of this application, you can learn about obtaining a valid key here: https://developers.google.com/maps/documentation/javascript/tutorial#api_key
Do you have any idea what I could do?
Thanks!
Click to expand...
Click to collapse
This probably means you have your Google maps api key wrong or you did not fill in your Google maps api in when you setup the app. The instructions show you where to get the browser api key from, it's this page https://code.google.com/apis to get your Google maps browser api key. You can go here https://appengine.google.com log in to your app, click on data store viewer, in the by kind drop down pick maps the keyid should equal the key you get from the Google api console. You can edit it if it's not correct. If you have no maps kind in the data store you need to delete all the users and run the setup again.
Hopes this gives you some help trubble shooting,
Neil
nparley said:
This probably means you have your Google maps api key wrong or you did not fill in your Google maps api in when you setup the app. The instructions show you where to get the browser api key from, it's this page https://code.google.com/apis to get your Google maps browser api key. You can go here https://appengine.google.com log in to your app, click on data store viewer, in the by kind drop down pick maps the keyid should equal the key you get from the Google api console. You can edit it if it's not correct. If you have no maps kind in the data store you need to delete all the users and run the setup again.
Hopes this gives you some help trubble shooting,
Neil
Click to expand...
Click to collapse
Hi Neil,
had to setup the site completely new from the scratch. Now it works nicely.
Thank you!

[OLD version][APP][dev] The Box v3- a lightweight app for custom ROM devs 12Aug2014

**Wrong thread!** GO TO THE NEW THREAD FOR LATEST APP!​
As of 24 May 2015 - find The Box v.4.0 here. Watch the youtube demo video in the OP For answers to most questions.
Announcement: Can everyone who is using The Box in a ROM or theme collection project please post a link to your thread and a screenshot of your personalized layout of The Box?? I keep hearing that it's used in more places, and I've asked that you just let me know. Please do so. Thanks.
The Box
The simple app that any custom Android ROM developer or themer just might want to have…​
New! You can check out one ROM's implementation of The Box on the play store at the following link. This is only useful for users of that one ROM. It's their version of The Box. Here you can easily make your own version. The Box sample here: https://play.google.com/store/apps/details?id=com.erikalin.box1
Want people to stop asking you for updates and mods you've already uploaded? Tired of thread clutter with people asking repeatedly for certain download links or theme threads? Include this lightweight app that gives your ROM/theme users instant access to your updates, fixes, themes, etc., as soon as you upload. No additional service setup is required. Keep using whatever file hosting service you already use (i.e. AndroidFileHost, Dev-Host,your own, whatever).
From start to finish, I estimate it will take you 45-60 minutes to get this ready to go for yourself. This includes time for you to learn "what goes where". If you were to do it a second time, it would take ten minutes. You decompile the app, change a few strings, and make a few other XML edits, a few smali edits, and put in your own desired images and app icon. Build it up and you have a nice addition to your custom ROM or theme package. Minimum SDK is 11; app will work out of the box on any version of Android 3.0 +. There are some other apps, more complex than this one, for you to choose to integrate in your projects. The Box is intentionally simple.
Demo video for an earlier version of The Box:​
https://vimeo.com/97699006​
​
Written instructions for customizing – See Post #3 for step-by-step instructions on exactly where you need to make your edits.
Downloads –
SIX BUTTON VERSION as shown here in the OP is attached to the OP
TWO BUTTON VERSION is found here.
Change Log –
V3.0 August 12, 2014
- completely redid the layout
- added space for smaller buttons
- new package name to avoid conflict with Play Store
V.2.0 June 12, 2014
- restructured app to remove webviews; buttons now call browser, or forum-browser (i.e. Tapatalk) per user's default settings (faster, smoother)
- thanks talkingmonkeys for requesting this change.
V 1.0 initial release June 9, 2014
Known Issues –
Do NOT upload your version to the play store. Don't do it. Users will get app updates to someone else's project, because it will have the same package name. Avoid.
Contributor –
erikalin
Latest version – 3.0
Latest release date – August 12, 2014
Created on – June 9, 2014
FAQ –
See Post #2.
{
"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"
}
Frequently Asked Questions​
What is the main purpose of The Box?
Very simple: Include this app in your ROM and users can check for ROM updates, fixes, modifications, themes and whatever else you would normally link to in your thread. Use AHF or whatever you normally use for hosting, and just create a useful file structure for your uploads.This app can really save thread clutter with people asking for links to mods and updates. You can customize The Box one time and literally never have to touch it again.
Do you have a sample of The Box that is in use already in a custom ROM?
Yep. The Box is currently being used in several different ROMs and theme collection projects. One version is on the play store. Download it to check it out as a functioning example: https://play.google.com/store/apps/details?id=com.erikalin.box1
How is The Box different from OTA Updater apps?
Thanks for the question, @gcrutchr. The Box is much more simple than OTA updater apps. This is basic, lightweight, clean and will just always work. More features means more places to experience errors. The Box is not meant to compete with feature-rich updater apps. You can customize The Box one time and literally never have to touch it again.
Who is The Box for?
This is primarily for custom ROM developers who do not want to create an app from scratch. The other possible users are themers who offer a library of themes and updates, and cannot create an app from scratch. Just because you can theme an app doesn’t mean you can make one. If you know how to create an app from scratch then do that. If not, theme this one for your own use.
Who is this not for?
*This* thread here is not for end users. The Box is useless until it has been customized for someone’s ROM or other project. If an end-user downloads The Box from this thread, he/she will be getting a fully-functional dummy app with placeholder images. The Box is also not for app developers who are good at what they do. One can make a much more complex and personalized app for one’s specific needs. This is intentionally simple in order to be quick, easy and universal.
How long would it take me to customize The Box to use in my project?
An hour maybe, or a little less? If you go back later to update again, it'll probably take five minutes to revise a link or something like that.
Do you have default images?
Yeah. I put a folder of the placeholder images in a zip file attached to the OP. Replace those with your own and drop them back into the template apk file.
Can you tell me all the places I need to get in and edit to customize?
Yes. See post #3.
What permissions does the app require?
This app only needs one permission: Full internet access.
What permissions do I have to use this app?
Take it, customize it and use it in your own projects. Please post a link on this thread to your project in which you're using The Box. You NEED to leave the “About” tab on the bottom of the main activity (screen) and you need to not edit my About activity string. There are no ads, no fees, no hidden costs or other obligations. Please leave my credit as-is and my app name as-is. Don’t remove the About. I made The Box and have offered it to you for you to customize and personalize. Let’s just not pretend you made it, mkay?
So what can I not modify if I use The Box in my own project?
Don’t remove the visibility of the About tab from the main activity (“main screen”) and don’t edit the string content of that activity, which is located in strings.xml file and works in the AboutActivity.java class file. Do not rename the app. These are my credits and need to stay. Change whatever else you want.
Can you add in this feature or that feature?
Doubtful. This is intentionally simple in order to be both lightweight and universal, and easy for you to customize too! If you want a more complicated app then by all means go make one. If you have light suggestions, consistent with a basic, universal app such as this, feel free to make them on this thread. I’ll definitely consider all feedback, but offer no promises. This is supposed to be a SIMPLE solution.
Why no splash screen?
I see no reason to make end-users wait three seconds. It’s annoying. Nobody wants to be shown an ad when they open an app. They want to be shown an app. Also no facebook integration, ads, other device permissions or complicated programming which would just be harder for you to customize and thus defeat my purpose.
What if I don't like this app?
No problem, and I respectfully ask that you not share that with me. Just don't use it. I'm not seeking critique but sharing my work for free.
If you have any questions, ask them in the thread and I’ll add to this FAQ post.​
Customizations Guide - rev. August 12, 2014​
Reminder: Please leave my credits as-is and obviously don’t rename The Box. It is illegal for you to take this code and call it your own app. I am letting you customize and use The Box pretty much however you want. Just don't take my credit away, please. Other than that, let’s do this.
DIRECTIONS​
Download the latest version of The Box template from the OP.
Decompile the app.
Edit strings.
In res\values\strings.xml edit only the following values:
Code:
<string name="ROMtitle">"Awesome ROM Name Here"</string>
<string name="ROMsubtitle">"subtitle for your ROM here ~ by yourname"</string>
<string name="action_settings">Hi :)</string> <!-- This is what shows on pressing the menu button -->
<string name="themes">Themes</string> <!-- This is in the middle of the screen - you might want to leave this or change it -->
Replace images.
These placeholder images are in a zip file attached to the OP. Note: You can adjust the background transparency for behind the button images in res\layout\activity_main.xml. For each button you’ll want to modify the android: background entry for that image button from the default which is as shown below:
Code:
android:background="#[B][COLOR="Red"]33000000[/COLOR][/B]"
Edit smali for buttons’ URL destinations.
Specify the URLs for the websites you want each button to go to. To edit MainActivity.java in an app you can make the edits in:
smali\com\erikalin\box3\MainActivity.smali
Find the website URLs and replace them. They have obvious names so you can easily modify them to be your desired URLs. Do not touch anything in the MainActivity.smali file except to edit the URLs, or you will probably mess things up. Each URL is matched with a method with an obvious name. These are the methods, and you'll edit the URLs for each:
goToRepo
goToXDA
goTobuttonA
goTobuttonB
goTobuttonC
goTobuttonD
goTobuttonE
goTobuttonF
Let me show you one example below. I will put in red what you would edit. Don't touch anything else. Just change the URLs.
Code:
.method public goTobuttonA(Landroid/view/View;)V
.locals 1
.param p1, "view" # Landroid/view/View;
.prologue
.line 29
const-string v0, "[U][B][COLOR="red"]http://google.com/#q=letter+A[/COLOR][/B][/U]"
invoke-direct {p0, v0}, Lcom/erikalin/box3/MainActivity;->goToUrl(Ljava/lang/String;)V
.line 30
return-void
.end method
Build it back up, sign and test. Enjoy!
This is an AWESOME app!!! Thank you so much for sharing it with us.
It will definitely come in handy. Nice work @erikalin.
Thank you very much! Looking forward to playing around with this and adding it into my rom. Great work!
Sent from my SGH-I747 using XDA Premium 4 mobile app
nice
nicely explained!!!
Great!
prateek.khurana31 said:
nicely explained!!!
Click to expand...
Click to collapse
itskapil said:
Great!
Click to expand...
Click to collapse
I'm glad you like it. Try it out! :good:
Edit: QUESTION
Push Notifications
Yes / No?​
ANSWER
No. There's no way to include push notifications in The Box as a universal template in which you can just go make a few personalized edits and you're ready to use The Box on your own. Basically for me to set it up so that you can insert a few things and then be able to send your own push notifications, it would be much more complicated than the intent of this project, and I would have to host server resources. The Box is more simple than that. If you are curious, here's a good tutorial that will work. My guess is that if you can follow this tutorial then you're probably creating your own app rather than customizing The Box.
erikalin said:
Features?
I am considering integrating push notifications... in other words, you as the ROM or theme developer (the person customizing this app to use in his/her project) can send a push notification to users. I would have to make it so the user can turn push notifications on/off too, obviously.
I think this is a nuisance feature though, isn't it? What would you do if some notification woke you up at 3:00 AM because you didn't realize you had to turn it off? I'd be livid. And... who the heck would leave them on anyway?
Push Notifications
Yes / No?​
Edit: I could look into silent push notifications...
Click to expand...
Click to collapse
Yea I like this idea. Maybe setting them to off as default?
Sent from my SGH-I747 using XDA Premium 4 mobile app
Just curious...how does this differ from the open source project "OTA Update Center"?
ota update center
Thanks
gcrutchr said:
Just curious...how does this differ from the open source project "OTA Update Center"?
ota update center
Thanks
Click to expand...
Click to collapse
Hi. The Box is a lot more simple than that. This is lightweight, able to load the file repo and the xda thread. More features means more places to lose compatibility or encounter errors. This will just always work clean and simple on every device. It isn't meant to replace or compete with feature-rich OTA updater apps.
erikalin said:
Hi. The Box is a lot more simple than that. This is lightweight, able to load the file repo and the xda thread. More features means more places to lose compatibility or encounter errors. This will just always work clean and simple on every device. It isn't meant to replace or compete with feature-rich OTA updater apps.
Click to expand...
Click to collapse
Thanks for the feedback. Will look into using this in my next rom.
As much as I want to try it, I cannot download from the main server or alternates. Nothing happens when I click on any server.
gcrutchr said:
As much as I want to try it, I cannot download from the main server or alternates. Nothing happens when I click on any server.
Click to expand...
Click to collapse
Yeah? It's all on Android File Host. I just tested and it's working for me. Are you looking for the three button demo? I can attach that one file to this post, I think. Let's see... If you're looking for the working example from the Project X ROM let me know and I'll grab it and attach that instead of this one. Do me a favor and try one more time with AFH. It should be okay...
gcrutchr said:
Thanks. Tried again this time using shift+select and now getting 404 error file not found. I am in Thailand but I do not think that is an issue.
Click to expand...
Click to collapse
I guess I'm not sure then. They don't show any server errors... Anyway, I attached the file you're probably looking for here to this post on xda.
erikalin said:
Yeah? It's all on Android File Host. I just tested and it's working for me. Are you looking for the three button demo? I can attach that one file to this post, I think. Let's see... If you're looking for the working example from the Project X ROM let me know and I'll grab it and attach that instead of this one. Do me a favor and try one more time with AFH. It should be okay...
Click to expand...
Click to collapse
Thanks. Tried again this time using shift+select and now getting 404 error file not found. I am in Thailand but I do not think that is an issue.
erikalin said:
Features?
Push Notifications
Yes / No?​
Edit: I could look into silent push notifications...
Click to expand...
Click to collapse
I say yes as long as they are off by default.
I'll have mine up soon. Well probably next week when I get the time to finish everything.
One small request would be to remove the webview thats in the app just because it loads slower than the browser. It only comes up for the 2nd button and I'm just wondering if you could teach me how to remove it. Thank you for this great app.
talkingmonkeys said:
One small request would be to remove the webview thats in the app just because it loads slower than the browser. It only comes up for the 2nd button and I'm just wondering if you could teach me how to remove it. Thank you for this great app.
Click to expand...
Click to collapse
Do you know how to use Eclipse?
Sent from my Verizon HTC One M8 using Tapatalk
erikalin said:
Do you know how to use Eclipse?
Sent from my Verizon HTC One M8 using Tapatalk
Click to expand...
Click to collapse
I don't but I can look up how to

[MOD] Spotify Dogfood 8.4.39.612 - The Open-Source Ad-Free Spotify mod for Android

Spotify Dogfood​​The open-source ad-free version of Spotify for Android
​
Hello all,
First of all, I'd like to address about the reason behind making this thread, and the project that is behind it.
I thought to myself, why people are free to publish YouTube mods to avoid ads, but not Spotify? So there's why the project started.
Spotify Dogfood is a mod of the Spotify Android App, coming directly from the Google Play Store and in both it's Beta and probably Stable releases, and modded in the cleanest way possible. This mod is "open-source". The Spotify app itself of course isn't, but the alterations/modifications done to the app in order to avoid ads are clear and concise, well-documented, and are getting uploaded as patchsets, so that they are perceptible and crystal clear at plain sight. This is because people, starting by myself, don't easily trust modded applications out there, so this makes it easier for you all to "audit" the modifications, and even contribute to the project by forking it, making your changes and then pushing it back to me.
This project has been running for several months now, and it's been now that I decided to move a step forward and make it public.
Restrictions and limitations:
This application replaces your current Spotify installation. You need to uninstall any previous installations of it first.
If the app came bundled with your device, like most Samsung devices, you can't use this mod out of the box, since you need to change the package name to a different one.
This application has been signed with a different key than the one used by Spotify. This means that Facebook login won't work unless you don't have Facebook's app installed, or you uninstall and/or deactivate it, if it came bundled with your device. Once done, log-in to your account using Facebook and, once logged-in, re-download and/or re-activate your Facebook app, if you want to.
This application won't work with Android Auto, since it hasn't been installed by the Google Play Store's agent. Fortunately, there's a fix found by XDA's News Writer @MishaalRahman, which you can read here.
As commented by Senior Moderator @matt4321, please, refrain from asking for other premium features to be unlocked.
What is different from *others'* mods:
Like I said previously, I didn't feel comfortable trusting code I had never seen, then I started investigating on how to disable Ads and such on my own and with help of awesome pages like this one that helped me clear my mind on how to properly modify the liborbit-jni so file. Once I had finally understood how it worked, I've made it public so that anyone can revise it on it's own.
How to contribute:
You can have a bit more information in the README uploaded in the repo. But basically, feel free to fork any branch you want, modify or investigate the patchsets as you want and recreate them in a different package.
Cool story bro, where's the download??!1:
Whoa there, cowboy!
All downloads, both precompiled APKs and Source code can be found in the GitHub Releases section.
Please, also kindly note the following - Do NOT re-upload them.
GitHub Releases - GitHub Main page - Project's webpage - Telegram Group
Disclaimer / Final words:
This thread, as well as the provided patchsets and precompiled APKs are just for demonstrative & educational purposes. They should not be used for illegal actions, and/or any action that can imply a violation in the ToS of the software used in the thread.
XDA-Developers.com takes no responsibility either, as this thread is hosted only and exclusively as for information purposes and doesn't attach any content that is copyrighted, but a link to it, just as it could have been found at Google.
It is yours, the final user, the one who takes the responsibility of using it wisely, as a functional PoC, and not for piracy or any other illegal actions.
XDA:DevDB Information
Spotify Dogfood, App for all devices (see above for details)
Contributors
linuxct
Version Information
Status: Stable
Current Stable Version: 8.4.39.612-dogfood
Stable Release Date: 2018-01-28
Created 2017-07-06
Last Updated 2018-03-01
How to apply the PatchSets
To apply the patchsets manually, you need the following tools:
Git, and preferably GitHub's app for Windows.
Java JDK and it's environment variables properly set-up
APKtool
An Android Keystore to sign your APKs
The version you wish to apply the patchset to, from APKmirror.
Android Debugging Bridge installed (perferably system-wide), as well as it's drivers if you're on Windows.
Once you meet all of the above, it's as easy as it follows:
Code:
#unpack the apk
java -jar apktool_WhateverVersion.jar d NameOfTheApk.apk && cd NameOfTheApk
#now copy the patch file to the dir you're on
git apply --stat NameOfThePatch.path #checks the stats
git apply --check NameOfThePatch.path #sees if it's compatible with the environment
git apply NameOfThePatch.path #applies the patch
#compile the result
java -jar apktool_WhateverVersion.jar b NameOfTheDirectory
#sign with your key
jarsigner -verbose -sigalg SHA1withRSA -digestalg SHA1 -keystore /path/to/your/keystore NameOfTheDirectory/dist/NameOfTheResultingFile.apk YOURALIAS
#install the final apk
adb install -r NameOfTheDirectory/dist/NameOfTheResultingFile.apk
If you want to review the patch itself, you can use git-am.
You have more info in GitHub's README file.
In order to comply with XDA's Rules and CoC, Spotify Dogfood has taken a new direction, and now offers *exclusively* Ad-free music playback. Any other features won't be included anymore in this mod. But, that doesn't mean anything if you're a true, a core user of this app, because there will still be regular updates to it, as there has been up until now.
However, all patchsets, branches and everything that has been posted up until now will be deleted progressively, in order to comply with the above mentioned.
Still have doubts? Read this:
preference said:
FOR ALL THE PEOPLE WHO WON'T READ THE FIRST POST:
1. Dogfood only supports shuffle mode at normal quality with No ADVERTISEMENTS.
2. The mod had to be changed due to xda rules
3. This thread is not the place to complain. If you have an issue with the changes go to the telegram chat and talk with other dogfood users
4. There is nothing you can do to change the situation - be happy with what you get. No advertisements is still a really good perk
5. Support the developer if you can, monetarily or through teaching noobs about how to read the OP.
6. Look outside of xda if you can't handle the changes, but do not post any information on this board. Keep it related to dogfood
Click to expand...
Click to collapse
Thanks for this.
I can finally ditch the warezwebsite mods for something more trustworthy.
thank for this, awesome
Worth a try!
Sent from my A0001 using Tapatalk
Only 3 replies? Seriously?
paed808 said:
Only 3 replies? Seriously?
Click to expand...
Click to collapse
¯\_(ツ)_/¯
I pretty much think all of my new threads are damned at this point... Sigh.
linuxct said:
¯\_(ツ)_/¯
I pretty much think all of my new threads are damned at this point... Sigh.
Click to expand...
Click to collapse
Anyways, thanks again for making this.
Let's hope it continues to work and Spotify doesn't get buttmad.
I tried it and no ads so far. Good job =)!
Thanks !!!
great job !
After a day of usage, Spotify now tells me to buy premium to play my songs.
Sent from my A0001 using Tapatalk
dnle71 said:
After a day of usage, Spotify now tells me to buy premium to play my songs.
Sent from my A0001 using Tapatalk
Click to expand...
Click to collapse
How many songs/hours worth of music have you played non stop? Have you tried basic stuff like rebooting your device or clearing the app data? Can you try running Spotify in your desktop pc and let it run for a few songs to see how it reacts?
I've been using latest version at my workplace for 8+ hours, and I've a small group of early adopters that have been trying it out too, and none of us have ever seen that kind of message in our devices.
linuxct said:
How many songs/hours worth of music have you played non stop? Have you tried basic stuff like rebooting your device or clearing the app data? Can you try running Spotify in your desktop pc and let it run for a few songs to see how it reacts?
I've been using latest version at my workplace for 8+ hours, and I've a small group of early adopters that have been trying it out too, and none of us have ever seen that kind of message in our devices.
Click to expand...
Click to collapse
I haven't done any of that, sorry. I jist tried playing around 30 minutes last night then tried the morning and then it started giving me the message.
Let me try to do the following later.
Sent from my A0001 using Tapatalk
Thank you very much! This is awesome, you are awesome!
I’ll try! Thanks!
Oh yeah!!!!!! Great work and great dev to make this open source app... Congrats
Enviado do meu ONEPLUS A3003 através de Tapatalk
Nice, I'm currently using a modded one anyway but an open source version on XDA is always preferred. Can you add a changelog at all? The one I'm currently used to using shows all changes and features that it enables but I haven't seen a list like that here.
Awesome job I need this
This is amazing. Works like a charm. Thank you very much!

Categories

Resources