Mobile App Reverse Engineering
Mobile App Reverse Engineering is a practical guide focused on helping cybersecurity professionals scale up their mobile security skills. With the IT world's evolution in mobile operating systems, cybercriminals are increasingly focusing their efforts on mobile devices. This book enables you to keep up by discovering security issues through reverse engineering of mobile apps.
This book starts with the basics of reverse engineering and teaches you how to set up an isolated virtual machine environment to perform reverse engineering. You'll then learn about modern tools such as Ghidra and Radare2 to perform reverse engineering on mobile apps as well as understand how Android and iOS apps are developed. Next, you'll explore different ways to reverse engineer some sample mobile apps developed for this book. As you advance, you'll learn how reverse engineering can help in penetration testing of Android and iOS apps with the help of case studies. The concluding chapters will ...
iOS Forensics for Investigators
Professionals working in the mobile forensics industry will be able to put their knowledge to work with this practical guide to learning how to extract and analyze all available data from an iOS device.
This book is a comprehensive, how-to guide that leads investigators through the process of collecting mobile devices and preserving, extracting, and analyzing data, as well as building a report. Complete with step-by-step explanations of essential concepts, practical examples, and self-assessment questions, this book starts by covering the fundamentals of mobile forensics and how to overcome challenges in extracting data from iOS devices. Once you've walked through the basics of iOS you'll learn how to use commercial tools to extract and process data and manually search for artifacts stored in database files. Next, you'll find out the correct workflows for handling iOS devices and understand how to extract valuable information to track device usage. You'll ...
Practical Forensic Analysis of Artifacts on iOS and Android Devices
Leverage foundational concepts and practical skills in mobile device forensics to perform forensically sound criminal investigations involving the most complex mobile devices currently available on the market. Using modern tools and techniques, this book shows you how to conduct a structured investigation process to determine the nature of the crime and to produce results that are useful in criminal proceedings.
You'll walkthrough the various phases of the mobile forensics process for both Android and iOS-based devices, including forensically extracting, collecting, and analyzing data and producing and disseminating reports. Practical cases and labs involving specialized hardware and software illustrate practical application and performance of data acquisition (including deleted data) and the analysis of extracted information. You'll also gain an advanced understanding of computer forensics, focusing on mobile devices and other devices not classifiable as laptops, desktops, or serv ...
Beginning iOS Game Center and GameKit, 2nd Edition
Create fun and polished games and gamify your apps with GameKit and Game Center. This fully updated new edition of Kyle Richter's classic can help you reach new customers through social integrations, multiplayer, and achievements. Quickly add a level of polish to your apps that used to take weeks of hard work and late nights.
Implementing a leaderboard and achievement system has never been so simple! Gone are the days of writing and maintaining your own server. You'll also see how to easily add advanced networking concepts like VoIP support in hours, not days. Game Center is heavily pushed and promoted by Apple. By adding Game Center into your game, not only do you gain access to polished and professional features but your app will see a boost in downloads and sharing.
Expeditiously implement a plethora of advanced social networking concepts into your apps. Create custom Game Center Manager classes that can be rapidly deployed into any of your new or existing projects. And jump r ...
Test-Driven iOS Development with Swift, 4th Edition
Test-driven development (TDD) is a proven way to find software bugs earlier on in software development. Writing tests before you code improves the structure and maintainability of your apps, and so using TDD in combination with Swift 5.5's improved syntax leaves you with no excuse for writing bad code.
Developers working with iOS will be able to put their knowledge to work with this practical guide to TDD in iOS. This book will help you grasp the fundamentals and show you how to run TDD with Xcode. You'll learn how to test network code, navigate between different parts of the app, run asynchronous tests, and much more. Using practical, real-world examples, you'll begin with an overview of the TDD workflow and get to grips with unit testing concepts and code cycles. You'll then develop an entire iOS app using TDD while exploring different strategies for writing tests for models, view controllers, and networking code. Additionally, you'll explore how to test the user int ...
Beginning DevOps on AWS for iOS Development
Apply the principles of DevOps in software development - automated builds, automated tests, and continuous deployment and delivery - to iOS application development on Amazon Web Services (AWS) cloud. This book provides detailed walkthroughs and example source code is provided for the concepts discussed so you can put theory into practical application.
You'll start by building a basic iOS application and then dive deep into key AWS Developer tools and services to see how they can be used in iOS application development. Then review the details of the integration of these fully managed AWS services with open-source tools such as Jenkins and Fastlane that allow developers to get the best of both worlds and further help to enhance and increase agility in the development lifecycle of iOS apps.
You'll also investigate the Amazon EC2 Mac instance, which allows you to run XCode in a cloud environment for the first time to leverage the flexibility, elasticity, ...
Computer Vision and Augmented Reality in iOS
Learn how computer vision works, how augmented reality renders digital graphics into the physical world via an iPhone's camera, and how to incorporate these technologies into your own apps. This book shows you how to take full advantage of computer vision technologies.
Interacting with other people online usually involves user-generated images and videos; whether it be "memes", short videos, or heavily-modified images. Before smart phones, generating this content required a professional using high-level image and video editing software. Not any more.
This book will teach you to use computer vision in the most popular ways, such as for facial recognition, image to text analysis and, of course, recording a video of a dancing hot dog in your living room. Starting with the history of computer vision, image and video processing fundamentals, and an introduction to developing augmented reality applications, you'll learn to incorporate computer vision both in the content you create and t ...
iOS 15 Programming Fundamentals with Swift
Move into iOS development by getting a firm grasp of its fundamentals, including the Xcode 13 IDE, Cocoa Touch, and the latest version of Apple's acclaimed programming language, Swift 5.5. With this thoroughly updated guide, you'll learn the Swift language, understand Apple's Xcode development tools, and discover the Cocoa framework.
Explore Swift's object-oriented concepts; Become familiar with built-in Swift types; Dive deep into Swift objects, protocols, and generics; Tour the life cycle of an Xcode project; Learn how nibs are loaded; Understand Cocoa's event-driven design; Communicate with C and Objective-C.
In this edition, catch up on the latest iOS programming features: Structured concurrency: async/await, tasks, and actors; Swift native formatters and attributed strings; Lazy locals and throwing getters; Enhanced collections with the Swift Algorithms and Collections packages; Xcode tweaks: column breakpoints, package collections, and Info.plist build setting ...
.NET Developer's Guide to Augmented Reality in iOS
Attention .NET developers, here is your starting point for learning how to create and publish augmented reality (AR) apps for iOS devices.
This book introduces and explores iOS augmented reality mobile app development specifically for .NET developers. The continued adoption and popularity of Xamarin, a tool that allows cross-platform mobile application development, opens up many app publishing opportunities to .NET developers that were never before possible, including AR development.
You will use Xamarin to target Apple's augmented reality framework, ARKit, to develop augmented reality apps in the language you prefer - C#. Begin your journey with a foundational introduction to augmented reality, ARKit, Xamarin, and .NET. You will learn how this remarkable collaboration of technologies can produce fantastic experiences, many of them never before tried by .NET developers. From there you will dive into the fundamentals and then explore various topics and AR features. T ...
Build Location-Based Projects for iOS
Coding is awesome. So is being outside. With location-based iOS apps, you can combine the two for an enhanced outdoor experience. Use Swift to create your own apps that use GPS data, read sensor data from your iPhone, draw on maps, automate with geofences, and store augmented reality world maps. You'll have a great time without even noticing that you're learning. And even better, each of the projects is designed to be extended and eventually submitted to the App Store. Explore, share, and have fun.
Location-based apps are everywhere. From mapping our jogging path to pointing us to the nearest collectible creature in a location-based game, these apps offer useful and interesting features and information related to where you are. Using real-world maps and places as the environment, they add an extra layer of adventure to exploring the outdoors. If you've ever wanted to make your own location-based apps and games, you can learn how with four simple, Swift-based projects that are ...
iOS Unit Testing by Example
Fearlessly change the design of your iOS code with solid unit tests. Use Xcode's built-in test framework XCTest and Swift to get rapid feedback on all your code - including legacy code. Learn the tricks and techniques of testing all iOS code, especially view controllers (UIViewControllers), which are critical to iOS apps. Learn to isolate and replace dependencies in legacy code written without tests. Practice safe refactoring that makes these tests possible, and watch all your changes get verified quickly and automatically. Make even the boldest code changes with complete confidence.
Manual code and UI testing get slower the deeper your navigation hierarchy goes. It can take several taps just to reach a particular screen, never mind the actual workflow tests. Automatic unit testing offers such rapid feedback that it can change the rules of development. Bring testing to iOS development, even for legacy code. Use XCTest to write unit tests in Swift for all ...