From 0a5adbe81b12e7a8afed59c1f9577893464a16d0 Mon Sep 17 00:00:00 2001 From: Shawn Busolits Date: Fri, 31 Jan 2014 11:48:48 -0800 Subject: [PATCH] Committing latest changes. --- .classpath | 14 + .project | 33 ++ AndroidManifest.xml | 21 + LICENSE | 201 ++++++++++ README.md | 24 ++ libs/README | 1 + project.properties | 11 + res/drawable-hdpi/icon_v3.png | Bin 0 -> 5035 bytes res/drawable-ldpi/icon_v3.png | Bin 0 -> 2177 bytes res/drawable-mdpi/icon_v3.png | Bin 0 -> 2988 bytes res/layout-land/main.xml | 87 +++++ res/layout-large-land/main.xml | 98 +++++ res/layout-large/main.xml | 88 +++++ res/layout/main.xml | 77 ++++ res/values/strings.xml | 24 ++ .../v3/samples/demoapp/DroidDemoActivity.java | 363 ++++++++++++++++++ .../v3/samples/demoapp/player/DemoPlayer.java | 174 +++++++++ .../demoapp/player/TrackingVideoView.java | 134 +++++++ 18 files changed, 1350 insertions(+) create mode 100644 .classpath create mode 100644 .project create mode 100644 AndroidManifest.xml create mode 100644 LICENSE create mode 100644 README.md create mode 100644 libs/README create mode 100644 project.properties create mode 100644 res/drawable-hdpi/icon_v3.png create mode 100644 res/drawable-ldpi/icon_v3.png create mode 100644 res/drawable-mdpi/icon_v3.png create mode 100644 res/layout-land/main.xml create mode 100644 res/layout-large-land/main.xml create mode 100644 res/layout-large/main.xml create mode 100644 res/layout/main.xml create mode 100644 res/values/strings.xml create mode 100644 src/com/google/ads/interactivemedia/v3/samples/demoapp/DroidDemoActivity.java create mode 100644 src/com/google/ads/interactivemedia/v3/samples/demoapp/player/DemoPlayer.java create mode 100644 src/com/google/ads/interactivemedia/v3/samples/demoapp/player/TrackingVideoView.java diff --git a/.classpath b/.classpath new file mode 100644 index 00000000..b80adb57 --- /dev/null +++ b/.classpath @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + diff --git a/.project b/.project new file mode 100644 index 00000000..1c521088 --- /dev/null +++ b/.project @@ -0,0 +1,33 @@ + + + Demo App V3 + + + + + + com.android.ide.eclipse.adt.ResourceManagerBuilder + + + + + com.android.ide.eclipse.adt.PreCompilerBuilder + + + + + org.eclipse.jdt.core.javabuilder + + + + + com.android.ide.eclipse.adt.ApkBuilder + + + + + + com.android.ide.eclipse.adt.AndroidNature + org.eclipse.jdt.core.javanature + + diff --git a/AndroidManifest.xml b/AndroidManifest.xml new file mode 100644 index 00000000..442c2d7c --- /dev/null +++ b/AndroidManifest.xml @@ -0,0 +1,21 @@ + + + + + + + + + + + + + + + + diff --git a/LICENSE b/LICENSE new file mode 100644 index 00000000..261eeb9e --- /dev/null +++ b/LICENSE @@ -0,0 +1,201 @@ + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. diff --git a/README.md b/README.md new file mode 100644 index 00000000..6c9bceaf --- /dev/null +++ b/README.md @@ -0,0 +1,24 @@ +Google Ads Android IMA SDK +-------------------------- + +This project hosts samples for the [Android IMA SDK](https://developers.google.com/interactive-media-ads/docs/sdks/android/v3/). + +### Requirements + * Eclipse or Android Studio + +### Installation Instructions +Installation instructions can be found in our [online documentation](https://developers.google.com/interactive-media-ads/docs/sdks/android/v3/quickstart#download_build_and_run_sample_app). + +### Downloads +Check out the [releases section](https://github.com/googleads/googleads-ima-android/releases) for downloadable zips of the source. + +### More Info +For more information, see the documentation at https://developers.google.com/interactive-media-ads/docs/sdks/android/v3/. + +### Announcements and Updates +For API and client library updates and news, please follow our [Google+ Ads Developers page](https://plus.google.com/+GoogleAdsDevelopers/posts) and our [Google Ads Developers blog](http://googleadsdeveloper.blogspot.com/) + + +Copyright 2013 Google Inc. All Rights Reserved. +You may study, modify, and use this example for any purpose. +Note that this example is provided "as is", WITHOUT WARRANTY of any kind either expressed or implied. diff --git a/libs/README b/libs/README new file mode 100644 index 00000000..a595cd4a --- /dev/null +++ b/libs/README @@ -0,0 +1 @@ +Place the downloaded SDK jar in this folder to build. diff --git a/project.properties b/project.properties new file mode 100644 index 00000000..b904742f --- /dev/null +++ b/project.properties @@ -0,0 +1,11 @@ +# This file is automatically generated by Android Tools. +# Do not modify this file -- YOUR CHANGES WILL BE ERASED! +# +# This file must be checked in Version Control Systems. +# +# To customize properties used by the Ant build system use, +# "ant.properties", and override values to adapt the script to your +# project structure. + +# Project target. +target=android-13 diff --git a/res/drawable-hdpi/icon_v3.png b/res/drawable-hdpi/icon_v3.png new file mode 100644 index 0000000000000000000000000000000000000000..d12b54dbb7da8451e163b629a4efedc68fbac6cc GIT binary patch literal 5035 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 ipzWEkHR5?rQ2i%U&YQY|7TU7_0000 + + + + + + + + + + + + + + + + + +