The document discusses the new build system for Android using Gradle. It provides an overview of Gradle basics, plugins, and integration with Android Studio. It describes what Gradle is, why it is used, how to install it, and introduces its build script basics and Groovy language. It also covers the Gradle plugins for Java and Android projects, including tasks, dependencies, signing configs, product flavors, and build types.
This document summarizes challenges that large apps face with multidex and reducing APK size. It discusses how multidex allows apps to have multiple dex files if the methods exceed 65,536 or the dex file size is over 5MB. It also provides tips for using multidex in Gradle builds and compressing sub-dex files to reduce the APK size. Additionally, it suggests deferring sub-dex installation to a worker thread, moving splash activities to the main dex, and using techniques like resource proguarding, icon fonts, and image compression to further reduce the APK size.
The document introduces RxJava and how it can be used in Android applications, describing key concepts like Observables, Observers, Operators, and Subjects that allow asynchronous and event-based code to be written in a reactive style. It provides examples of how RxJava can be used to fetch toilet data from an API and handle the asynchronous response more declaratively compared to using callbacks. The document also discusses how subjects can act as both observables that emit events and observers that receive events, making them useful for building event buses between activities.
This document contains an agenda for a presentation that includes topics such as exploit development, web application hacking methodology, SQLMap, vulnerability assessment, malware analysis, reverse engineering, and cybersecurity conferences. It also addresses frequently asked questions about capture the flag events, bug bounty programs, and security certifications. Resources like exploit code examples, tool documentation, hacking forums, and malware repositories are listed.
The document discusses Geb, a Groovy-based browser automation tool used for web testing, screen scraping, and more. It highlights Geb's advantages such as its integration with testing frameworks, user-friendly syntax, and support for multiple browsers and languages. The presentation includes installation instructions, examples of usage, and the core principles behind Geb's implementation and functionality.