Examples of Android applications

Comments
  • Gradle-ify All The Things (part 2)

    Gradle-ify All The Things (part 2)

    Migrate to gradle the build system of the remaining demo projects:

    • MultipleContacts
    • MultpileActivityTabHost
    • PinchZoomDetector
    • PushNotifications
    • simperAudioStreamer
    • sms
    • TabHostExample
    • TabHostMultipleActivityBrowsing
    • TabHostSelfContainedTabBrowsing
    • wizard

    And update compileSdk and targetSdk versions to the last available. screen shot 2015-01-06 at 16 01 52

    opened by danybony 10
  • Chore/Update app ids, add readme

    Chore/Update app ids, add readme

    This PR adds the task updateDemos that verifies

    • that the application id follows the pattern com.novoda.demo.<path>
    • that a readme exists for all demos
    • that all demos are listed in the global readme file.
    • ~~that all demos use the android-command plugin.~~

    A change log file is also added.

    opened by friedger 8
  • Add spritz library and demo

    Add spritz library and demo

    Spritz is a new library for seamlessly animating a Lottie view by swiping in a ViewPager.

    Documentation

    The root directory of the project has a README that explains how to use the library with a detailed list of all methods. The library doesn't have a Javadoc yet.

    GIF

    The outcome is shown in the demo app: spritz-demo

    Next steps

    As soon as this library is merged on master, I'll add the publish plugin so we can release it as an open source library on maven.

    opened by frapontillo 6
  • PT-275: Recipe about how to change the Device locale for instrumentation tests

    PT-275: Recipe about how to change the Device locale for instrumentation tests

    Tracked in JIRA by PT-257

    Scope of the PR

    Adds a recipe which talks about how to change the Locale of a Device for instrumentation tests using a TestRule.

    opened by tobiasheine 6
  • Add chips demo

    Add chips demo

    Adds a demo showing how to implement a 'chips' view using 2 libraries:

    • Chips library from EyeEm: Doesn't seem to be flexible enough for us so didn't do much on this one.
    • Splitwise TokenAutoComplete: Decided to see if I was able to implement what we need with this library (entry of tags but we need to show the hint if the user isn't typing something and also delete tag by tag but selecting it first - couldn't get this to work yet)

    | Main screen | Eyeem | Splitwise | | --- | --- | --- | | main | eyeem | splitwise |

    opened by xrigau 5
  • Gradle-ify (the first part of) All The Things

    Gradle-ify (the first part of) All The Things

    This PR migrates to gradle the build system of the following demo projects:

    • CarouselFragment
    • CompassExample
    • ContactSelector
    • CustomActivityTransition
    • CustomTabsHack
    • DynamicListItems
    • encryption
    • FixedSizeTextColumns
    • Fragments
    • GsonJsonWebservice
    opened by danybony 5
  • Architecture Components refactor: LiveData & ViewModel

    Architecture Components refactor: LiveData & ViewModel

    LiveData & ViewModel

    This PR is part of a series of PRs to explore Architecture Components. The aim of this series is to showcase how to use Architecture Components and discuss tradeoffs, not to write a perfectly designed app. With that in mind, changes are been kept to the minimum necessary to better show what are the needed changes.

    This PR is meant to showcase how to replace RxJava with LiveData and ViewModel.

    In this project, RxJava was used to perform asynchronous work in a separate thread, execute some transformations on the downloaded data and callback the main thread with the result.

    All that can be done with LiveData + ViewModel:

    • Asynchrony is achieved through retrofit enqueue(retrofit2.Callback<T>).
    • LiveData is just a data holder class that can be observed. When you post a value into a LiveData instance the observer will be notified in the main thread.
    • A ViewModel stores the related UI data state and it's lifecycle aware: the stored data will survive configuration changes.

    The sample app existing key components are:

    • MainActivity : represents the app UI, a list of movies fetched from IMDB. The list is paged: when the user reaches the bottom a new page is fetched.
    • MovieService : this class acts as repository and view state holder. It's composed with MoviesApi and contains a MoviesSate object to store the list of fetched movies and the current page. It provides asynchrony and api to domain data mapping with RxJava
    • MoviesApi : A Retrofit API definition interface, describes the API calls but has no logic

    before

    The proposed changes in this PR change that scenario:

    • A new key component, MoviesViewModel, is introduced. It's responsibilities are store the app's UI state and transform API data into domain data. Because MoviesViewModel is a ViewModel it's linked with MainActivity's lifecycle, so there's no need to manage subscription state.
    • LiveData replaces RxJava as delivery mechanism to observe data changes.
    • MovieService responsibilities are reduced to only make network calls using MovieApi

    after

    Considerations

    This app is divided in two modules: app and core. Originally MovieService was inside core but I moved it into app in the destination branch before opening the PR. The reason was to keep the diff easier to follow (which is the main goal of this PR). LiveData depends on Android so a modified version of MovieService would need to go into app. If the original MovieService were inside core the diff would consider them separate files and instead of highlight only the changes it would mark the whole files red and green

    Follow up

    Upcoming PRs will showcase how to use other Architecture Components:

    • ViewModel & LiveData (this PR)
    • DataBinding #42
    • Paging
    • Room
    • Navigation
    • WorkManager

    In order to showcase some of those components, it might be necessary to extend the app and add a few more use cases and screens.

    Progress will be tracked here: https://github.com/novoda/android-demos/projects/1

    Architecture Components 
    opened by lgvalle 4
  • Update build.gradle

    Update build.gradle

    Change google() repository & jcenter() repository access priority so that the gradle build would not fail to resolve dependencies as per latest Android Studio update.

    Reference: https://stackoverflow.com/questions/50584437/android-studio-3-1-2-failed-to-resolve-runtime/50758769

    opened by SnehPandya18 3
  • Recipe / Add Native Ads Express

    Recipe / Add Native Ads Express

    Scope of the PR

    Adds a recipe on how to create and integrate the newish Native Ads Express.

    Reasons to exist

    • Having a single guide to walk you through the process of creating and Advert and integrating it is more useful than checking separate documentation for each task.
    • Google documentation is not very clear about advert sizes. At first sight it looks like the sizes you define when creating an Ad is the size you need to use later when integrating it. This cookbook tries to clarify that.
    opened by lgvalle 3
  • Update/Delete push demos

    Update/Delete push demos

    The current push demos are very outdated and there are better alternatives:

    • Better demos for urban airship:https://github.com/urbanairship/android-samples/
    • Better demos for gcm: https://github.com/google/gcm

    This PR is open for discussion what push demos could be added in the future.

    opened by friedger 3
  • Chore/Add readme content

    Chore/Add readme content

    This PR adds short readme content for all projects.

    For the first demos, I fixed some issues to make them work. At the end, I just added the readme files so we can decide which demos are important to us.

    opened by friedger 3
  • [MVI] First draft of a reusable architecture

    [MVI] First draft of a reusable architecture

    Description

    This replaces a mvi'ish implementation of a movie search with a reusable implementation of MVI.

    Considerations

    First things first, this is the first iteration. There is lot's of room for improvements in our implementation of the pattern and for covering more use cases like screen orientation, one time events like (navigation, dialogs, etc.).

    Furthermore, this PR introduces documentation around our implementation of MVI and the different components.

    In the previous implementation, the SearchResultsViewable and SearchInputViewable did expose callbacks for user actions and methods to render a view state. The SearchResultsPresenter did register for these callbacks and forwarded the user actions to the SearchResultsModel. Furthermore, it observed the state from that model, mapped it to a view-state and forwarded this to the above-mentioned views. The SearchResultsModel was responsible to implement the business rules and to expose a stream of state changes according to them.

    We replaced the views with a single MVIView<SearchAction, SearchState> which exposes an Observable<Action> and renders a SearchState. Furthermore, we moved all the business logic into the SearchMiddleware<SearchAction, SearchState, SearchChanges>, which exposes an Observable<SearchChanges>. These SearchChanges are then observed by the SearchReducer, which maps them to a SearchState. And finally, we introduced the BaseStore<Action, State, Change> as a use case agnostic class, which collaborates with the above components to connect the different data streams.

    Data Flow

    | High-level Diagram|Sequence Diagram| |----|----| |MainView| Untitled |

    Paired with

    @gbasile @zegnus @lgvalle @Michal-Novoda

    opened by tobiasheine 0
  • Add basket functionality

    Add basket functionality

    This PR adds checkout screens, so that we can add a full end-to-end shopping flow test. Still work in progress as the app can't run. There is an issue in App.kt where DaggerAppComponent isn't being recognised. Possibly just a configuration issue.

    Do_Not_Merge PT WIP 
    opened by dkaravias 0
