[XAP|Source] Marketplace Config - Easily change marketplace settings - Windows Phone 7 Development and Hacking

Here is an app I made to quickly and easily change marketplace settings. Similar apps exist already, but this one has a few features I've not seen in the other ones. This project was more of a way for me to learn about homebrew dev, but it resulted in a useful program so nothing wrong with that
Source
This app is open source. It is hosted on Google Code. If anyone would like to help contribute, PM me and we'll discuss getting you added.
What you can do
Change OEM marketplace - You can choose from any of the 8 OEM stores, or view a combined market with all 8 at the same time.
Change MO marketplace - I'm working on getting as many as possible included. The app will ask kindly to submit if yours is a new one.
Change the maximum file size cap over 3g - Download larger apps and podcasts over 3G without needing a wifi connection
Lock the settings - Prevents your settings from reverting back in a day or two when the marketplace updates itself
Who can run this?
You need a root unlock. So either a full unlock or WP7 Root Tools with this app marked as Trusted.
Changelog
Beta 2.0.3 - 6/7/12 - Going off of the error reports I received from yesterday's release, I added better error handling to hopefully alleviate those problems.
Beta 2.0.2 - 6/6/12 - Added a better error handler. Users are now prompted with the option to submit bug reports, so I may better track down issues.
Beta 2.0.1 - 6/4/12 - Fixed a bug that would cause the app to crash if no MO store was configured on the device. The app also informs you if it's not set to Trusted in WP7 Root Tools.
Beta 2 - 5/31/12 - After spending too much time working on a rewrite, the next beta is ready. I've changed a ton of things under the hood, but the big new feature is viewing all OEM markets at the same time. I've also released the source as of this version, though I am not speaking for it's quality. Some parts are more polished than others.
Beta 1.4 - 5/2/12 - Added a few new mobile operators. Added country flags to MO selection screen. Fixed more crashed.
Beta 1.3 - 5/1/12 - Added a slew of new mobile operators, along with an option to remove it (for contract-free phones, direct from OEM, etc)
Beta 1.2 - 4/29/12 - Fixed crashing bug. Added Telekom MO (thanks contable). Added OEM logos.
Beta 1.1 - 4/28/12 - Removed device spoofing (it can break DRM, thanks for the heads up GoodDayToDie). Added Sprint MO.
Beta 1 - 4/28/12 - Initial release
Thanks to
Heathcliff74 for the wonderful WP7 Root Tools SDK
GoodDayToDie for his homebrew efforts, which I use for file IO
balcsida for providing new icons

It doesn't launch on my Titan...so it will probably need a higher level of unlock than a Dev unlock.

