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 of using Torus CustomAuth Android SDK

Torus CustomAuth Android Samples Examples of using Torus CustomAuth Android SDK. Usage Clone the repository and open with Android Studio Run the app,

Minh-Phuc Tran 1 Nov 12, 2021
It is a project that contains lessons and examples about Kotlin programming language. 馃嚢

Kotlin Tutorials What is Kotlin? I added the platforms it supports and great resources. You can access the article from the link below: https://medium

Halil 脰zel 94 Dec 22, 2022
UML model and code examples of design patterns for Kotlin/Native. The model is created with Astah.

Design Pattern Examples in Kotlin/Native Model and code examples of GoF Design Patterns for Kotlin/Native. This project is available for the following

Takaaki Teshima 3 Jun 27, 2022
A repository that contains various examples of how to use the telegram-bot library.

Telegram-bot templates This repository contains simple different examples of how to use the telegram-bot library. How to use All the examples are conv

Jey 3 Nov 15, 2022
Android Study Jams - These are applications built for Android Study Jams 2022 at Chitkara University

Project Description These are applications built for Android Study Jams 2022 at

Armaan Jain 3 Sep 16, 2022
An open source application to make your own android applications without coding!

Stif An Open source project for building Android Application at a go both with and without coding. This project was inspired from Scratch and Sketchwa

Nethical org 5 Aug 28, 2021
Android Kotlin Completed Training Applications.

Android Kotlin Completed Training Applications. This Repo is used to track a series of Android Kotlin apps I've created based on Google & Udacity trai

Tc2r 3 Dec 4, 2021
The application is a PoC that helps in identifying modern bankers, potentially malicious and remote controlling applications abusing Android AccessibilityService.

Motivation Project aims to help in: identifying keyloggers and events hijacking malicious applications such as Anubis/TeaBot, identifying a "fake bank

Krzysztof Pranczk 33 Dec 9, 2022
A plugin for Termux to use native Android GUI components from CLI applications.

Termux:GUI This is a plugin for Termux that enables command line programs to use the native android GUI. In the examples directory you can find demo v

Termux 345 Jan 1, 2023
Changelog - a android library, it helps developers display the history of changes in their applications

Changelog is a android library, it helps developers display the history of changes in their applications. Supports Locales, Layout direction

Amirhosein Barati 2 Aug 1, 2022
Yet another static code analyzer for malicious Android applications

Androwarn Yet another static code analyzer for malicious Android applications Description Androwarn is a tool whose main aim is to detect and warn the

Thomas D. 422 Dec 28, 2022
An Animated Scrolling View for React Native applications, supported on both iOS and Android

react-native-focused-scroll An Animated Scrolling View for React Native applications, supported on both iOS and Android Preview react-native-focus-scr

Fatemeh Marzoughi (Saba) 3 Aug 12, 2022
A framework for building native applications using React

React Native Learn once, write anywhere: Build mobile apps with React. Getting Started 路 Learn the Basics 路 Showcase 路 Contribute 路 Community 路 Suppor

Meta 106.9k Jan 8, 2023
This app aims at helping people keep track of their job applications, and remind them regularly about the same.

Applications Tracker Lately I have been applying for many roles, and it has become a hard task to keep track of all the applications. Spreadsheets are

Kartik Pant 4 Feb 20, 2022
Conscrypt Provider app, which can be included from other applications (WIP)

Conscrypt Provider is an APK which can provide the Conscrypt Library to apps that support older Android devices. The Conscrypt Library provides modern

mendhak 8 Oct 1, 2022
StaCoAn is a crossplatform tool which aids developers, bugbounty hunters and ethical hackers performing static code analysis on mobile applications.

StaCoAn Not maintained anymore! Will be archived soon. StaCoAn is a crossplatform tool which aids developers, bugbounty hunters and ethical hackers pe

Vincent Cox 769 Dec 31, 2022
android-delicious Delicious Android is an Android app which helps you access and save bookmarks via Delicious. It's available over at Google Play.

Delicious Android Delicious Android is an Android app which helps you access and save bookmarks via Delicious. It's available over at Google Play. Fea

Alexander Blom 137 Nov 20, 2022
Android cutout screen support Android P. Android O support huawei, xiaomi, oppo and vivo.

CutoutScreenSupport Android cutout screen support Android P. Android O support huawei, xiaomi, oppo and vivo. Usage whether the mobile phone is cutout

hacket 5 Nov 3, 2022
FoldingNavigationDrawer-Android This is a sample project present how to use Folding-Android to add Folding Efect to Navigation Drawer.

FoldingNavigationDrawer-Android Sample (Play Store Demo) This is a sample project present how to use Folding-Android to add Folding Efect to Navigatio

null 242 Nov 25, 2022