Releases(sandbox-v1.1)
Examples for my Android GraphView library

Chart and Graph Library for Android GraphView - open source graph plotting library for Android GraphView is a library for Android to programmatically

Jonas Gehring 297 Dec 16, 2022
! Usage examples for Android Maven Plugin

Android Maven Plugin - Sample Projects WARNING This project is deprecated. All sample projects for the Android Maven Plugin as of version 4.0.0-rc.1 a

Jayway 190 Nov 28, 2022
Open-source telematics app for Android. The application is suitable for UBI (Usage-based insurance), shared mobility, transportation, safe driving, tracking, family trackers, drive-coach, and other driving mobile applications

TelematicsApp-Android with Firebase© integration Description This Telematics App is created by DATA MOTION PTE. LTD. and is distributed free of charge

Damoov 21 Dec 12, 2022
Quality-Tools-for-Android 7.5 0.0 L5 Java This is an Android sample app + tests that will be used to work on various project to increase the quality of the Android platform.

Quality Tools for Android This is an Android sample app + tests that will be used to work on various project to increase the quality of the Android pl

Stéphane Nicolas 1.3k Dec 27, 2022
A simple app to showcase Androids Material Design and some of the cool new cool stuff in Android Lollipop. RecyclerView, CardView, ActionBarDrawerToggle, DrawerLayout, Animations, Android Compat Design, Toolbar

