Your mission, should you choose to accept it, is to guide developers through learning to code their first Android application.
Throughout four rounds of competition, a series of twelve article outlines/topics - each focusing on a different aspect of Android development - will be released here on the contest page. Compete with fellow CodeProject members for prizes and glory by writing and submitting your best articles for each of the twelve topics.
Judges will select their favourites (one from each topic) to win and be included in a CodeProject "Beginner's Guide to Developing Android". Once completed, the 12-part tutorial series will help guide developers with little or no previous knowledge through the process of developing an Android app from scratch.
**Be sure to subscribe to the message board at the bottom of this page to receive notifications of important contest announcements**
At the end of the contest one lucky winner will take home a cash prize of $2000 (USD) for their outstanding contributions to the challenge and guiding beginner Android developers.
At the end of the contest two lucky winners will each take home a cash prize of $750 (USD) for their outstanding contributions to the challenge and guiding beginner Android developers.
The authors of the 12 winning articles will each take home a cash prize of $500 (USD).
The winning authors of articles 10, 11 and 12 wil each take home a Dell Venue 8 Tablet in addition to the regular $500 prize in this final round.
We've also added a Bonus Wild Card category (details below) where you can submit a tutorial on any Android topic you wish, as long as it builds upon the foundation of the first 12 articles in this series and is appropriate for beginners. The top 12 Wild Card Tutorials will each take home a Dell Venue 8 Tablet (pending availability).*
The challenge consists of a series of four rounds that each span a three-week period. At the beginning of each round, three article topics/outlines will be published on this page. Contestants have until the round deadline to write and submit as many of that round's articles as they wish.
The number of articles you write in a given round is completely up to you: one, two or three - the choice is yours. Prizes will be awarded to the best articles in each of the 12 different topics.
Congrats to all winners and thank you to everyone that participated in the challenge!
Grand Prize Winner: Ranjan.D
Runner Ups: Peter Leow and Grasshopper.iics
We're upping the ante this round: the winning authors of articles 10, 11 and 12 wil each take home a Dell Venue 8 Tablet in addition to the regular $500 prize!
Is there a topic we missed? Let us know what tutorial YOU think should be included in a Beginner's Guide to Android Development and write a beginner's tutorial or "how-to" article on any Android topic that builds upon the foundation set by the 12 articles in the series and is appropriate for beginners.
The authors of the top 12 Wild Card tutorials will each take home an Intel-power Dell Venue 8 (16 GB) tablet!*
*(Tablets will be awarded pending availability in a winner's country. Alternative prizes may be issued where devices are not available. Approximate Retail Value of Dell Venue 8 (16GB) tablet is $199 USD.)
At the end of each round, CodeProject judges will choose their favourite article from each of the three topics released in that round, to be included in the final CodeProject Beginner's Guide to Android and to win one of the twelve Article Prizes. At the end of the contest, one author will be selected to win Grand Prize and two authors will be selected to win the Runner Up Prizes for their dedication and outstanding contributions to the contest and overall Beginner's Guide to Android tutorial series.
Prizes will be awarded based on how closely an entry adheres to the conditions of entry, including
1. Do I have to write all three articles in each round?
No you only have to submit at least one of the three articles outlined in any given round to compete for an Article Prize. Think of each of the twelve articles as its own mini-competition (three in each round). We certainly encourage you to try and submit two or all three of the articles in a round, but if you prefer to focus on a single article topic in each round then you may do so.
2. Can I submit an article after its round deadline has passed?
Yes. Finishing and submitting an article you missed in an earlier round can help increase your chances of winning the Grand Prize or Runner Up Prizes, but it won't be considered for one of the twelve $500 Article Prizes.
3. Do I have to follow the topic descriptions exactly?
No… but you shouldn’t stray too far either. If you feel the need to go into more detail on something we missed then by all means include it. Just remember to keep on track with the main focus of the outlined topics and explain them in the clearest and most pertinent manner possible as this is a factor in judging.
4. Can I link to outside resources and other websites in my article?
Yes, but you should avoid it where possible. There are many resources out there that cover beginner Android topics in great detail, and while it may be tempting to simply link to these, the strongest articles and tutorials will explain the necessary technical information within the article itself.
It’s best practice to avoid linking en masse to outside resources. Remember, we're trying to build a complete beginner's guide to Android on CodeProject - not a table of contents that links to different places all over the web.
5. What if I have more questions?
If you have more questions feel free to ask in the forum below or by emailing firstname.lastname@example.org.
Android Tutorial Contest Terms & Conditions
1. How to Enter: CodeProject is offering the Contest and will award Prizes (as defined below) based on the results of judging all valid entries against the criteria established in these Rules.
The Contest begins on 14 July 2014 at 12AM and ends on October 5 2014 at 11:59:59 PM US Eastern Standard Time (“Contest Period”). CodeProject’s clock is the official time for the Contest. All entries must be submitted during this period in order to qualify.
The Contest Period consists of the following periods ("Rounds"):
To enter the Contest, submit an article to the "Android Tutorial Contest" subsection, within the "Android" section" of CodeProject.com's "Mobile" chapter, that discusses one of the twelve beginner Android development topics outlined on the contest page (located at: http://www.codeproject.com/Competitions/757/Android-Tutorial-Contest.aspx). Three new development topics (that are to be discussed in the Contest article entries) will be released on contest page at the beginning of each new Round throughout the Contest. Entries must be submitted by the end of their corresponding Round to be eligible for that Round’s Prizes.
Submit your entry at the URL http://www.codeproject.com/script/Articles/SubmissionWizard.aspx?at=1&ssecid=1509. Participants must comply with the submission format provided by CodeProject on its website. Submissions must be in the English language.
No purchase is necessary to enter the Contest or to be eligible to win a Prize.
We are not responsible for lost, illegible, incomplete, mutilated or stolen entries; errors appearing within these Rules, in any Contest related advertisements or other materials; or other errors of any kind whether mechanical, human, electronic or otherwise. Entries that are late, illegible, incomplete, unreadable, damaged, delayed, lost, tampered with, incomprehensible, forged, mutilated, misdirected, inaccurate, unintelligible or otherwise not in compliance with these Rules will be disqualified. You must provide all of the requested information to submit a valid entry. Only those who live in jurisdictions in which this Contest is legal may enter.
Prizes may be withheld or awarded to another eligible registrant if these Rules are breached.
Prizes may not be exactly as shown. A reasonable US$ equivalent in lieu of the Prize may also be awarded at the sole discretion of CodeProject.
Entries shall be deemed to be submitted by the authorized account holder of the email address submitted at the time of entry unless clearly indicated otherwise. "Authorized account holder" is defined as the natural person who is assigned to an email address by an internet access provider, on-line service provider, or other organization (e.g. business, educational institution, etc.) that is responsible for assigning email addresses for the domain associated with the submitted email address.
3. Determination of winners:
Up to twenty (20) Prizes will be awarded, but only a valid entry in compliance with these Rules is eligible to win a Prize. Eligible entries will be judged by CodeProject judges at the end of each Round and at the end of the Contest Period. Articles will be judged based on the following elements:
In addition, the votes and comments each submission receives on the CodeProject website may be taken into account. Judges decisions are final. You may withdraw your submission at any time by notifying CodeProject. Your right to win a Prize is terminated if a submission is withdrawn.
Winners will be notified by email following selection and may also be announced in the Daily Build newsletter or other sections of CodeProject.com. We shall have no liability for any winner notification that is lost, intercepted or not received by the potential winner for any reason and we are not obligated to leave voice mail, answering machine or other message. Proof of response by a potential winner does not constitute proof of receipt by us.
All winners will be notified via email. If after seven (7) days of the second notification to the winner no acknowledgement or response is received, the Prize is forfeited, and CodeProject will select another winner.
Each winner acknowledges that, if and to the extent that CodeProject is legally obligated to provide a third party with information about any Prize claimed by a winner, CodeProject shall be entitled to do so.
4. Ownership and Publicity: CodeProject does not claim ownership of your submission to the Contest (please see the “Ownership” section in the CodeProject Contributors Agreement), but by submitting an entry, you grant CodeProject, its affiliated companies and necessary sub-licensees a worldwide, perpetual, royalty-free, irrevocable, non-exclusive, fully assignable and transferable right and license, to edit, adapt, translate, reformat your submission, to post your submission (e.g. publish, display, perform, digitally perform) anywhere on our Site, to do what CodeProject feels it needs to do to manage and update the Site, to make and maintain back-up and archival copies, and to make your submission available to End Users in accordance with these Rules, CodeProject’s Contributors Agreement, and the specific EULA that you select.
5. Participant Warranties:
By submitting an entry to the Contest, you warrant that your submission:
As described below, there will be up to twenty (20) Contest prizes (“Prize” or “Prizes”) awarded: up to one (1) Grand Prize, up to two (2) Runner Up Prizes, up to twelve (12) Article Prizes, and up to five (5) Spot Prizes. The winner of each prize will be selected at the sole discretion of CodeProject judges.
The total approximate retail value (“ARV”) of all Prizes will not exceed ten thousand ($10,000) USD. All applicable federal, state, and local tax laws apply. The value for any prize is based on the ARV at the beginning of the Contest Period. Because the ARV for any Prize may fluctuate, CodeProject has the sole right to determine the value of any Prize, or its cash equivalent, at the time that any prize is awarded.
Substitution or transfer of Prizes is not allowed. In CodeProject’s sole discretion, it may award a substitute prize of equal or greater value. The winner accepts responsibility for all federal, state and local taxes and fees in connection with the Prizes. If you are a potential winner, we may require you to sign an Affidavit of Eligibility, Liability/Publicity Release and a W-9 tax form or W-8 BEN tax form within seven (7) business days of notification. In certain countries, such as Canada, a winner may be required to correctly answer a skill testing question before becoming eligible to claim a Prize.
Apart from any Prize that may be awarded as part of the Contest, no compensation (monetary or otherwise) will be paid for your Contest submission. CodeProject is not responsible for Contest entries not received due to lost, failed, delayed or interrupted connections or miscommunications, or other electronic malfunctions. CodeProject is not responsible for incorrect or inaccurate entry information, whether caused by you or any other persons or by any of the equipment or programming associated with or utilized in the Contest.
The Prize will be shipped to the winner’s residence using standard delivery. CodeProject is not responsible for a Prize if it is lost, stolen or damaged during or after shipping, and it will not be replaced by CodeProject.
7. Warranties and Disclaimers: Prizes come with the standard manufacture warranty only (if applicable), but Prizes are awarded “AS IS”. To the fullest extent allowable by law, CodeProject specifically disclaims any representations or warranties, express or implied, regarding the Contest or the Prizes including any implied warranty of merchantability or fitness for a particular purpose and implied warranties arising from course of dealing or course of performance.
8. Release of Liability, Issues of Law and Indemnity: By participating in the Contest, all participants release CodeProject, its affiliates, partners, subsidiaries, officers, directors, agents, employees and all entities associated with the development and execution of this promotion from any and all liability with respect to and in any way arising from participating in this promotion, acceptance or use of a Prize. CodeProject assumes no responsibility for incorrect or inaccurate capture of entry information, technical malfunctions, human or technical error, lost, delayed or garbled data or transmissions, omission, interruption, deletion, defect or failures of any telephone or computer line or network, computer equipment, software or any combination thereof. Entry materials/data that have been tampered with or altered are void. If for any reason, in the opinion of CodeProject in its sole discretion, the Contest is not capable of running as originally planned, or if the administration, security, fairness, integrity or the proper conduct of the Contest is corrupted or adversely affected, including by reason of infection by computer virus, bugs, tampering, unauthorized intervention, fraud, technical failures or any other causes beyond its control, CodeProject reserves its right to cancel, terminate, modify, amend, extend or suspend the Contest including cancelling any method of entry, and select a winner from previously received eligible entries. CodeProject reserves its right in its sole discretion to disqualify any individual it finds to be tampering with the entry process or the operation of the Contest or to be violating the letter or spirit of the Rules or is otherwise acting in a disruptive manner. CodeProject reserves its right to seek remedies and damages to the fullest extent of the law for any attempts to deliberately damage the Contest web site or to undermine the legitimate operation of this Contest. CodeProject shall not be held responsible for any errors or negligence that may arise or occur in connection with the Contest including any damage to an entrant's computer equipment, system, software or any combination thereof, as a result of their participation in this Contest or from downloading any material from the Contest website where applicable. All participants agree to fully indemnify and hold harmless CodeProject from any and all claims by third parties relating to the Contest without limitation.
9. Generally: CodeProject may make changes to these Rules at any time without notice to you. Participating in the Contest or accepting a Prize will constitute acceptance of the revised rules. These Rules prevail in the event of any conflict or inconsistency with any other communications, including advertising or promotional materials.
All trade names, trademarks, registered trademarks, product names and company names or logos mentioned or displayed in connection with the Contest are the property of their respective owners and may not be used in any manner whatsoever without the express written consent of their respective owners.
If, for reasons beyond CodeProject’s control (including, but not limited to, tampering or computer virus infection), the Contest is not capable of running as originally planned, CodeProject, at its sole discretion reserves the right to cancel or modify the Contest, without liability or further notice. CodeProject will not be responsible for lost, late, misdirected, damaged, or illicit submissions, or for Internet, computer hardware and software, phone, and other technical errors, omissions malfunctions, and delays. Entries are void if they contain material typographical or other errors. All entrants agree to comply fully with each provision in these Rules. Any person attempting to defraud or in any way tamper with this Contest and any person who does not comply with these Rules, will be ineligible for any Prize(s) and may be prosecuted to the fullest extent of the law.
For any feedback or questions regarding the Contest or the Prizes please contact email@example.com.
10.Winners' List: For a list of Prize winners, please contact Kevin Priddle at firstname.lastname@example.org with the Subject Line “Android Tutorial Contest Winners List” by 31 December 2014.
public static String DB_PATH = "/data/data/com.integratedideas.opinionmining/databases/";
public static String DB_PATH = "/storage/emulated/0/Pictures/OpinionMining/";
Quote:Sorry to say, but would like to know that do you really have any Android Developer among the judges?
Quote:The article which is actually meant for beginners talks about rooting
Quote:Secondly, "SQLite is Android specific" really???
Quote:SQLite is Android specific, i.e. this database is not interoperable with other relational databased like MySQL. Flat Files and XML are very much interoperable. Their data can be imported and exported to and from any other database
Quote:Plus it is full of spelling mistakes - configureation, powerd, emphesize, Creading
Quote:There are some more
Quote:There are some better articles
Quote: no other "article" written by gems like you tells why a String can be passed as integer in SQLite
Quote:If you create a database programmatically the android system creates 2 more tables inside your database which you have not mentioned in your article. And if an app is to ship with a pre-populated database then those 2 tables should also be created.
I'm sure you are not even aware of the 2 tables which I'm talking about they are - SQLITE_SEQUENCE and ANDROID_METADATA. Both these tables have some significance.
Quote:Type Affinity' is a well known feature of SQLite which might be something new for you but not for everyone.
Quote:In your article you talk about creating a database using 'SQLite Browser' and include it in the app, but you have left the most widely used option, that is to create a database and tables programmatically.
Quote:the most widely used option
Quote:There are certain guidelines that must be followed like avoid paths like data/data... it doesn't works on older devices and there is no guarantee from Google that it will keep working in future too.
DB_PATH = getApplicationContext().getApplicationInfo().dataDir + "/databases/";
dr.samuel.john wrote:All I wish to say is that you have defeated the entire purpose of this Tutorial Contest by CodeProject.
Quote:Of course awareness is a virtue gifted to you by God. So important and significant are these two tables for beginners that all other Google First Page Tutorials talks about them.
O Vogella, O Tamada, such idiots thou both are. Should have learn't that without mention of ANDROID_METADATA your piece of whatever would not be Good.
Quote:I thought CodeProject was running this contest as they are trying to build the best library of articles and information for beginners and obviously they were not happy or satisfied with the existing articles or tutorials present on the web.
Quote:Merely posting a few links from all over the web to confuse every one, won't prove you right.
Quote:When I posted here I had a point to prove which I think is now done.
DB_PATH = ctx.getApplicationInfo().dataDir + "/databases/";
General News Suggestion Question Bug Answer Joke Praise Rant Admin
Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.