You'll need "root" unlock, meaning either full-unlock or WP7 Root Tools and the app marked as "Trusted".
@ken52787: Very cool! I was actually working on something very much like this. Would you mind sharing your source code? If I can merge what I was working on into what you've already got, that would be great.
One very big concern, though: changing the OEM name in DeviceTargetingInfo (which is what I assume you're doing to make apps like Nokia Drive work) is extremely dangerous. Although I'm not sure exactly what the trigger is (suggestions have been things like leaving it changed for more than 24 hours, or changing it more than 5 times), changing that value can permanently break the Marketplace DRM on your phone. All your Marketplace apps will stop launching, and you won't be able to install more. The only solution we know of is a hard-reset or a restore point; returning the registry value to the original OEM name does not help.

GoodDayToDie said:
You'll need "root" unlock, meaning either full-unlock or WP7 Root Tools and the app marked as "Trusted".
@ken52787: Very cool! I was actually working on something very much like this. Would you mind sharing your source code? If I can merge what I was working on into what you've already got, that would be great.
One very big concern, though: changing the OEM name in DeviceTargetingInfo (which is what I assume you're doing to make apps like Nokia Drive work) is extremely dangerous. Although I'm not sure exactly what the trigger is (suggestions have been things like leaving it changed for more than 24 hours, or changing it more than 5 times), changing that value can permanently break the Marketplace DRM on your phone. All your Marketplace apps will stop launching, and you won't be able to install more. The only solution we know of is a hard-reset or a restore point; returning the registry value to the original OEM name does not help.
Click to expand...
Click to collapse
Yikes! I was not aware of this. I took that out and reupped the xap.
And yes, I'll share the source soon, I just want to clean it up a bit first since it's rather sloppy at the moment

ken52787 said:
Here is an app I made to quickly and easily change marketplace settings. Similar apps exist already, but this one has a few features I've not seen in the other ones. This project was more of a way for me to learn about homebrew dev, but it resulted in a useful program so nothing wrong with that
The initial beta is a little rough around the edges, but should be stable. Please report any oddities you notice and provide feedback and suggestions.
What you can do
Change OEM marketplace - Included are Acer, Dell, Fujitsu, HTC, LG, Nokia, Samsung, and ZTE (although only HTC, LG, Nokia, and Samsung have accessible marketplaces)
Change MO marketplace - Included are AT&T, Orange, Sprint, and Verizon (I had a hard time finding other marketplaces. If you are on a carrier other than these, please send me your settings so I can include them, the program will automate this for you with your permission)
Change the maximum file size cap over 3g - Download larger apps and podcasts over 3G without needing a wifi connection
Lock the settings - Prevents your settings from reverting back in a day or two when the marketplace updates itself
Who can run this?
You need a root unlock. So either a full unlock or WP7 Root Tools with this app marked as Trusted.
Changelog
Beta 1.1 - 4/28/12 - Removed device spoofing (it can break DRM, thanks for the heads up GoodDayToDie). Added Sprint MO.
Beta 1 - 4/28/12 - Initial release
Thanks to
Heathcliff74 for the wonderful WP7 Root Tools SDK
GoodDayToDie for his homebrew efforts, which I use for file IO
Click to expand...
Click to collapse
not working with my mozart?

life25ak said:
not working with my mozart?
Click to expand...
Click to collapse
What kind of unlock do you have?

curious... why are XAPs being posted in this sub-forum when their is a WP7 Software Development sub-forum?
nice looking app, though. curious as to how you 'locked' the Market.
would love to add that into my version of this app, Market Select.

The Software Development sub-forum always seemsed more focused on general app development rather than tweaks to the OS. Last time I was reading that forum, it seemed like it was mostly stuff using the official APIs, too. Maybe I should start reading it again, though...
You can lock in changes to Marketplace configurations by setting read-only on the XML files.

@OP: Thanks for the quick fix, and you're welcome for the tip! The 1.1 version works well on my phone. Two (related) suggestions, though:
1: The messageboxes the pop up at first run block the UI from loading. If the UI doesn't load within a few seconds (10 or so) the OS will kill the app. You may want to cause them to pop up on a delay or something...
2: There's no option to send your MO (or OEM) files after the initial messagebox prompt. I'd like to send you the T-Mobile US files (not that the TMoUS apps are super-exciting) but the app was killed on me before I could click it! I can go pull them off the filesystem manually, of course...

Thx for this app.
I have sent you the settings for Telekom Germany (T-Mobile DE), would be nice if you could add them...

GoodDayToDie said:
@OP: Thanks for the quick fix, and you're welcome for the tip! The 1.1 version works well on my phone. Two (related) suggestions, though:
1: The messageboxes the pop up at first run block the UI from loading. If the UI doesn't load within a few seconds (10 or so) the OS will kill the app. You may want to cause them to pop up on a delay or something...
2: There's no option to send your MO (or OEM) files after the initial messagebox prompt. I'd like to send you the T-Mobile US files (not that the TMoUS apps are super-exciting) but the app was killed on me before I could click it! I can go pull them off the filesystem manually, of course...
Click to expand...
Click to collapse
See what I mean about sloppy coding and wanting to clean it up before releasing the source

App works good on my hd7. Although during first run it made a backup. Then asked me if I wanted to sent my carrier setting since you don't have them. I was going to then the app crashed and never gave me the option again. App runs fine other than the first run when it crashed.
Sent from my HD7 T9292 using XDA Windows Phone 7 App

I posted a quick update. This one fixes the crashing bug.

Thx for the quick update...
Sent from my OMNIA7 using XDA Windows Phone 7 App

Very Cool..!!! Thank you! Htc Arrive

v1.1 and v 1.2 are crash
it mean i install this app then set trust on root...it open but quickly get out
so;
whats the problem !?

Doesn't load on my Dev Unlocked TITAN.
Says something about an error occurred while reading current store config

VegaNovus said:
Doesn't load on my Dev Unlocked TITAN.
Says something about an error occurred while reading current store config
Click to expand...
Click to collapse
You need a full unlock or root access with WP7 Root Tools. Dev unlock is not enough (the phone doesn't like me messing about in the file system)
Also, I just posted an update. No changes other than adding a bunch of new MOs. Thanks to everyone who submitted them! I have some ideas for beta 2, if only I could find some time to work on it I also plan on releasing the source when I get that version out.

Using 1.3 with Samsung Focus... Set the Trust to ON through RootTools as well.
I Get the "an error occured while reading your current store config".
If i click on OK application shows the main screen briefly and then exists. Otherwise shows the following error:::
CreateFile failed for \My Documents\Zune\PimentoCache\Keepers\LKKG_MOStoreConfig.xml! GetLastError: 2
Thanks.

You're sure it's two Ks ("LKKG_MOStoreConfig.xml")? That's a typo, then. It would explain why you're getting an error of File Not Found as well.

Related

Remove limit of 10 unsigned app

I've finally reach 10 unsigned app on my phone. Took way longer that I thought...
This is not new for anyone who's not spending time asking for unlock key, but I've made a small app to automate the process of pushing the limit to 100000.
Here it is: http://bit.ly/qpVyR4
Work on my HTC, may work on other device as well (let me know).
Warning: At least one person had problem deploying app on his Samsung after running this app.
Edit: Updated version with rollback button (which already exists but was hidden )
this has been out for like a month now..... but good job of creating one!
http://forum.xda-developers.com/showthread.php?t=875885
Exactly what I said... nothing new but packaged as a XAP
Advanced Configuration Tool for WP7 Beta
http://forum.touchxperience.com/viewtopic.php?f=11&t=590&p=2349
has an option to remove the limit, plus set as many colour schemes as you like, and add single registry keys directly.
Its still beta but works a treat so far on my HD2, and comes with about 50 colours for the theme, or input your own with hex codes.
This tools works only on HTC. Minne should work on Samsung too, maybe on LG.
But if you have an HTC, AdvConfig is probably easier to use.
I'm not spending much time making pretty app
I ran this earlier (along with setting the key manually before), and it doesn't work. I still was limited to 10 apps.
But now, frighteningly, I'm unable to deploy -some- apps from Visual Studio (limit reached). I have a real dev unlock, never messed with Chevron.
Thanks, (nico)! I've removed this (stupid!) limit on my Focus (officially unlocked), everything works fine including deployment/debug from VS 2010. Good job!
davux said:
I ran this earlier (along with setting the key manually before), and it doesn't work. I still was limited to 10 apps.
But now, frighteningly, I'm unable to deploy -some- apps from Visual Studio (limit reached). I have a real dev unlock, never messed with Chevron.
Click to expand...
Click to collapse
I'm also officially unlock.
Like with folks with Chevron, I think the limit will be reseted periodically by Zune.
What do you mean by "some" apps?
You can't install more than 10 apps?
Not sure what do you mean, but I'll try to answer.
Using (official) unlock method, you won't be able to deploy more than 10 unsigned apps. 3 if you have a student account.
Chevron also have the same 10 limit (because they intentionally keep MS limit).
This registry tweak try to remove that limit.
In either way, this don't modify the number of app you can install though Marketplace, which is not limited.
(nico) said:
I'm also officially unlock.
Like with folks with Chevron, I think the limit will be reseted periodically by Zune.
What do you mean by "some" apps?
Click to expand...
Click to collapse
I set the key manually in the code Rusty released for the Samsung devices the other day. I wasn't able to deploy the 11th app via VS. I continued dealing with it until I got your XAP, I ran that yesterday and now sometimes I have trouble deploying in VS, even with <10 apps. Restarting VS and the phone doesn't have any effect.
Not that I'm blaming you or anything - just figured I'd note my experience. Some projects will still deploy, not sure of the pattern yet.
Thanks, that the kind of feedback I'm looking for. I'll add this to the first post to warn people.
If you have more infos, please share so we can have something more stable.
Thanks!
* Works on [Europe] Omnia 7
Ah this is the tool that some XDA user was trying to pass off as his own tool.
The big Athiest said:
Ah this is the tool that some XDA user was trying to pass off as his own tool.
Click to expand...
Click to collapse
What are you talking about?
(nico) said:
What are you talking about?
Click to expand...
Click to collapse
Look up the RRTool in this forum that I wrote, he is basically saying I rebranded the Chevron Tool as my own, even though my Tool runs on the device not from desktop and only prevents relocking, it doesnt actually unlock a device like chevron does. He only has 2 posts and tried to ruin my credability! Not Happy!
He is a lame troll. Don't pay attention. Thank you both guys! Great job!
P.S. Just a small remark: after using your tools (first I've tried (nico)'s tool, later (toady) RRTool. Both works good but behavior of VS 2010 a little bit changed. Now I can't deploy project via Zune - must close it first and use WPConnect.
Did you try to restore the original value (probably 10 for most users) and see what happends?
Nope, I didn't. Just have no time to browse for Samsung's registry editor or reflect back your's or lyriquidperfection app. Could you add an option to restore back an original values? Anyway, it's not a real problem. MS limitation of 10 app (or 3 for student account) it's just stupid and unfair. What, if I have more than 10(3) homebrew projects to debug and run? What, if I want to recreate all apps I need by myself? But of course the "MS greediness sux!" is not a topic for this thread
sensboston said:
Nope, I didn't. Just have no time to browse for Samsung's registry editor or reflect back your's or lyriquidperfection app. Could you add an option to restore back an original values? Anyway, it's not a real problem. MS limitation of 10 app (or 3 for student account) it's just stupid and unfair. What, if I have more than 10(3) homebrew projects to debug and run? What, if I want to recreate all apps I need by myself? But of course the "MS greediness sux!" is not a topic for this thread
Click to expand...
Click to collapse
Sorry I thought I did it but the button was hidden
Here is an updated version with a restore button to 10 apps: http://bit.ly/gKZDgj

My Focus and I are running back to NoDo as fast as possible..

..unless there's a working registry solution for Samsung devices in Mango. I suppose I thought fast app switching was developer code independent, but it seems I need to apply the dehydration hack to achieve the results I want.
Here's some background in case anyone can help me load a registry editor on here or revert to NoDo, apply the tweak, and then upgrade back again:
1. I have no idea where my backup actually saved to, but I know it's there. Does anyone know what the known locations are? The actual file extension?
2. I used the cracked tool to upgrade to Mango. I'm a dev but I'm stuck in GeoTrust verification which won't let me dev unlock (or upgrade using the official tool) until that process is complete.
3. Are there any other tweaks I should apply while in NoDo land?
%LOCALAPPDATA%\Microsoft\Windows Phone Update
Fast task switching is developer-code independent, but third-party apps written using the pre-Mango SDK will have their Activate (rehydrate) function called when you switch to them. In many cases, this will cause the app to waste some time. Even in Mango, non-foreground apps aren't actually running - they're just suspended (in RAM but inactive). Resume *can* be instant, but it requires that the app be aware of suspend/resume, which requires that it be a Mango app.
Registry tweaks made while in NoDo should carry over to Mango. My phone carried its custom accent color and a few other changes across the update just fine.
seanlindo06 said:
2. I used the cracked tool to upgrade to Mango. I'm a dev but I'm stuck in GeoTrust verification which won't let me dev unlock (or upgrade using the official tool) until that process is complete.
Click to expand...
Click to collapse
FYI, I was stuck there as well. As it turned out, I didn't submit the required icon images and screenshot. It sat in a waiting for GeoTrust verification without telling me my submission was incomplete.
Not sure if this helps but I figured I may as well pass along my experience.
I also I put a .99 price on the shell app I submitted. I obtained my dev account via DreamSpark and I remember reading that you will waste one of your 5 free apps if you don't put a price on the verification app.
naplesbill said:
FYI, I was stuck there as well. As it turned out, I didn't submit the required icon images and screenshot. It sat in a waiting for GeoTrust verification without telling me my submission was incomplete.
Not sure if this helps but I figured I may as well pass along my experience.
I also I put a .99 price on the shell app I submitted. I obtained my dev account via DreamSpark and I remember reading that you will waste one of your 5 free apps if you don't put a price on the verification app.
Click to expand...
Click to collapse
The free apps limit has been raised to a hundred. So that's not really relevant anymore.
You could also do it the way I did - actually write a basic application and submit it when you've got the core functionality done. Then keep working on it and as soon as it's published, submit an update that actually just finishes the app.
seanlindo06 said:
..unless there's a working registry solution for Samsung devices in Mango. I suppose I thought fast app switching was developer code independent, but it seems I need to apply the dehydration hack to achieve the results I want.
Here's some background in case anyone can help me load a registry editor on here or revert to NoDo, apply the tweak, and then upgrade back again:
1. I have no idea where my backup actually saved to, but I know it's there. Does anyone know what the known locations are? The actual file extension?
2. I used the cracked tool to upgrade to Mango. I'm a dev but I'm stuck in GeoTrust verification which won't let me dev unlock (or upgrade using the official tool) until that process is complete.
3. Are there any other tweaks I should apply while in NoDo land?
Click to expand...
Click to collapse
Υour title has nothing to do with your post !!!!!!!!!!!!!! Change the title m8

[XAP] LG Test App (provxml query) 1

Hi folks,
I need a few testers with LG devices to try something for me. This app is a test app to see if it might be possible to write a registry browser using no homebrew native DLLs (and therefore it would work on Mango).
The test app does not require Mango, but will run on Mango if your device is unlocked for Mango homebrew ("full unlock", not just "dev unlock"). Don't remove ID_CAP_INTEROPSERVICES; the app almost certainly work without it.
Please run the three tests and report the results. You can then uninstall the app. It will make no changes to your phone. Whether successful or unsuccessful, I have more tests that I'll want to run later. Thanks for helping out; I don't have an LG device so you're really just helping yourselves!
Note: I'm aware that Heathclif74 is bringing his Root Tools app to LG and to Mango, so in the long run this won't be needed. However, it may still be useful - as an interim solution or as an easy way to get interesting results.
EDIT 1: Thanks folks! Due to the third testing returning wayyyyy too many results, I suggest you don't run this anymore - I've got the data I need to create another version. I'll post test 2 later (and I'll have a better way to handle anything expected to return lots of data).
Ok, I will testing after ~5 hours.
I was thinking of the same thing although i tried to copy the repsonse xml files on samsungs to query, but unfortunately they were empty and querying did not work for me. I remember that LG indeed has a query api (it will probably only work on the registry and not on the file system itself).
Good luck with it, if you need help let me know
LG Optimus 7, V7392
Test 1= 1
Test 2= Sub.key contained 1 values: Version
Test 3= a whole bunch of results, maybe 150 !!!!!
If i have more time would report it all.
Thanks
LG Quantum: 7720.68
Test 1:
Success
the value was 1
Test 2:
Sub-key contained 1 values:
Version
Test 3:
attached 1st page as image.
all following pages as jpeg package (images 1168 through 1187)
it should be straight forward to OCR these if necessary.... (btw. it's not possible to create txt file and email this within your app? )
btw. Marvin_S and GoodDayToDie, some of this looks like a set of the config.xml that I can call up with the MFG tool on the phone.
the entire config.xml is here:
http://daytonacs.org/files/wp7/
image IMG_1160 (600x800).jpg through IMG_1167 (600x800).jpg
You say we need to full unlock our LG devices if we are on Mango. How can we do this if we can only unlock HTC devices? Did I miss something here?
airwa1kin7 said:
You say we need to full unlock our LG devices if we are on Mango. How can we do this if we can only unlock HTC devices? Did I miss something here?
Click to expand...
Click to collapse
I think dev unlock here is meant to be a legit developer unlocked device via an AppHub account etc.
Not the way LG users use the MFG tool to unlock their phones. I consider this as fully unlocked because I can sideload ID_CAP_INTEROPSERVICES xaps perfectly fine, whereas a user with a legit dev unlocked device cannot. They just get the dreaded E: 0x81030120 error.
Here is what the expert says.
The current status with LG devices on Mango is that registry changes are possible via DiagProvXML (MFG tool aside) but file ops are restricted.
1 and 2 tests - same.
What you need from 3th test? I don't understand.
minep said:
1 and 2 tests - same.
What you need from 3th test? I don't understand.
Click to expand...
Click to collapse
he needs the entire query result for research into LG on-device file operations and registry changes. Since it's many pages of code and no way to export to txt the best way is to take pics of your device for each page you can scroll through (see my post above).
That need change to TextBox.
Whoa, thanks guys!!
Not sure what test 3 is doing - it should be only retrieving results one level deep (recursive=false). This will need to be explored more.
However, the actual result is fantastic! Please stop running the app for now until I come up witha new version that doesn't throw pages and pages of results at you.
@derausgewanderte: I opened up Visual Studio to start that app less than 30 minutes before posting it. Total hack, no frills. I was only expecting maybe 20 results max for the third test, and not recursive ones either!
GoodDayToDie said:
Whoa, thanks guys!!
Not sure what test 3 is doing - it should be only retrieving results one level deep (recursive=false). This will need to be explored more.
However, the actual result is fantastic! Please stop running the app for now until I come up witha new version that doesn't throw pages and pages of results at you.
@derausgewanderte: I opened up Visual Studio to start that app less than 30 minutes before posting it. Total hack, no frills. I was only expecting maybe 20 results max for the third test, and not recursive ones either!
Click to expand...
Click to collapse
either way, there seems to be tons of interesting information in there

[SDK] LiveLibs ~ auto-updating code in your apps!

LiveLibs is an SDK that you can use in your apps. It allows you to have automatically updating code written in JavaScript. And yes, it'll even pass Marketplace approval. For more info, go here:
LiveLibs.com
Alpha 2 changes:
- Completely changed over from IronRuby to Jurassic (JavaScript) engine
- Improved security (hints and libraries are signed; lib.xml contains more verification data)
(Reserved)
Even though I do respect all the effort you may have put in this project, I'm still not too sure about it. As we've already seen and learned from Android and even iOS there's always the risk of a misuse of such an updating method as unauthorized code can be injected. I rather wait for updates to pass the official certification ways than let my apps update on their own and not knowing what exactly was downloaded.
You are right. With alpha 1 there is a risk of a MitM attack causing apps to download something they shouldn't. However, the framework is already in place to mitigate that - I just haven't had time to implement it fully.
All library ZIP files are signed on the server side with the LiveLibs private key, and the signature is checked by the SDK upon download. Starting with alpha 2, hints will also be signed, which will ensure that erroneous updates are never downloaded.
Also, you don't have to trust the LiveLibs.com site to do the updating. The SDK lets you specify alternate URLs for hints and for libraries.
Just stumbled across this link from your sig. Very cool idea. However, I want to know: have you tested it on a developer-locked phone? Dev-unlock allows the phone to execute code that doesn't have a Microsoft signature (Marketplace apps receive this on all DLLs) but user-replaced or self-compiled binaries won't have that signature. I don't know exactly how your libs worked, but from the look of things (based on your choice of languages) you're looking at monkey-patching the code in place. That's a cool idea, and may well get through Marketplace ingestion, but as soon as the patching is used, you'll have a file without a valid Marketplace signature, and the app won't run anymore...
At least, that's my guess on what would happen. If you can get around that, it would be incredible. That would provide a way to run homebrew code on dev-locked Windows Phones...
The way it worked with IronRuby is the Ruby code was interpreted on the fly. With Jurassic, the JavaScript is compiled into anonymous classes (IIRC from docs/forums on Jurassic.codeplex.com) and executed w/o ever creating separate assemblies. In other words, there's no monkey patching - just live emitted code via Reflection.Emit and similar methods. I'm in the process of getting alpha 2 ready for release now, actually.
Hmm, it's sounds quite interesting! However it's not a way to get an interop-unlock. Also (from the marketing side) it has another cons: an official updates via marketplace for some reasons are increasing number of app customers/downloads (so, good idea - if you have ads-based app - to publish updates at least monthly) but silent, "self-update" I afraid will not.
There's no reason to stop doing proper Marketplace-based updates. The biggest benefit of LiveLibs is the ability to quickly crush bugs instead of having to wait for Marketplace approval while your users complain and give your app bad ratings because of some simple bug.
Arktronic said:
There's no reason to stop doing proper Marketplace-based updates. The biggest benefit of LiveLibs is the ability to quickly crush bugs instead of having to wait for Marketplace approval while your users complain and give your app bad ratings because of some simple bug.
Click to expand...
Click to collapse
Agree. But your code also may have a bugs so it's still not an easy decision: should I add that app's overhead or better to spend more time/money for beta-testing
That, my friend, is entirely up to you
LiveLibs alpha 2 is out. Also, here's a little demo app I wrote using LiveLibs: Rando!

[TOOL] AppThwack - Easily test apps on real devices we host

Hi, I'm Trent and I co-created AppThwack, a service for on-demand automated testing of Android apps on real devices. Basically, you upload an apk and a couple minutes later you get screenshots and logcat dumps from actual phones and tablets we host.
Beta Users Needed
We're currently looking for devs to join our private beta. You can message me or sign up on our website and I'll get a beta code to you shortly. We're trying to stress the system and make additions/adjustments so the service is as useful as possible for developers.
Current Features
Real phones and tablets: About 20 high- and low-end devices and we add a few more every week.
Fast: See results in real time. Full test runs on all devices takes a minute or two to complete.
Selectable default tests: Install, launch, UI Monkey, Cleanup
Configurable tests: For example, specify the number of UI Monkey events and seed the randomizer
JUnit including Robotium support via uploaded test packages
Screenshots in portrait and landscape on all devices
Logcat and filterable logcat viewer
High-level results sortable by device or test
Full stack-traces for any exception that occurs
Future
We're working on adding more test frameworks like monkeyrunner and more default tests, particularly performance tests that measure battery consumption, CPU usage, etc. We're also adding more data visualization and charting so it's easy to see what some of the gathered statistics mean.
We plan to launch soon, but the beta program will remain in effect even after that. The service will follow a freemium model. Again, the beta is free and we're going to keep it in place even after we eventually launch.
Inter-device automation
Our back-end supports device-to-device automation, so if you have an app or scenario that you'd like to test that involves multiple devices or interaction with other devices, even non-Android devices, let me know. We're looking for people to help us develop how this service will be exposed.
Edit: I can't post links, but if you search for "appthwack" you'll find it. Btw, I've apparently lurked since October, 2008. Yikes.
Just wondering will this support of testing apps that require root?
Also any chance we can see like a live pic of the device when it installs the app and opens it?
Sent from my VS910 4G using xda premium
motodroidfreak said:
Just wondering will this support of testing apps that require root?
Click to expand...
Click to collapse
Right now it does not and all of our phones are as close to stock as possible. I'll look into making it an option so we automatically root before your app installs and then un-root after the tests are complete. Root opens up some new possibilities, both good and bad, so I'll need to think about it.
motodroidfreak said:
Also any chance we can see like a live pic of the device when it installs the app and opens it?
Click to expand...
Click to collapse
Yes! The launch test takes a screenshot in both landscape and portrait. You can see all screenshots sorted by device by clicking "By Device" or "By Test" and clicking the "Screenshots" link in the blue box at the top.
Screenshots also show up in each launch test log so you can see the context as the shot was captured. Logcat dumps show up in the same place (Link from the blue box at the top will open a filterable and highlighted log viewer).
Alright thanks I'll try it out tonight
Sent from my VS910 4G using xda premium
Holy cow. Didn't realize such web service existed.
I just signed up and currently having a look around. Is it possible for me to join the beta? Thanks!
Is it possible for a "free" upgrade for my account? Heh just asking
EDIT : Created a new project. Then I'm stuck. The "Runs" tab is empty.
EDIT again : Oh.. uploading had error previously. Uploading again.
Very interesting project. Good luck to your team and I hope I can be a good beta tester
Realy interesting, for us, almost of our apps needs root access, so please think about adding root to your service
Test on my Sensation
Will test on my sensation
test
nullFactory said:
Hi, I'm Trent and I co-created AppThwack, a service for on-demand automated testing of Android apps on real devices. Basically, you upload an apk and a couple minutes later you get screenshots and logcat dumps from actual phones and tablets we host.
Beta Users Needed
We're currently looking for devs to join our private beta. You can message me or sign up on our website and I'll get a beta code to you shortly. We're trying to stress the system and make additions/adjustments so the service is as useful as possible for developers.
Current Features
Real phones and tablets: About 20 high- and low-end devices and we add a few more every week.
Fast: See results in real time. Full test runs on all devices takes a minute or two to complete.
Selectable default tests: Install, launch, UI Monkey, Cleanup
Configurable tests: For example, specify the number of UI Monkey events and seed the randomizer
JUnit including Robotium support via uploaded test packages
Screenshots in portrait and landscape on all devices
Logcat and filterable logcat viewer
High-level results sortable by device or test
Full stack-traces for any exception that occurs
Future
We're working on adding more test frameworks like monkeyrunner and more default tests, particularly performance tests that measure battery consumption, CPU usage, etc. We're also adding more data visualization and charting so it's easy to see what some of the gathered statistics mean.
We plan to launch soon, but the beta program will remain in effect even after that. The service will follow a freemium model. Again, the beta is free and we're going to keep it in place even after we eventually launch.
Inter-device automation
Our back-end supports device-to-device automation, so if you have an app or scenario that you'd like to test that involves multiple devices or interaction with other devices, even non-Android devices, let me know. We're looking for people to help us develop how this service will be exposed.
Edit: I can't post links, but if you search for "appthwack" you'll find it. Btw, I've apparently lurked since October, 2008. Yikes.
Click to expand...
Click to collapse
I would like to test the tool, can you share with me..
Tested
Tested the tool, seems too good..
Suggestion : In-case if you want to reach maximum number of developer. Allow developer to use has free.
IDEA : You can request developer to post about you're tool on there app page, website & play store... As you're giving the tool as free you will get enough number of people to view & use the tool.. if the developer agree then you will allow him to use the tool for free of cost..
As a developer am ready to use the tool & post about you in my app & other places too...
This is a great tool, just uploaded an apk of my app that's in my signature and it worked, with a couple of NullPointers from the Play Store's licence service. That shouldn't happen, and doesn't on any of my devices, so I suspect it's an issue on your end. Any idea why?
HTML:
java.lang.NullPointerException at com.google.android.vending.licensing.LicenseValidator.verify(LicenseValidator.java:99) at com.google.android.vending.licensing.LicenseChecker$ResultListener$2.run(LicenseChecker.java:228) at android.os.Handler.handleCallback(Handler.java:605) at android.os.Handler.dispatchMessage(Handler.java:92) at android.os.Looper.loop(Looper.java:137) at android.os.HandlerThread.run(HandlerThread.java:60)
HTML:
FATAL EXCEPTION: background thread java.lang.NullPointerException at com.google.android.vending.licensing.LicenseValidator.verify(LicenseValidator.java:99) at com.google.android.vending.licensing.LicenseChecker$ResultListener$2.run(LicenseChecker.java:228) at android.os.Handler.handleCallback(Handler.java:608) at android.os.Handler.dispatchMessage(Handler.java:92) at android.os.Looper.loop(Looper.java:156) at android.os.HandlerThread.run(HandlerThread.java:60)
Borland
We are using Silk Mobile for end to end applications testing. Do you ever used this tool?
What an interesting service! I'll look into this from work tomorrow.
Not having used this at all, the first things which do spring to mind are:
-streaming realtime logcat
-a (skype?) connection with live streaming video of the app running, so you can see layouts/animations etc.
Anyway, I'm going to check this out tomorrow!
Quinny899 said:
This is a great tool, just uploaded an apk of my app that's in my signature and it worked, with a couple of NullPointers from the Play Store's licence service. That shouldn't happen, and doesn't on any of my devices, so I suspect it's an issue on your end. Any idea why?
Click to expand...
Click to collapse
Thanks for checking out the service. My immediate guess it that this is caused by the absence of a default Play account. Many devices have no account as one of our supported frameworks, calabash, removes accounts upon cleanup after script completion. On the plus-side, if you were to write scripts you should be able to add a temporary account from the test itself.
Highly unlikely you'd hit this bug in a real world situation, but it is a bug nonetheless.
Really awesome service! Can't test it for the moment as it doesn't support root apps, but this is really a great concept :good:
Maybe you could build a superuser permissions manager which would grant root access but makes sure to keep /system mounted as read-only, this way no harm could be done to the devices and us root apps devs could use your awesome service.
I actually got quite a few ideas, you could delete the mount binary in /system/xbin and use it in an internal appthwack app's private data, so that it's the only app able to call this binary and thus to mount /system.
I'd definitely subscribe to AppThwack if it had root support.
If you want help with developing this kind of secure root environment for the testing, I'd gladly contribute.
EDIT : Strangely enough, I just tested it with my app (which asks for root in the launcher activity, so I really didn't expect it to work) and had 0 failures, 75 pass.
How comes ? Have you already added root support ?^^
Either way this is really cool, I'm going to spread the words and most likely subscribe a paid account :good:
Is there somewhere we can see pictures of your device lab? Gotta be one hell of a device museum you got over there^^
Androguide.fr said:
Really awesome service! Can't test it for the moment as it doesn't support root apps, but this is really a great concept :good:
Click to expand...
Click to collapse
Awesome, thanks for the kind words!
EDIT : Strangely enough, I just tested it with my app (which asks for root in the launcher activity, so I really didn't expect it to work) and had 0 failures, 75 pass.
How comes ? Have you already added root support ?^^
Click to expand...
Click to collapse
This is pretty interesting. The only two rooted devices are a couple running CM. I'll look into this further, and if you have any ideas I'd love to hear them as well.
Either way this is really cool, I'm going to spread the words and most likely subscribe a paid account :good:
Is there somewhere we can see pictures of your device lab? Gotta be one hell of a device museum you got over there^^
Click to expand...
Click to collapse
Sweet, I really appreciate it. As soon as I have the number of posts to do so I'll post a pic of the lab.
Some things can not be automated, like scanning a QR code or reading/writing to an NFC tag. Do you plan on adding "manual tests" for a fee?
This would be really great to test apps on specific hardware.
worldtiki said:
Some things can not be automated, like scanning a QR code or reading/writing to an NFC tag. Do you plan on adding "manual tests" for a fee?
This would be really great to test apps on specific hardware.
Click to expand...
Click to collapse
Thanks for the question! Our primary focus is on automation. There are existing test houses and services that will execute manual tests like those you describe, but of course because of the manual component they're slow and expensive.
We often push folks to break their testing down into more granular chunks. For instance, verify you can take a picture and deal with the image, even if it's not the QR code or whatever your app usually consumes. This will find problems with simply using the camera and resulting image location. Now, have a separate test that processes a photo of a QR code, but feed the image in as part of the test. This removes the camera component from the analysis part, meaning it's now possible to benchmark the image analysis algorithm on all devices.
With a combination of a service like ours where you test very, very quickly on tons of devices, you can now do some more UX/end-to-end tests on a handful of devices yourself. This hybrid approach is great for finding the vast majority of issues before release.
nice post
Realy interesting, for us
Awesome tool !
No Developer can test his/her app on many devices. But your tool ... A W E S O M E ! ... I Used it yesterday to test two of my new apps ... Found some error is my app on certain devices which i'd have never found without AppThwack .. :good: :good:

Categories

Resources