#Android-LollipopShowcase This is a simple showcase to show off Android's all new Material Design and some other cool new stuff which is (new) in Andr

Mike Penz 1.8k Nov 10, 2022
A simple app to showcase Androids Material Design and some of the cool new cool stuff in Android Lollipop. RecyclerView, CardView, ActionBarDrawerToggle, DrawerLayout, Animations, Android Compat Design, Toolbar

#Android-LollipopShowcase This is a simple showcase to show off Android's all new Material Design and some other cool new stuff which is (new) in Andr

Mike Penz 1.8k Nov 10, 2022
simple android grocery app using kotlin and android studio

Project Idea The idea of this project is to make a grocery android app that users can use to order the groceries they want. It doesn't contain any bac

null 0 Nov 29, 2021
Beetlebug is an open source insecure Android application with CTF challenges built for Android Penetration Testers and Bug Bounty hunters.

Beetlebug Beetlebug is a beginner-friendly Capture the Flag Android application that aims to inspire interest in Mobile Application Security. It is ge

Hafiz Abdulaziz 60 Oct 11, 2022
Do's and Don'ts for Android development, by Futurice developers

Best practices in Android development Avoid reinventing the wheel by following these guidelines. Lessons learned from Android developers in Futurice.

Futurice 20.2k Dec 31, 2022
Learning RxJava for Android by example

Learning RxJava for Android by example This is a repository with real-world useful examples of using RxJava with Android. It usually will be in a cons

Kaushik Gopal 7.6k Dec 30, 2022
A sample Android app which showcases advanced usage of Dagger among other open source libraries.

U+2020 A sample Android app which showcases advanced usage of Dagger among other open source libraries. Watch the corresponding talk or view the slide

Jake Wharton 5.7k Dec 22, 2022
Proguard configurations for common Android libraries

android-proguard-snippets Example Proguard configurations for common Android libraries. This project assumes that your ProGuard configuration is based

Kevin Schultz 4.6k Dec 18, 2022
A simple chat demo for socket.io and Android

socket.io-android-chat This is a simple chat demo for socket.io and Android. You can connect to https://socket-io-chat.now.sh using this app. Installa

Naoyuki Kanezawa 1.9k Dec 30, 2022
Google Play game services - Android samples

Google Play game services - Android Samples Copyright (C) 2014 Google Inc. Contents These are the Android samples for Google Play game services. Colle

Google Play Game Services 952 Dec 27, 2022
Android common lib demo, include ImageCache, HttpCache, DropDownListView, DownloadManager, install apk silent and so on, you can find description

android-demo 关于我,欢迎关注 微博:Trinea 主页:trinea.cn 邮箱:trinea.cn#gmail.com 微信:codek2 依赖:trinea-android-common android-auto-scroll-view-pager viewpager-indica

Trinea 1.1k Nov 10, 2022
Cheat Sheet for Android Interviews

Android-Cheat-sheet Cheat Sheet for Android Interviews Topics Common Coding Programs Data Structure Coding Programs Android Interview Questions Java I

Anitaa Murthy 2k Dec 31, 2022
RxJava architecture library for Android

Reference Architecture for Android using RxJava This is an ambitious reference project of what can be done with RxJava to create an app based on strea

Reark 2.1k Dec 17, 2022
📚 Sample Android Components Architecture on a modular word focused on the scalability, testability and maintainability written in Kotlin, following best practices using Jetpack.

Android Components Architecture in a Modular Word Android Components Architecture in a Modular Word is a sample project that presents modern, 2020 app

Madalin Valceleanu 2.3k Dec 30, 2022
Collection of Small Android Projects

AndroidDemoProjects ActivityRecognition: Example of using Google Play Services to recognize a user's activity, such as running, walking, or riding a b

Paul Ruiz 601 Dec 9, 2022