This session I explained about how to build shareable library and what we did for AppDeKit that is open source app developing tool for app development. If you're looking for a good mechanism for developing your own app, please read this deck to know AppDevKit more.
https://github.com/yahoo/AppDevKit
This presentation that we're going to talk about how to use CameraKit to implement high performance real-time camera app. We also will cover the tips that you should know when you implement customized camera feature in your app.
This deck will present AppDevKit that is a iOS development open source project to build your iOS app faster and easier. You will learn what AppDevKit did for iOS developers and leverage it today.
AppDevKit is an iOS development library that provides developers with useful features to fulfill their everyday iOS app development needs.
AppDevKit has five major parts that include command, user interfaces, animations, image view, and list view support libraries. AppDevKit could be installed by CocoaPods. Please feel welcome to use AppDevKit in your iOS projects as it is licensed under the permissive open source BSD license.
These materials are accessible: https://github.com/anistarsung/AppDevKitLearning
Best Strategy for Developing App Architecture and High Quality AppFlurry, Inc.
Yahoo has been developing several success mobile apps in Taiwan. We’re going to share our best strategy for developing mobile apps. Learning how to use YDevelopKit to save your development resource and using DevOps to retain high quality result simultaneously.
MOPCON 2014 - Best software architecture in app developmentanistar sung
Talking about how to build smart design and architecture for app development. Let your app can easy develop and deploy components on your app. And more topic of version control and quality improvement.
The document discusses Material Design from a developer's perspective and provides an overview of some key aspects to implement Material Design in Android apps, including:
1) Styles, colors, and themes to apply Material Design visual elements and follow Material specifications.
2) Views and widgets like Toolbar, RecyclerView, CardView and how to implement them.
3) Other APIs like Z-index, elevation, activity transitions, circular reveal animations that are part of Material Design.
Android Lollipop - Webinar vom 11.12.2014inovex GmbH
Material Design: Looking at the new design language "Material Design" that has been introduced with Android L. Learn how to update your app's design to the new guidelines and what changes and new features you can expect from Material Design. Switching to your new Diet-Plan: Android-L and Backwards Compatibility. "Shiny New Android, Awesome New Ui, Cool New Stuff to use for Developers. But as always we are Bound to the Newest System. Androids new Support Library makes it Possible to use some of these Components and enables us to get the new Look and feel on Older Devices."
Speaker: Tim Roes + Angelo Rüggeberg, inovex GmbH
Eclipse Modeling Guided Tour - EcoreToolsCédric Brun
This document discusses Ecore tools for modeling in Eclipse, including productivity tools like an Ecore design checklist and package dependencies viewer. It describes shortcuts for direct editing Ecore models and modeling features like generics, parameters, and annotations. The document outlines views for inspecting Ecore models and generation settings. It mentions visualizing Xcore models using Sirius and the envisioned roadmap for Ecore tools.
This presentation that we're going to talk about how to use CameraKit to implement high performance real-time camera app. We also will cover the tips that you should know when you implement customized camera feature in your app.
This deck will present AppDevKit that is a iOS development open source project to build your iOS app faster and easier. You will learn what AppDevKit did for iOS developers and leverage it today.
AppDevKit is an iOS development library that provides developers with useful features to fulfill their everyday iOS app development needs.
AppDevKit has five major parts that include command, user interfaces, animations, image view, and list view support libraries. AppDevKit could be installed by CocoaPods. Please feel welcome to use AppDevKit in your iOS projects as it is licensed under the permissive open source BSD license.
These materials are accessible: https://github.com/anistarsung/AppDevKitLearning
Best Strategy for Developing App Architecture and High Quality AppFlurry, Inc.
Yahoo has been developing several success mobile apps in Taiwan. We’re going to share our best strategy for developing mobile apps. Learning how to use YDevelopKit to save your development resource and using DevOps to retain high quality result simultaneously.
MOPCON 2014 - Best software architecture in app developmentanistar sung
Talking about how to build smart design and architecture for app development. Let your app can easy develop and deploy components on your app. And more topic of version control and quality improvement.
The document discusses Material Design from a developer's perspective and provides an overview of some key aspects to implement Material Design in Android apps, including:
1) Styles, colors, and themes to apply Material Design visual elements and follow Material specifications.
2) Views and widgets like Toolbar, RecyclerView, CardView and how to implement them.
3) Other APIs like Z-index, elevation, activity transitions, circular reveal animations that are part of Material Design.
Android Lollipop - Webinar vom 11.12.2014inovex GmbH
Material Design: Looking at the new design language "Material Design" that has been introduced with Android L. Learn how to update your app's design to the new guidelines and what changes and new features you can expect from Material Design. Switching to your new Diet-Plan: Android-L and Backwards Compatibility. "Shiny New Android, Awesome New Ui, Cool New Stuff to use for Developers. But as always we are Bound to the Newest System. Androids new Support Library makes it Possible to use some of these Components and enables us to get the new Look and feel on Older Devices."
Speaker: Tim Roes + Angelo Rüggeberg, inovex GmbH
Eclipse Modeling Guided Tour - EcoreToolsCédric Brun
This document discusses Ecore tools for modeling in Eclipse, including productivity tools like an Ecore design checklist and package dependencies viewer. It describes shortcuts for direct editing Ecore models and modeling features like generics, parameters, and annotations. The document outlines views for inspecting Ecore models and generation settings. It mentions visualizing Xcore models using Sirius and the envisioned roadmap for Ecore tools.
The document discusses different types of images in iOS including UIImage, CGImage, and CIImage. UIImage is used for displaying images, CGImage is a bitmap representation, and CIImage is not an actual image but a "recipe" used for image processing. Core Image filters are much faster than Core Graphics for operations like resizing since CIImage uses lazy evaluation. CGImage is sufficient for simple single modifications while CIImage works better for filters, infinite images, and GPU processing.
Jetpack Compose is Android's new modern toolkit for building native UI using less code and powerful Kotlin APIs. It is inspired by React, Litho, Vue.js and Flutter but written completely in Kotlin. Compose aims to simplify and reduce code by separating concerns through a declarative paradigm instead of the traditional imperative view approach. It uses a gap buffer data structure to efficiently manage changes to UI over time in a reactive way. While still in developer preview, Compose shows promise for improving the Android UI development experience.
GoogleVisualr - A Ruby library for Google Visualization APIWinston Teo
The document discusses GoogleVisualr, a Ruby library for the Google Visualization API. It enables adding visualizations to web pages using either the Charts API or Visualization API from Google. The library addresses problems with directly using the Google Visualization API in Ruby on Rails by allowing developers to write Ruby code that generates the necessary JavaScript. Code examples demonstrate creating a pie chart visualization in the controller and rendering it in the view. The document also covers installation, common questions, additional examples, notes on usage, and resources for further information.
This document discusses different types of animation in Android, including property animation, view animation, tween animation, and frame animation. It explains that property animation changes a property value over time, tween animation performs simple transformations on a view, and frame animation shows a sequence of images. It provides details on using XML and code to create animations with elements like alpha, scale, rotate, and translate. The document includes examples of how to specify animation properties in XML and notes that listeners can be used to detect animation start, repeat, and end.
This document provides information on using Google Maps, GPS, camera, and SD card functionality in Android applications. It discusses setting up a Maps API key, controlling map views, displaying the user's location, taking photos via intents and the camera API, permissions for hardware access, and reading/writing to the SD card. Tips are also provided such as using version control, testing on low-end devices, and using developer tools.
In this event we will walk you through best practices and the practical Implementation of the following topics:
Advantage of Kotlin over Java, Kotlin Coroutines .
What’s new in Android Studio, How to use Motion Layout Editor
NaviGation Architecture component, Vivewmodel, Livedata, Room database, Jetpack Compose,
Material Design Library...etc
App Distribution - Android App bundle over an APK
The document contains a presentation by Ilya Ivanov on React Native. The presentation covers theory of modern mobile apps and why React Native, includes sections on architecture, practice, creating apps, styling, navigation, animation and performance. Code samples are provided for creating a basic app, adding interactivity, using animations and navigation. Resources listed at the end include the app repository, links on performance and real-world usage of React Native.
Lessons learned from porting Roloengine from iOS to AndroidManish Mathai
Porting games from iOS to Android requires addressing differences in APIs, memory management, and UI frameworks. The document discusses a game studio's experience porting their iOS games to Android over several years. It covers options like using the NDK for native code or a hybrid approach, considerations for OpenGL rendering, audio, and dealing with limited memory on Android. Tips are provided around threading models, avoiding Java heap access in game loops, and ensuring layouts work on different screen sizes.
Jetpack Compose - Android’s modern toolkit for building native UIGilang Ramadhan
Jetpack Compose simplifies and accelerates UI development on Android. Quickly bring your app to life with less code, powerful tools, and intuitive Kotlin APIs.
OpenGLES - Graphics Programming in Android Arvind Devaraj
The document discusses graphics programming in OpenGLES. It provides an overview of OpenGLES including that it renders 3D geometry using triangles and the graphics pipeline. It describes transformations, lighting, texturing, shaders and other OpenGLES concepts. It also discusses OpenGL ES on Android platforms including the activity, renderer and drawing triangles.
This document discusses different types of animations in Android including frame-by-frame animation, tween animation, interpolators, and layout animation. Frame-by-frame animation involves playing a sequence of images like a flipbook. Tween animation uses interpolators to transition properties like translation, rotation, scale, and alpha over time. Layout animation applies animations when views are added or removed from a layout. The document provides details on creating animation resources in XML and applying them through code.
This document discusses the Lithe.js editor module. It provides an overview of the module's functions, editor API, plug-in system, initialization process, dependencies, deployment tools, project structure, and plans for future improvements including caching, continuous integration, and a proxy server. The editor API allows inserting, removing, and formatting content along with cursor and selection handling. Plug-ins can be added to customize the editor. Dependencies include libraries for DOM manipulation, events, Ajax requests, and more. Grunt is used to build, combine, and minify assets for deployment.
The Android Dev summit happened from Nov 7-8 at the Computer History Museum in Mountain View, California. Android team shared updates to Kotlin, Jetpack, Android Studio, App Bundles and talked about Foldables. In this talk, I will summarize the major announcements and new features for Android Developers and Product Managers.
The document discusses loading an image into OpenCV, calculating a histogram of the grayscale region of the image, and displaying basic statistics. Key steps include loading an image, converting it to grayscale, calculating the histogram, drawing the histogram values on an image, and displaying the original, grayscale, and histogram images along with calculated mean, variance, and standard deviation. The document also notes cleaning up and other OpenCV histogram functions.
This document discusses strategies for building white label mobile apps that can be customized for different clients or brands while maintaining a shared code base. It recommends using a "flavor" architecture with a main app flavor containing shared code and resources, and additional product flavors that contain minimal customizations. The flavors share code and resources to reduce duplication. It also discusses using interfaces, features and configuration files to further customize apps for different clients, such as customizing navigation flows, resources or dependencies. The goal is to offer limited customization while keeping apps maintainable and focused.
This document discusses creating a multiplayer 3D racing game using Unity. It describes using Unity's assets to build the game environment and circuits. It provides instructions on modeling a 3D car asset, adding physics components, and scripting to enable controls and multiplayer functionality. The document also covers adding collision, shadows, and skid marks to enhance the car and racing experience. It concludes by explaining how to package the car as a prefab that can be reused across Unity projects.
The document discusses the iPhone SDK. It includes code snippets and descriptions of various UIKit classes and components used for building iPhone applications, such as UIImageView, CALayer, UITableView, and more. It provides examples of how to load and cache images, implement pull-to-refresh functionality in a UITableView, and animate UI elements like buttons.
Core Image: The Most Fun API You're Not Using, CocoaConf Atlanta, December 2014Chris Adamson
Graphics on iOS and OS X isn't just about stroking shapes and paths in Core Graphics and trying to figure out OpenGL. The Core Image framework gives you access to about 100 built-in filters, providing everything from photographic effects and color manipulation to face-finding and QR Code generation. It can leverage the power of the GPU to provide performance fast enough to perform complex effects work on real-time video capture. But even if you're not writing the next Final Cut Pro or Photoshop, it's easy to call in Core Image for simple tasks, like putting a blur in part of your UI for transitions or privacy reasons. In this session, we'll explore the many ways Core Image can make your app sizzle
Programming with Segue
Dynamic design through coding
Views and its Co-ordinates
Core animations
Picture pickers
Sound manager
Address book picker
- Hussain KMR Behestee
The document discusses different types of images in iOS including UIImage, CGImage, and CIImage. UIImage is used for displaying images, CGImage is a bitmap representation, and CIImage is not an actual image but a "recipe" used for image processing. Core Image filters are much faster than Core Graphics for operations like resizing since CIImage uses lazy evaluation. CGImage is sufficient for simple single modifications while CIImage works better for filters, infinite images, and GPU processing.
Jetpack Compose is Android's new modern toolkit for building native UI using less code and powerful Kotlin APIs. It is inspired by React, Litho, Vue.js and Flutter but written completely in Kotlin. Compose aims to simplify and reduce code by separating concerns through a declarative paradigm instead of the traditional imperative view approach. It uses a gap buffer data structure to efficiently manage changes to UI over time in a reactive way. While still in developer preview, Compose shows promise for improving the Android UI development experience.
GoogleVisualr - A Ruby library for Google Visualization APIWinston Teo
The document discusses GoogleVisualr, a Ruby library for the Google Visualization API. It enables adding visualizations to web pages using either the Charts API or Visualization API from Google. The library addresses problems with directly using the Google Visualization API in Ruby on Rails by allowing developers to write Ruby code that generates the necessary JavaScript. Code examples demonstrate creating a pie chart visualization in the controller and rendering it in the view. The document also covers installation, common questions, additional examples, notes on usage, and resources for further information.
This document discusses different types of animation in Android, including property animation, view animation, tween animation, and frame animation. It explains that property animation changes a property value over time, tween animation performs simple transformations on a view, and frame animation shows a sequence of images. It provides details on using XML and code to create animations with elements like alpha, scale, rotate, and translate. The document includes examples of how to specify animation properties in XML and notes that listeners can be used to detect animation start, repeat, and end.
This document provides information on using Google Maps, GPS, camera, and SD card functionality in Android applications. It discusses setting up a Maps API key, controlling map views, displaying the user's location, taking photos via intents and the camera API, permissions for hardware access, and reading/writing to the SD card. Tips are also provided such as using version control, testing on low-end devices, and using developer tools.
In this event we will walk you through best practices and the practical Implementation of the following topics:
Advantage of Kotlin over Java, Kotlin Coroutines .
What’s new in Android Studio, How to use Motion Layout Editor
NaviGation Architecture component, Vivewmodel, Livedata, Room database, Jetpack Compose,
Material Design Library...etc
App Distribution - Android App bundle over an APK
The document contains a presentation by Ilya Ivanov on React Native. The presentation covers theory of modern mobile apps and why React Native, includes sections on architecture, practice, creating apps, styling, navigation, animation and performance. Code samples are provided for creating a basic app, adding interactivity, using animations and navigation. Resources listed at the end include the app repository, links on performance and real-world usage of React Native.
Lessons learned from porting Roloengine from iOS to AndroidManish Mathai
Porting games from iOS to Android requires addressing differences in APIs, memory management, and UI frameworks. The document discusses a game studio's experience porting their iOS games to Android over several years. It covers options like using the NDK for native code or a hybrid approach, considerations for OpenGL rendering, audio, and dealing with limited memory on Android. Tips are provided around threading models, avoiding Java heap access in game loops, and ensuring layouts work on different screen sizes.
Jetpack Compose - Android’s modern toolkit for building native UIGilang Ramadhan
Jetpack Compose simplifies and accelerates UI development on Android. Quickly bring your app to life with less code, powerful tools, and intuitive Kotlin APIs.
OpenGLES - Graphics Programming in Android Arvind Devaraj
The document discusses graphics programming in OpenGLES. It provides an overview of OpenGLES including that it renders 3D geometry using triangles and the graphics pipeline. It describes transformations, lighting, texturing, shaders and other OpenGLES concepts. It also discusses OpenGL ES on Android platforms including the activity, renderer and drawing triangles.
This document discusses different types of animations in Android including frame-by-frame animation, tween animation, interpolators, and layout animation. Frame-by-frame animation involves playing a sequence of images like a flipbook. Tween animation uses interpolators to transition properties like translation, rotation, scale, and alpha over time. Layout animation applies animations when views are added or removed from a layout. The document provides details on creating animation resources in XML and applying them through code.
This document discusses the Lithe.js editor module. It provides an overview of the module's functions, editor API, plug-in system, initialization process, dependencies, deployment tools, project structure, and plans for future improvements including caching, continuous integration, and a proxy server. The editor API allows inserting, removing, and formatting content along with cursor and selection handling. Plug-ins can be added to customize the editor. Dependencies include libraries for DOM manipulation, events, Ajax requests, and more. Grunt is used to build, combine, and minify assets for deployment.
The Android Dev summit happened from Nov 7-8 at the Computer History Museum in Mountain View, California. Android team shared updates to Kotlin, Jetpack, Android Studio, App Bundles and talked about Foldables. In this talk, I will summarize the major announcements and new features for Android Developers and Product Managers.
The document discusses loading an image into OpenCV, calculating a histogram of the grayscale region of the image, and displaying basic statistics. Key steps include loading an image, converting it to grayscale, calculating the histogram, drawing the histogram values on an image, and displaying the original, grayscale, and histogram images along with calculated mean, variance, and standard deviation. The document also notes cleaning up and other OpenCV histogram functions.
This document discusses strategies for building white label mobile apps that can be customized for different clients or brands while maintaining a shared code base. It recommends using a "flavor" architecture with a main app flavor containing shared code and resources, and additional product flavors that contain minimal customizations. The flavors share code and resources to reduce duplication. It also discusses using interfaces, features and configuration files to further customize apps for different clients, such as customizing navigation flows, resources or dependencies. The goal is to offer limited customization while keeping apps maintainable and focused.
This document discusses creating a multiplayer 3D racing game using Unity. It describes using Unity's assets to build the game environment and circuits. It provides instructions on modeling a 3D car asset, adding physics components, and scripting to enable controls and multiplayer functionality. The document also covers adding collision, shadows, and skid marks to enhance the car and racing experience. It concludes by explaining how to package the car as a prefab that can be reused across Unity projects.
The document discusses the iPhone SDK. It includes code snippets and descriptions of various UIKit classes and components used for building iPhone applications, such as UIImageView, CALayer, UITableView, and more. It provides examples of how to load and cache images, implement pull-to-refresh functionality in a UITableView, and animate UI elements like buttons.
Core Image: The Most Fun API You're Not Using, CocoaConf Atlanta, December 2014Chris Adamson
Graphics on iOS and OS X isn't just about stroking shapes and paths in Core Graphics and trying to figure out OpenGL. The Core Image framework gives you access to about 100 built-in filters, providing everything from photographic effects and color manipulation to face-finding and QR Code generation. It can leverage the power of the GPU to provide performance fast enough to perform complex effects work on real-time video capture. But even if you're not writing the next Final Cut Pro or Photoshop, it's easy to call in Core Image for simple tasks, like putting a blur in part of your UI for transitions or privacy reasons. In this session, we'll explore the many ways Core Image can make your app sizzle
Programming with Segue
Dynamic design through coding
Views and its Co-ordinates
Core animations
Picture pickers
Sound manager
Address book picker
- Hussain KMR Behestee
Ever since we broke apart the front and back-end of our systems, we’ve longed to partially reunite them with a shared language. The benefits of code reuse and shared tooling are compelling but is this nirvana possible? In this session we will explore building both the front (mobile and web) and back-end of an application with a shared Kotlin codebase. You will learn how to setup the build, share code, and deploy the back-end as a serverless app.
Builder Design Pattern (Generic Construction -Different Representation)Sameer Rathoud
Generic Construction -Different Representation
This presentation provide information to understand builder design pattern, it’s structure, it’s implementation.
The document discusses techniques for optimizing Android UI performance. It covers optimizing adapter views by reusing views, pre-scaling images to avoid runtime scaling, invalidating specific regions instead of entire views, using fewer views in layouts by combining views, and avoiding memory allocations in performance critical code. The document provides examples of using view holders, compound drawables, ViewStubs, merge tags, custom views and layouts to reduce view count. It also discusses caching objects using soft and weak references to avoid memory leaks.
This document discusses various techniques for working with multimedia in Android applications, including detecting device capabilities, loading images from local storage and remote URLs, playing audio files from assets and raw resources, and improving performance through caching and asynchronous loading. It provides code examples for checking if a device has a front-facing camera, loading images while avoiding out of memory errors, playing audio files from assets, and using an AsyncTask to load images asynchronously to avoid blocking the UI. It also discusses potential memory leak issues and strategies for building an image cache.
This document discusses using Flutter and ML Kit to build mobile apps with machine learning capabilities. It provides an overview of Flutter and ML Kit, then demonstrates how to build a sample app with Flutter that uses the camera and ML Kit's vision API for tasks like face detection and text recognition. The sample app code is explained step-by-step, covering initializing the camera, detecting images, drawing the results on the canvas, and providing a demo of the working app.
The document provides an overview of getting started with Material Design on Android. It introduces the presenters and their backgrounds, describes some key Material Design concepts like navigation drawers, animations, floating buttons, and lists/cards. It also provides code examples for implementing Material Design features in Android like adding support libraries, styling colors and themes, navigation drawers, SwipeRefreshLayout, RecyclerView, CardView, and shared element transitions.
This document discusses CoreAnimation, a Mac and iOS framework for animating layers and views. It provides an overview of key CoreAnimation classes like CALayer, which is used to render content for views, and CAAnimation for animating layer properties. It also covers topics like using CATransaction to group animations, animating layer properties with CABasicAnimation and CAKeyframeAnimation, and controlling animation timing with properties like beginTime.
This document discusses several iOS user interface components:
UIImageView displays images and animated image sequences. UIScrollView allows scrolling through content larger than the screen. UIWebView embeds web content in apps and converts phone numbers to links. It provides examples of loading and manipulating content in these components.
Want to squeeze every last bit of performance out of your apps? I will show you how to let go of using Interface Builder to create better performing, more optimized, and leaner apps. I'll walk you through why it's better, how to create and move projects off of IB, building your UI in code, and how to gain a better understanding of how your code works from the ground up.
Synchronizing without internet - Multipeer Connectivity (iOS)Jorge Maroto
The document discusses using Multipeer Connectivity to synchronize data between iOS devices without an internet connection. It provides an overview of Multipeer Connectivity and its classes for discovery, advertising, and sharing data in sessions between nearby peers. Examples are given for sharing images, streaming data, and building a shared whiteboard app using gestures and drawings sent over Multipeer Connectivity sessions. Further examples are mentioned for simple synchronization of data between devices and using third party libraries to enable syncing of Core Data apps.
This document provides an overview of core concepts for building user interfaces in iOS, including UIView, UIResponder, touch handling, and drawing. It explains the view hierarchy, how to add and arrange subviews, and how views handle touch events. It also covers low-level drawing using Core Graphics and Quartz 2D, including how to draw shapes, text, images and patterns.
This Android code defines a CarMirroringActivity class that mirrors an image on a SurfaceView to simulate a car's rearview mirror display. It initializes the SurfaceView, gets the underlying surface, locks a canvas for drawing, and loads a bitmap image to display on the "mirror" using the canvas.
Similar to Yahoo Open Source - The Tour & Mystery of AppDevKit (MOPCON 2016) (20)
12. I want #7b19a9 color background.
Challenge on Color
Design easy sync tool for designer
Designer said:
13. Hmmm… What the color is?
Challenge on Color
Design easy sync tool for designer
Developer said:
14.
15. I want Yahoo purple background.
Challenge on Color
Design easy sync tool for designer
Designer said:
16.
17. Using Category to improve UIColor
+ (UIColor *)ADKColorWithHexString:(NSString *)hexString;
+ (UIColor *)ADKColorWithHexNumber:(NSUInteger)hexNumber;
Challenge on Color
Design easy sync tool for designer
18. Management your theme color
+ (UIColor *)themeBackground;
+ (UIColor *)themeForeground;
+ (UIColor *)themeDisabled;
+ (UIColor *)themeFocus;
+ (UIColor *)themeHighlight;
+ (UIColor *)themeTitle;
+ (UIColor *)themeSubtitle;
Challenge on Color
Design easy sync tool for designer
54. Customized pull to refresh feature
[self.collectionView
ADKAddPullToRefreshWithHandleView:refreshView
actionHandler:^{
// Calling API to get data and present on list
[self.collectionView reloadData];
}];
Implement Easy Refresh Mechanism
Support UICollectionView & UITableView
72. Separate Libraries into small pieces
s.subspec 'AppDevCommonKit' do |appDevCommonKit|
appDevCommonKit.source_files = …
appDevCommonKit.public_header_files = …
end
s.subspec 'AppDevUIKit' do |appDevUIKit|
appDevUIKit.source_files = …
appDevUIKit.public_header_files = …
appDevUIKit.dependency 'AppDevKit/AppDevCommonKit'
end