Skip to content

Archive for July, 2010

Google updates its Android Market Developer Distribution Agreement

Jul 24 10
by mat

Google have just issued an update to the Android Market Developer Distribution Agreement, which if you do not accept within 30 days your applications will be removed from the market.

Updated Android Market Developer Distribution Agreement

Updated Android Market Developer Distribution Agreement

The Highlights
I will just emphasise the things that I believe will be of most interest (to me) and other developers (I imagine), might save some of you the trouble of having to read it all:

3.2 A Transaction Fee, as defined below, will be charged on the sales price and apportioned to the Payment Processor and, if one exists, the Authorized Carrier. Looks like some carriers are going to be getting a cut of developers profits, would be interested to see if this is an incentive for the networks by google or if the networks have been putting pressure on google for a cut of the profits. It isn’t clear if this will come out of the transaction free or our own cut, I would imagine it is the latter but will probably be clarified in the future dependant on service provider.

Annoyingly the link that google provid in 3.2 is broken (http://www.android.com/support/market/bin/answer.py?answer=112622) with regards the pricing arrangement.

4.5 Non-Compete. You may not use the Market to distribute or make available any Product whose primary purpose is to facilitate the distribution of Products outside of the Market.

Looks like google are a little concerned about alternative markets (good if not slightly dated article on these market apps here). This could also be related to the recent developments in china with regards android… (androidpolice)

7. Product Takedowns Some regulations about providing support/refunds after taking down an app, and that google may take down your app if it is: “defective, malicious, infringes Intellectual Property Rights of another person, defames, infringes a third party’s right of publicity or privacy, or does not comply with applicable laws or rgeulations”

Minor points

  • Your app may be used for publicity or as a demonstration, sounds like agreeing to free advertising… not a bad thing if they choose your app!
  • Several additions to help the buyers get refunds from shoddy or unsupported applications/developers.
  • Notification of google having the right to order the apps in searches how it wants
  • 12.1 a – google doesn’t plan on taking the blame if you cause a death with your app somehow…
  • 13.1 + 13.2 – we don’t blame google for mistakes/crimes we commit and will cover their legal costs if required…

Feedback and full agreement

Those are what I consider to be the most important things, please comment if you think I missed anything or interpreted something incorrectly. The full distribution agreement follows below:

Android market developer distribution agreement
Definitions

Authorized Carrier: A mobile network operator who is authorized to receive a distribution fee for Products that are sold to users of Devices on its network.

Brand Features: the trade names, trade marks, service marks, logos, domain names, and other distinctive brand features of each party, respectively, as owned by (or licensed to) such party from time to time.

Developer or You: Any person or company who is registered and approved by the Market to distribute Products in accordance with the terms of this Agreement.

Developer Account: A publishing account issued to Developers that enables the distribution of Products via the Market.

Device: Any mobile device that can access the Market, as defined herein

Google: Google Inc., a Delaware corporation with principal place of business at 1600 Amphitheatre Parkway, Mountain View, CA 94043, United States.

Intellectual Property Rights: means all copyright; moral rights; patent rights; trade or service marks; design right; semiconductor topography rights; rights in or relating to databases; rights in or relating to confidential information; rights in relation to domain names; privacy or publicity rights and any other intellectual property rights (registered or unregistered) throughout the world; including all rights of reversion and rights to any applications and pending registrations and the right to sue for and recover damages for past infringements.

Market: The Android Market site operated by Google, where Developers can distribute Products directly to users of Devices.

Payment Processor(s): Any party authorized by Google to provide payment processing services that enable Developers with optional Payment Accounts to charge Device users for Products distributed via the Market.

Payment Account: A financial account issued by a Payment Processor to a Developer that authorizes the Payment Processor to collect and remit payments on the Developer’s behalf for Products sold via the Market. Developers must be approved by a Payment Processor for a Payment Account and maintain their account in good standing to charge for Products distributed in the Market.

Products: Software, content and digital materials created for Devices in accordance with the Android SDK and distributed via the Market.

1. Introduction

1.1 The Market is a publicly available site on which Android Developers can distribute Products for Devices. In order to distribute Products on the Market, You must acquire and maintain a valid Developer Account.

1.2 If You want to charge a fee for Your Products, You must also acquire and maintain a valid Payment Account from an authorized Payment Processor.

2. Accepting this Agreement

2.1 This Android Market Developer Distribution Agreement (“Agreement”) forms a legally binding contract between You and Google in relation to Your use of the Market to distribute Products. In order to use the Market to distribute Products, You must first agree to this Agreement by clicking to accept where this option is made available to You. You may not distribute Products on the Market if You do not accept this Agreement.

2.2 You may not use the Market to distribute Products and may not accept the Agreement unless You are verified as a Developer in good standing. This Agreement will automatically terminate if You are (a) not a Developer in good standing, or (b) a person or entity barred from using Android software under the laws of the United States or other countries including the country in which You are resident or from which You use the Android software.

2.3 If You are agreeing to be bound by this Agreement on behalf of Your employer or other entity, You represent and warrant that You have full legal authority to bind Your employer or such entity to this Agreement. If You do not have the requisite authority, You may not accept the Agreement or use the Market on behalf of Your employer or other entity.

3. Pricing and Payments.

3.1 This Agreement covers both Products You choose to distribute for free and Products for which You charge a fee (once payment processing is enabled on the Market). In order to charge a fee for Your Products, You must have a valid Payment Account under a separate agreement with a Payment Processor. If You already have a Payment Account with a Payment Processor before signing up for the Market, then the terms of this Agreement shall supersede Your Payment Account terms and condition for Products sold via the Market.
You may set the price for Your Products in the currencies permitted by the Payment Processor. The Market may display to users the price of Products in their native currency, but it is not responsible for the accuracy of currency rates or conversion

3.2 The price You set for Products will determine the amount of payment You will receive. A Transaction Fee, as defined below, will be charged on the sales price and apportioned to the Payment Processor and, if one exists, the Authorized Carrier. The remainder (sales price less Transaction Fee) will be remitted to You. The “Transaction Fee” is set forth at http://www.android.com/support/market/bin/answer.py?answer=112622 and may be revised by Google from time to time. Developer is responsible for determining if a Product is taxable and the applicable tax rate for the Payment Processor to collect for each taxing jurisdiction where Products are sold. Developer is responsible for remitting taxes to the appropriate taxing authority.

3.3 You may also choose to distribute Products for free. If the Product is free, You will not be charged a Transaction Fee. You may not collect future charges from users for copies of the Products that those users were initially allowed to download for free. This is not intended to prevent distribution of free trial versions of the Product with an “upsell” option to obtain the full version of the Product: Such free trials for Products are encouraged. However, if You want to collect fees after the free trial expires, You must collect all fees for the full version of the Product through the Payment Processor on the Market. In this Agreement, “free” means there are no charges or fees of any kind for use of the Product. All fees received by Developers for Products distributed via the Market must be processed by the Market’s Payment Processor.

3.4 Special Refund Requirements. The Payment Processor’s standard terms and conditions regarding refunds will apply except the following terms apply to Your distribution of Products on the Market.
Products that can be previewed by the buyer (such as ringtones and wallpapers): No refund is required or allowed.
Products that cannot be previewed by the buyer (such as applications): You authorize Google to give the buyer a full refund of the Product price if the buyer requests the refund within 48 hours after purchase.
3.5 You Support Your Product. You will be solely responsible for support and maintenance of Your Products and any complaints about Your Products. Your contact information will be displayed in each application detail page and made available to users for customer support purposes. Failure to provide adequate support for Your Products may result in low Product ratings, less prominent product exposure, low sales and billing disputes. Except in cases when multiple disputes are initiated by a user with abnormal dispute history, billing disputes received by Payment Processor for Products sold for less than $10 may be automatically charged back to the Developer, in addition to any handling fees charged by the Payment Processor. Chargeback requests for Products $10 or more will be handled in accordance with the Payment Processor’s standard policy.

3.6 Reinstalls. Users are allowed unlimited reinstalls of each application distributed via the Market, provided however that if You remove a Product(s) from the Market pursuant to clauses (i), (ii), (iii) or (iv) of Section 7.1, such Product(s) shall be removed from all portions of the Market and users shall no longer have a right or ability to reinstall the affected Products.

4. Use of the Market by You

4.1 Except for the license rights granted by You in Section 5 below, Google agrees that it obtains no right, title or interest from You (or Your licensors) under this Agreement in or to any of Products, including any intellectual property rights which subsist in those applications.

4.2 You agree to use the Market only for purposes that are permitted by (a) this Agreement and (b) any applicable law, regulation or generally accepted practices or guidelines in the relevant jurisdictions (including any laws regarding the export of data or software to and from the United States or other relevant countries).

4.3 You agree that if You use the Market to distribute Products, You will protect the privacy and legal rights of users. If the users provide You with, or Your Product accesses or uses, user names, passwords, or other login information or personal information, You must make the users aware that the information will be available to Your Product, and You must provide legally adequate privacy notice and protection for those users. Further, Your Product may only use that information for the limited purposes for which the user has given You permission to do so. If Your Product stores personal or sensitive information provided by users, it must do so securely and only for as long as it is needed. But if the user has opted into a separate agreement with You that allows You or Your Product to store or use personal or sensitive information directly related to Your Product (not including other products or applications) then the terms of that separate agreement will govern Your use of such information. If the user provides Your Product with Google Account information, Your Product may only use that information to access the user’s Google Account when, and for the limited purposes for which, the user has given You permission to do so.

4.4 Prohibited Actions. You agree that You will not engage in any activity with the Market, including the development or distribution of Products, that interferes with, disrupts, damages, or accesses in an unauthorized manner the devices, servers, networks, or other properties or services of any third party including, but not limited to, Android Users, Google or any mobile network operator. You may not use customer information obtained from the Market to sell or distribute Products outside of the Market.

4.5 Non-Compete. You may not use the Market to distribute or make available any Product whose primary purpose is to facilitate the distribution of Products outside of the Market.

4.6 You agree that You are solely responsible for (and that Google has no responsibility to You or to any third party for) any Products You distribute through the Market and for the consequences of Your actions (including any loss or damage which Google may suffer) by doing so.

4.7 You agree that You are solely responsible for (and that Google has no responsibility to You or to any third party for) any breach of Your obligations under this Agreement, any applicable third party contract or terms of service, or any applicable law or regulation, and for the consequences (including any loss or damage which Google or any third party may suffer) of any such breach.

4.8 The Market will allow You to protect Your Products so that users may not share Products with other users or devices.

4.9 Product Ratings. The Market will allow users to rate Products. Only users who download the applicable Product will be able to rate it. Product ratings will be used to determine the placement of Products on the Market with higher rated Products generally given better placement, subject to Google’s ability to change placement at Google’s sole discretion. The Market may also assign You a composite score for any Product that has not received user ratings. This “Developer Composite Score” will be a representation of the quality of Your Product based on Your history and will be determined at Google’s sole discretion. For new Developers without Product history, Google may use or publish performance measurements such as uninstall and/or refund rates to identify or remove Products that are not meeting acceptable standards, as determined by Google. Google reserves the right to display Products to users in a manner that will be determined at Google’s sole discretion.

Your Products may be subject to user ratings with which You may not agree. You may contact Google if You have any questions or concerns regarding such ratings at http://market.android.com/support/publish.

4.10 Marketing Your Product. You will be responsible for uploading Your Products to the Market, providing required Product information to users, and accurately disclosing the security permissions necessary for the Product to function on user Devices. Products that are not properly uploaded will not be published in the Market.

4.11 Restricted Content. Any Product You distribute on the Market must adhere to the Market Content Policy for Developers located at http://www.android.com/market/terms/developer-content-policy.html.

5. License Grants

5.1 You grant to Google a nonexclusive, worldwide, and royalty-free license to: copy, perform, display, and use the Products for administrative and demonstration purposes in connection with the operation and marketing of the Market and to use the Products to make improvements to the Android platform.

5.2 You grant to Google a non-exclusive, and royalty-free license to make available, communicate to the public and distribute the Products according to the publishing options selected by You on the Product upload page of the Market.

5.3 Google may use consultants and other contractors in connection with the performance of obligations and exercise of rights under this agreement, and may sublicense its rights under this Agreement to them accordingly, provided that such consultants and contractors will be subject to the same obligations as Google. After termination of this Agreement, Google will not distribute Your Product, but may retain and use copies of the Product for support of the Market and the Android platform.

5.4 You grant to the user a non-exclusive, worldwide, and perpetual license to perform, display, and use the Product on the Device. If You choose, You may include a separate end user license agreement (EULA) in Your Product that will govern the user’s rights to the Product in lieu of the previous sentence.

5.5 You represent and warrant that You either own or have a valid licence of all Intellectual Property Rights in and to the Product. If You use third-party materials, or any Intellectual Property Rights in the Product are owned by third parties, You represent and warrant that You have the right to distribute the third-party material in the Product. You agree that You will not submit material to Market that is subject to third party Intellectual Property Rights unless You are the owner of such Intellectual Property Rights or have permission from their rightful owner to submit the material in the manner described in this Agreement.

6. Brand Features and Publicity.

6.1 Each party shall own all right, title and interest, including without limitation all Intellectual Property Rights, relating to its Brand Features. Except to the limited extent expressly provided in this Agreement, neither party grants, nor shall the other party acquire, any right, title or interest (including, without limitation, any implied license) in or to any Brand Features of the other party. Subject to the terms and conditions of this Agreement, Developer grants to Google and its affiliates a limited, non-exclusive, royalty-free, worldwide license during the term of this Agreement to display Developer Brand Features, submitted by Developer to Google, for use solely online or on mobile devices and in either case solely in connection with the distribution and sale of Developer’s Product through the Market or to otherwise fulfill its obligations under this Agreement. If Developer discontinues the distribution of specific Products on the Market, Google will cease use of the discontinued Products’ Brand Features pursuant to this Section 6.1, except as necessary to allow Google to effectuate Section 3.6. Nothing in this Agreement gives Developer a right to use any of Google’s trade names, trademarks, service marks, logos, domain names, or other distinctive brand features.

6.2 Publicity. In addition to the license granted in 6.1 above, for purposes of marketing the presence, distribution and sale of the Developer’s Product in the Market, Google and its affiliates may include Developer Brand Features, submitted by Developer to Google: (i) within the Market and in any Google-owned online or mobile properties; (ii) in online or mobile communications outside the Market when mentioned along with other Market Products; (iii) when making announcements of the availability of the Product online or on mobile devices; (iv) in presentations; and (v) in customer lists which appear either online or on mobile devices (which includes, without limitation, customer lists posted on Google websites). If Developer discontinues the distribution of specific Products on the Market, Google will cease use of the discontinued Products’ Brand Features for such marketing purposes. Google grants to Developer a limited, non-exclusive, worldwide, royalty-free license to use the Android Brand Features for the term of this Agreement solely for marketing purposes and only in accordance with the Android Brand Guidelines located at http://www.android.com/branding.html).

7. Product Takedowns.

7.1(a) Your Takedowns. You may remove Your Products from future distribution via the Market at any time, but You must comply with this Agreement and the Payment Processor’s Payment Account terms of service for any Products distributed through the Market, including but not limited to refund requirements. Removing Your Products from future distribution via the Market does not (a) affect the license rights of users who have previously purchased or downloaded Your Products, (b) remove Your Products from Devices or from any part of the Market where previously purchased or downloaded applications are stored on behalf of users, or (c) change Your obligation to deliver or support Products or services that have been previously purchased or downloaded by users. Notwithstanding the foregoing, in no event will Google maintain on any portion of the Market (including, without limitation, the part of the Market where previously purchased or downloaded applications are stored on behalf of users) any Product that You have removed from the Market and where You have provided written notice to Google that such removal was due to (i) an allegation of infringement, or actual infringement, of any Intellectual Property Right of any person, (ii) an allegation of defamation or actual defamation, (iii) an allegation of violation, or actual violation, of any third party’s right of publicity or privacy, or (iv) an allegation or determination that such Product does not comply with applicable law.
(b) If You remove a Product from the Market pursuant to clauses (i), (ii), (iii) or (iv) of this Section 7.1, and an end user purchased such Product within a year before the date of takedown, at Google’s request, You must refund to the affected end user all amounts paid by such end user for such affected Product, less the portion of the Transaction Fee specifically allocated to the credit card/payment processing for the associated transaction.

7.2 (a) Google Takedowns. While Google does not intend, and does not undertake, to monitor the Products or their content, if Google is notified by You or otherwise becomes aware and determines in its sole discretion that a Product or any portion thereof or Your Brand Features; (a) infringes the Intellectual Property Rights or any other rights of any third party; (b) breaches any applicable law or is subject to an injunction; (c) is pornographic, obscene or otherwise violates Google’s hosting policies or other terms of service as may be updated by Google from time to time in its sole discretion; (d) is being distributed by You improperly; (e) may create liability for Google or Authorized Carriers; (f) is deemed by Google to have a virus or is deemed to be malware, spyware or have an adverse impact on Google’s or an Authorized Carrier’s network; (g) breaches the terms of this Agreement or the Market Content Policy for Developers; or (h) the display of the Product is impacting the integrity of Google servers (i.e., users are unable to access such content or otherwise experience difficulty), Google may remove the Product from the Market or reclassify the Product at its sole discretion. Google reserves the right to suspend and/or bar any Developer from the Market at its sole discretion.
(b) Google enters into distribution agreements with device manufacturers and Authorized Carriers to place the Market software client application for the Market on Devices. These distribution agreements may require the involuntary removal of Products in breach of the Device manufacturer’s or Authorized Carrier’s terms of service.

(c) In the event that Your Product is involuntarily removed because it is defective, malicious, infringes Intellectual Property Rights of another person, defames, infringes a third party’s right of publicity or privacy, or does not comply with applicable laws or rgeulations, and an end user purchased such Product within a year before the date of takedown: (i) You must refund to Google, all amounts received, plus any associated fees (i.e. chargebacks and payment transaction fees), and (ii) Google may, at its sole discretion, withhold from Your future sales the aggregate of the amounts referred to in subsection (i) above.

8. Your Developer Credentials

8.1 You agree that You are responsible for maintaining the confidentiality of any developer credentials that may be issued to You by Google or which You may choose Yourself and that You will be solely responsible for all applications that are developed under Your developer credentials. Google may limit the number of Developer Accounts issued to You or to the company or organization You work for.

9. Privacy and Information

9.1 In order to continually innovate and improve the Market, Google may collect certain usage statistics from the Market and Devices, including but not limited to, information on how the Market and Devices are being used.

9.2 The data collected is examined in the aggregate to improve the Market for users and Developers and is maintained in accordance with Google’s Privacy Policy. To ensure the improvement of Products, limited aggregate data may be available to You upon written request.

10. Terminating this Agreement

10.1 This Agreement will continue to apply until terminated by either You or Google as set out below.

10.2 If You want to terminate this Agreement, You must provide Google with thirty (30) days prior written notice (unless this Agreement terminates under Section 14.1) and cease Your use of any relevant developer credentials.

10.3 Google may at any time, terminate this Agreement with You if:

(A) You have materially breached any provision of this Agreement; or

(B) Google is required to do so by law; or

(C) You cease being an authorized Developer; or

(D) Google decides to no longer provide the Market.

11. WARRANTIES

11.1 Each party warrants to the other that it will use reasonable care and skill in complying with its obligations under this Agreement.

11.2 Your use of the market and any material downloaded or otherwise obtained through the use of the Market is at Your own discretion and risk and You are solely responsible for any damage to your computer system or other device or loss of data that results from such use.

11.3 No conditions, warranties or other terms apply to the Market or to any other goods or services supplied by Google under this Agreement unless expressly set out in this Agreement. Subject to Section 12.1(b), no implied conditions, warranties or other terms apply (including any implied terms as to satisfactory quality, fitness for purpose or conformance with description).

12. LIMITATION OF LIABILITY

12.1 Nothing in this Agreement shall exclude or limit either party’s liability for:

(a) death or personal injury resulting from the negligence of either party or their servants, agents or employees;

(b) fraud or fraudulent misrepresentation; or

(c) misuse of confidential information.

Nothing in this Agreement shall exclude or limit liability under Section 13 (Indemnities).

Subject to clauses 12.1 and 12.2, neither party shall be liable under this Agreement (whether in contract, tort or otherwise) for any special, indirect or consequential losses (whether or not such losses were within the contemplation of the parties at the date of this Agreement) suffered or incurred by the other party.

13. Indemnification

13.1 You agree to defend, indemnify and hold harmless Google from and against any and all third party claims, actions, suits or proceedings, as well as any and all losses, liabilities, damages, costs and expenses (including reasonable legal fees) suffered or incurred by Google, any of its affiliates or their respective directors, officers, employees and agents, or by any Authorized Carrier, arising out of or accruing from (a) Your use of the Market in breach of this Agreement, and (b) any claim that Your Product that infringes any Intellectual Property Right of any person or defames any person or infringes their rights of publicity or privacy. Google shall provide You with reasonable information, assistance and cooperation in responding to and, where applicable, defending each such claim and You shall accept full control and sole authority over the defence and settlement of any such claim.

13.2 To the maximum extent permitted by law, you agree to indemnify Google from and against any and all third party losses, claims, actions, suits or proceedings, as well as any and all losses, liabilities, damages, costs and expenses (including reasonable attorneys fees) incurred by Google, the applicable Payment Processors (which may include Google and/or third parties) or the Payment Processors’ affiliates, directors, officers, employees and agents arising out of or accruing from taxes related to Your distribution of Products distributed via the Market.

14. Changes to the Agreement

14.1 Google may make changes to this Agreement at any time by sending the Developer notice by email describing the modifications made. Google will also post a notification on the Market site describing the modifications made. The changes will become effective, and will be deemed accepted by Developer, (a) immediately for those who become Developers after the notification is posted, or (b) for pre-existing Developers, the modified Agreement will become effective upon Developer’s acceptance of the modified Agreement (except changes required by law which will be effective immediately). Pre-existing Developers will show their acceptance of the modified Agreement by going to the Market site and accepting the modified Agreement. In the event that Developer does not agree with the modifications to the Agreement within thirty (30) days after the date the email is sent, then Google will suspend the distribution of Developer’s Products until Developer agrees to the modified Agreement. In the event that You do not agree with the modifications within ninety (90) days after the date the email is sent, then You must terminate Your use of the Market, which will be Your sole and exclusive remedy.

15. General Legal Terms

15.1 All notices of termination or breach must be in English, in writing, addressed to the other party’s Legal Department and sent (in the case of Google) to legal-notices@google.com (as applicable) and in the acse of developer to the address notified to Google upon registration, or any other address as either party has notified the other in accordance with this clause. All notices shall be deemed to have been given on receipt as verified by written or automated receipt or electronic log (as applicable).

All other notices must be in English, in writing, addressed to the other party’s primary contact and sent to their then current postal address or email address.

Neither party may assign any of its rights or obligations under this Agreement without the prior written consent of the other.

You acknowledge and agree that each member of the group of companies of which Google is the parent shall be third party beneficiaries to this Agreement and that such other companies shall be entitled to directly enforce, and rely upon, any provision of this Agreement that confers a benefit on (or rights in favor of) them. Except as expressly stated otherwise, nothing in this Agreement shall create or confer any rights or other benefits in favour of any person other than the parties to this Agreement.

Except as expressly stated otherwise, nothing in this Agreement shall create an agency, partnership or joint venture of any kind between the parties.

Neither party shall be liable for failure to perform or delay in performing any obligation under this Agreement if the failure or delay is caused by any circumstances beyond its reasonable control.

15.7 Failure or delay in exercising any right or remedy under this Agreement shall not constitute a waiver of such (or any other) right or remedy.

15.8 The invalidity, illegality or unenforceability of any term (or part of a term) of this Agreement shall not affect the continuation in force of the remainder of the term (if any) and this Agreement.

15.9 Subject to Section 12.1(b), this Agreement sets out all terms agreed between the parties in relation to its subject matter and supersedes all previous agreements between the parties relating to the same. In entering into this Agreement neither party has relied on any statement, representation or warranty not expressly set out in this Agreement.

15.10 This Agreement is governed by English law and the parties submit to the exclusive jurisdiction of the English courts in relation to any dispute (contractual or non-contractual) concerning this Agreement save that either party may apply to any court for an injunction or other relief to protect its Intellectual Property Rights. If this Agreement is translated into any other language, if there is conflict the English text will take precedence.

15.11 Export Restrictions. Products on the Market may be subject to United States export laws and regulations. you must comply with all domestic and international export laws and regulations that apply to your distribution or use of Products. These laws include restrictions on destinations, users and end use.

Polygon live wallpaper

Jul 21 10
by mat

Following the success of my first live wallpaper (Nexus Revamped Pro) I have created another. The wallpaper bares similarity to the windows screensaver mystify but much more ascetically pleasing.

Features

  • Background color
  • Polygon color or cycle through a range of colors
  • Line thickness
  • Number of apexes
  • Number of trails
  • Speed of movement
  • Performance settings, anti-aliasing and Frames per second (FPS)
  • More to come soon, feel free to request something!

Images

Video

Market Links

Polygon Live Wallpaper (com.stealthcopter.polygon)

qr

Best spam comment ever

Jul 21 10
by mat

Just noticed this little beauty sitting in my comment spam, found it hilerious so I thought I’d share it:

HELP! I’m currently being held prisoner by the Russian mafia xyzrxyz penis enlargement xyzrxyz and being forced to post spam comments on blogs! If you don’t approve this they will kill me. xyzrxyz penis enlargement xyzrxyz They’re coming back now. Please send help!

Needless to say I’ve purchased several penis enlargement kits to ensure this persons safety.

Information

Author : penis enlargement (IP: 213.5.67.159 , hosted-by.altushost.com)
E-mail : mattcut90@gmail.com
URL : http://www…….. Censored………..com
Whois : http://ws.arin.net/cgi-bin/whois.pl?queryinput=213.5.67.159

IP address lookup

Android Robot Keychains Received

Jul 20 10
by mat

I have received my android keychains (as mentioned previously) that I ordered from dealextreme, they are a little bigger than I was expecting and certain not suitable for strapping onto a phone, however they are the perfect size to be used with keyrings :D

They cost $2.70 each (£1.80), or for 5+ $2.39 (£1.59), or for 10+ (£2.12). When ordering more than 5 remember to enable bulk rates, this adds a delivery charge but the prices calculated above include this, and you still save more.
Green android product link

Photos:

Android keychain

Android keychain


Android keychain

Android keychain


Android keychain

Android keychain


Android keychain

Android keychain

You can also get a pack of 4 (one of each colour) for $8.10 (£5.38) shown below:
4 Colour android pack product link

4 Colour pack of Android Robot Keyrings (for phones)

4 Colour pack of Android Robot Keyrings (for phones)

Bitcoins a cryptocurrency, free bitcoins and a rigged casino

Jul 14 10
by mat

Update: it’s currently quite difficult to get hold of bitcoins in the UK but localbitcoins works.



If your already aware of the awesomeness of public key cryptography (e.g. PGP or OTR), then you will probably appreciate Bitcoins.

You send coins by typing in someone’s address and how many coins to send and then your transaction will propagate around the p2p network. You receive coins in the same way by giving someone your address. In order to track transactions you can also make more addresses (and labels for them) which can also add to anonymity. Bitcoins are currently worth $0.0201 per bc (source)

Bitcoin program running

Bitcoin program running

Generating Bitcoins
You can opt to generate solutions to a specific crypotgraphic problem in exchange for bitcoins, by doing so your computer’s idle CPU will be used to solve this problem and when a solution is found you will be rewarded with some bitcoins, yay. There is also talk of speeding up the generation by using CUDA or similar tools here

5 Free Bitcoins
You can get 5 free bitcoins to start off your adventure into this new currency fromhere. This is a donation from somebody who wants to ensure that this currency is sucessful and as such this is a token of good faith and should not be exploited. You can also donate bitcoins to the fund to help this project.

Bitcoin casino (A Rigged Casino)
Now onto complain about a rigged casino that operates with bitcoins (Bitcasino).

Rigged and Broken roulette game on bitcoin casino

Rigged and Broken roulette game on bitcoin casino

I continually placed a bet (free play mode) on red, and for over 40 rounds it came up black, this has a probability of (20/7)^40 or 0.000000000708%. As unfair as this was then game then started getting worse constantly resulting in 0, however it would say “31 black odd” and in the side bar of past numbers “un” kept appearing which I guess means unknown.

I also tested a few of the slot machines to see if they were rigged too, and surely enough each rotation of the slots resulted in the exact same result every time, which was of course a losing one.

This bitcoin casino is rigged, buggy and not worth wasting your time with, it is much easier to lose money in other ways.

Conclusion
Bitcoin is an awesome idea and hopefully it will catch on and become sucessful, however be sure to avoid bitcasino! Also if anyone would like to donate some bitcoins then please send them to:
12Qxwa4d8s7bYHWVvNLkQZAVkJZrz8ReKB

Installing PyCuda on ubuntu 10.04

Jul 8 10
by mat

Using graphics cards to hand massively parallel tasks can now be realised in python, thanks to PyCuda a module for python which allows interaction with the CUDA libaries/binaries provided by Nvidia. To get this working in ubuntu 10.04 lucid lynx I followed this guide http://wiki.tiker.net/PyCuda/Installation/Linux/Ubuntu.

Prep / Installation:

First install CUDA, most places will tell you that CUDA is incompatible with gcc-4.3 but this is not true if you make a few small changes to the configuration.mk file, please see this post about installing CUDA in ubuntu

Install the required packages (or use package manager):

sudo apt-get install python-numpy -y
sudo apt-get install build-essential python-dev python-setuptools libboost-python-dev -y

Download pycuda from: http://pypi.python.org/pypi/pycuda

Untar the achive:

tar xzvf pycuda-0.94rc.tar.gz

Configure, make and install:

cd pycuda-0.94rc
./configure.py –cuda-root=/usr/local/cuda –cudadrv-lib-dir=/usr/lib –boost-inc-dir=/usr/include –boost-lib-dir=/usr/lib –boost-python-libname=boost_python-mt –boost-thread-libname=boost_thread-mt
make -j 4
sudo python setup.py install

Problems

I had some problems with the compliation because it was complaining about pytools missing, this was resolved by removing and reinstalling python-setuptools:

sudo apt-get remove python-setuptools
sudo apt-get install python-setuptools

Running the example

You should now be able to run the hellogpu.py demo in the examples folder and use the download-examples-from-wiki.py to download further demos from the pycuda wiki.

Next
I plan to learn how to use PyCuda and aim to make a MD5 cracker as discussed previously (here and here)

Changing the battery percentage in an AVD (android virtual device) emulator

Jul 8 10
by mat

First I will briefly show how to react to the battery percentage change in your application, and then show how to change the battery level in the android emulator (AVD).

Reacting to the battery level change in your program

We need to register our application to receive the intent when the battery level information is changed, we do this by adding the following line into our onCreate method of our activity (or some other instance):

registerReceiver(this.mBatInfoReceiver, 
		new IntentFilter(Intent.ACTION_BATTERY_CHANGED));

This will run mBatInfoReceiver when the battery level is changed, so we now need to create this method in our activity (or some other instance). The function creates a broadcast receiver to handle the information when the intent is sent for the battery status changing.

		private BroadcastReceiver mBatInfoReceiver = new BroadcastReceiver(){

		    @Override
			public void onReceive(Context arg0, Intent intent) {
			      int level = intent.getIntExtra("level", 0);
			      // TODO: Preform action based upon battery level
			}
		  };

(reference)

Changing the battery level in AVD

First we need to find the port so that we can address the emulator, this will be shown in the titlebar of the AVD.

Froyo running in an AVD (android emulator)

Froyo running in an AVD (android emulator)

Zooming in:

AVD title shows the port "5554:froyo"

Using the port from the AVD found above we can use telnet to control certain aspects of the avd see this android reference for a full reference.

telnet localhost 5554
Trying ::1...
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
Android Console: type 'help' for a list of commands
OK
help
Android console command help:

    help|h|?         print a list of commands
    event            simulate hardware events
    geo              Geo-location commands
    gsm              GSM related commands
    kill             kill the emulator instance
    network          manage network settings
    power            power related commands
    quit|exit        quit control session
    redir            manage port redirections
    sms              SMS related commands
    avd              manager virtual device state
    window           manage emulator window

try 'help ' for command-specific help
OK

Some more information on the power commands:

help power
allows to change battery and AC power status

available sub-commands:
    display          display battery and charger state
    ac               set AC charging state
    status           set battery status
    present          set battery present state
    health           set battery health state
    capacity         set battery capacity state

So now you can change the battery level in the avd using power capacity percentage

power capacity 100
OK
power capacity 99
OK
power capacity 60
OK
power capacity 20
OK
power capacity 0
OK

As you change the battery capacity you should notice that your AVD is responding, just by looking at the battery indicator in the status bar, and your program will react if you have replaced the //TODO: code with something that reacts when the onReceive is called.

Borderlands hidden QR codes

Jul 7 10
by mat

I found an easter egg in borderlands:

Borderlands hidden QR codes

Borderlands hidden QR codes


zoomed in on the qr code

zoomed in on the qr code

So I used a barcode reader on my Nexus One

Plaintext:

NICK WILSON

HO OH

However I am not the only person to have spotted this, unsurprisingly really as I’m almost half a year late on starting the game. There are several QR codes hidden as shown in this wiki page and someone else went to the pain-staking task of copying out this QR code pixel-by-pixel rather than using a QR scanner or image software, crazy!