Tagged articles

iOS

1046 articles · Page 9 of 11
360 Quality & Efficiency
360 Quality & Efficiency
Nov 7, 2018 · Mobile Development

Comprehensive Overview of Mobile Testing Tools and Practices

This article presents a comprehensive catalog of mobile testing tools and techniques, covering Android and iOS platforms, including UI automation frameworks, unit testing libraries, performance monitoring utilities, network simulation tools, static analysis solutions, code coverage options, cloud testing services, and continuous integration pipelines.

AndroidPerformance Monitoringautomation tools
0 likes · 6 min read
Comprehensive Overview of Mobile Testing Tools and Practices
Sohu Tech Products
Sohu Tech Products
Oct 31, 2018 · Mobile Development

Componentization Architecture for iOS Mobile Applications

This article presents a comprehensive component‑based architecture for iOS navigation apps, detailing layered design, responsibility division, integration methods, MGJRouter communication, H5‑Native interaction, dynamic configuration, and insights from Taobao's large‑scale componentization practice.

CocoaPodsDynamic ConfigurationMGJRouter
0 likes · 18 min read
Componentization Architecture for iOS Mobile Applications
Sohu Tech Products
Sohu Tech Products
Oct 31, 2018 · Mobile Development

Componentized Architecture and Routing Solutions for iOS Mobile Development

This article explains the evolution, analysis, and improvement of componentized architecture in large‑scale iOS projects, compares MGJRouter, Protocol, and CTMediator routing schemes, discusses integration, resource management, memory considerations, and provides practical code examples for implementing modular components.

CTMediatorComponent ArchitectureMGJRouter
0 likes · 22 min read
Componentized Architecture and Routing Solutions for iOS Mobile Development
Alibaba Cloud Developer
Alibaba Cloud Developer
Oct 29, 2018 · Mobile Development

Capturing and Replaying Mobile App UI Issues with Unified Hooking and Touch Simulation

This article explains how to solve post‑release user‑side problems by recording UI events and data streams, replaying them through a custom framework that simulates touch events, uses a unified interceptor, and hooks Objective‑C blocks, providing a complete end‑to‑end solution for mobile developers.

Objective-C blocksUI event replayiOS
0 likes · 20 min read
Capturing and Replaying Mobile App UI Issues with Unified Hooking and Touch Simulation
Xianyu Technology
Xianyu Technology
Oct 26, 2018 · Mobile Development

Flutter App Size Optimization Strategies for iOS

The Xianyu team tackled iOS Flutter app bloat by analyzing App.framework, cutting excessive type‑casting, applying dwarf‑stack‑trace and obfuscation flags, stripping dSYM symbols, and removing duplicate assets, which together shrank the generated framework by over 30 % and improved download efficiency.

App SizeDARTFlutter
0 likes · 9 min read
Flutter App Size Optimization Strategies for iOS
Meituan Technology Team
Meituan Technology Team
Oct 25, 2018 · Mobile Development

iOS Navigation Bar Transition: Challenges and Solutions

In large iOS apps like Meituan, navigation‑bar transitions require a systematic approach—using viewWillAppear/WillDisappear to modify styles, employing fake bars during pushes and pops, and following best‑practice rules—to avoid hard‑coded hacks, reduce coupling, and maintain scalable, reliable UI state.

BestPracticesMobileDevelopmentNavigationBar
0 likes · 29 min read
iOS Navigation Bar Transition: Challenges and Solutions
Meituan Technology Team
Meituan Technology Team
Oct 11, 2018 · Mobile Development

Logan: Meituan-Dianping Mobile Logging Framework Overview

Logan, Meituan‑Dianping’s open‑source mobile logging framework, unifies log collection, secure storage, backend processing, and visual frontend tools to capture all user‑side logs without sampling, enabling fast case‑analysis debugging across Android, iOS, mini‑programs and web, with future ML‑driven insights.

AndroidiOSlog collection
0 likes · 13 min read
Logan: Meituan-Dianping Mobile Logging Framework Overview
Xianyu Technology
Xianyu Technology
Oct 9, 2018 · Mobile Development

Xianyu's Online Issue Replay System for Mobile Apps

Xianyu’s technical team built an offline replay system that records UI interactions and all relevant runtime data during app use, then replays the exact sequence with injected data, letting developers instantly reproduce user‑reported bugs and facilitating future automated testing with minimal intrusion.

Event replayblock hookingiOS
0 likes · 18 min read
Xianyu's Online Issue Replay System for Mobile Apps
UC Tech Team
UC Tech Team
Sep 28, 2018 · Mobile Development

Swift 4.2 Released: New Features, Improvements, and Migration Guide

Swift 4.2 has been officially released, bringing faster compilation, enhanced debugging, extensive standard‑library updates, binary‑compatibility progress, numerous language and compiler enhancements, new Swift Package Manager capabilities, and clear migration guidance for developers moving from earlier Swift versions.

Programming LanguageSwiftSwift 4.2
0 likes · 6 min read
Swift 4.2 Released: New Features, Improvements, and Migration Guide
JD Tech Talk
JD Tech Talk
Sep 25, 2018 · Mobile Development

How to Obtain and Unpack WeChat Mini Program .wxapkg Files (Part 1)

This step‑by‑step tutorial explains how to locate the .wxapkg package of a WeChat Mini Program on a jail‑broken iPhone or rooted Android device, copy it to a computer, and unpack it to reveal the obfuscated JavaScript, JSON configuration, WXML, WXSS and resource files.

AndroidMiniProgramReverseEngineering
0 likes · 7 min read
How to Obtain and Unpack WeChat Mini Program .wxapkg Files (Part 1)
WeChat Client Technology Team
WeChat Client Technology Team
Sep 21, 2018 · Mobile Development

Why MMKV Is the Fastest Mobile Key‑Value Store for iOS and Android

MMKV is a high‑performance, mmap‑based key‑value library open‑sourced by Tencent, offering cross‑platform support for iOS and Android with features like multi‑process sharing, anonymous memory, AES encryption, and superior read/write speeds compared to SharedPreferences, NSUserDefaults, and SQLite, as demonstrated by benchmark tests.

AndroidMMKViOS
0 likes · 9 min read
Why MMKV Is the Fastest Mobile Key‑Value Store for iOS and Android
Programmer DD
Programmer DD
Sep 15, 2018 · Mobile Development

When a Victoria’s Secret Model Becomes an iOS Developer: Lyndsey Scott’s Story

Lyndsey Scott, a pioneering African‑American Victoria’s Secret supermodel, secretly built a parallel career as a skilled iOS developer, creating multiple apps, earning a high Stack Overflow reputation, and advocating for women in tech despite facing public skepticism and gender bias.

Lyndsey ScottWomen in Techcareer transition
0 likes · 10 min read
When a Victoria’s Secret Model Becomes an iOS Developer: Lyndsey Scott’s Story
Manbang Technology Team
Manbang Technology Team
Sep 13, 2018 · Mobile Development

Design and Implementation of a High‑Performance, High‑Availability Logging System for iOS Apps

This article describes the motivation, design choices, memory‑mapped implementation, performance evaluation, and practical lessons learned while building a lightweight, crash‑resilient logging framework for the 运满满 iOS client, highlighting its superiority over traditional file‑write approaches.

EncryptionLoggingiOS
0 likes · 8 min read
Design and Implementation of a High‑Performance, High‑Availability Logging System for iOS Apps
Meituan Technology Team
Meituan Technology Team
Sep 13, 2018 · Information Security

How Meituan Built a Low‑Cost, Scalable iOS Malware Hunting System

This article details Meituan Security's Black Hat 2018 presentation on a fully automated, Raspberry‑Pi‑based iOS malware hunting pipeline that crawls App Store apps, cracks DRM, runs dynamic sandbox analysis with Frida, and uses a Nools decision engine to detect advanced threats at scale.

Black HatRaspberry PiSandbox
0 likes · 13 min read
How Meituan Built a Low‑Cost, Scalable iOS Malware Hunting System
Meituan Technology Team
Meituan Technology Team
Sep 13, 2018 · Mobile Development

ARKit LBS AR Application for Meituan Dining Experience

Meituan’s dining AR app uses ARKit’s orientation‑tracking configuration and gravity‑and‑heading world alignment to place virtual restaurant cards in the camera view, rendering them with SceneKit billboards, handling overlap via tap‑to‑disperse and K‑Means clustering, and eliminating flicker by disabling depth buffering.

ARARKitClustering
0 likes · 15 min read
ARKit LBS AR Application for Meituan Dining Experience
Qunar Tech Salon
Qunar Tech Salon
Sep 7, 2018 · Mobile Development

Understanding JavaScriptCore in iOS: Architecture, Components, and Integration

This article explains the role of JavaScriptCore in iOS development, covering its origins in WebKit, the internal architecture of JSCore—including lexer, parser, LLInt and JIT—its key features, and how developers can use JSContext, JSValue, and JSExport to bridge Objective‑C and JavaScript for hybrid applications.

Hybrid DevelopmentJSContextJSValue
0 likes · 30 min read
Understanding JavaScriptCore in iOS: Architecture, Components, and Integration
转转QA
转转QA
Sep 5, 2018 · Mobile Development

CrossPlatformPoint: A Cross‑Platform Data‑Point Testing Tool for the ZhaiZhai App

The article introduces CrossPlatformPoint, a cross‑platform data‑point testing tool for the ZhaiZhai app, outlines the challenges of mobile event‑tracking, presents the tool’s features—including Android and iOS support, server‑side monitoring, keyword search, and offline testing—and provides detailed usage instructions and upgrade tips.

Androidcross-platformiOS
0 likes · 5 min read
CrossPlatformPoint: A Cross‑Platform Data‑Point Testing Tool for the ZhaiZhai App
Qunar Tech Salon
Qunar Tech Salon
Aug 28, 2018 · Mobile Development

QACR: A Comprehensive Mobile Crash Reporting and Monitoring System at Qunar

The article describes QACR, Qunar's end‑to‑end mobile crash reporting platform that collects Android, iOS, ANR, and performance anomalies, enriches them with detailed runtime data, performs deep backend analysis, provides real‑time alerts, automatic bug assignment, and multi‑level reporting to improve mobile app stability and user experience.

AndroidCrash ReportingQACR
0 likes · 7 min read
QACR: A Comprehensive Mobile Crash Reporting and Monitoring System at Qunar
Beike Product & Technology
Beike Product & Technology
Aug 24, 2018 · Information Security

Implementing iOS Password Autofill, Strong Password Generation, and One‑Time Code Autofill

This article explains how to enable iOS password autofill, automatically generate strong passwords, and autofill one‑time verification codes by configuring Associated Domains, setting appropriate UITextContentType values, and adding the required JSON files and Xcode project settings.

Associated DomainsOne-Time CodePassword Autofill
0 likes · 7 min read
Implementing iOS Password Autofill, Strong Password Generation, and One‑Time Code Autofill
Meituan Technology Team
Meituan Technology Team
Aug 23, 2018 · Mobile Development

Understanding JavaScriptCore in iOS: Architecture, Core Concepts, and Integration

JavaScriptCore, the iOS‑embedded JavaScript engine derived from Safari’s WebKit, offers a lexer, parser, interpreter and optional JIT, exposing APIs such as JSContext, JSValue and JSExport so Objective‑C/Swift code can evaluate scripts, exchange data, and interact bidirectionally, enabling lightweight hybrid app development with automatic tracing garbage collection.

JSBridgeWebKitiOS
0 likes · 30 min read
Understanding JavaScriptCore in iOS: Architecture, Core Concepts, and Integration
Sohu Tech Products
Sohu Tech Products
Aug 22, 2018 · Mobile Development

Deep Dive into the Objective‑C Runtime: Object Model, Class Structure, Dynamic Loading and Practical Uses

This article provides an in‑depth exploration of the Objective‑C runtime, covering the underlying object model, class and metaclass structures, the isa_t layout, how classes are loaded and initialized, dynamic loading mechanisms, and practical applications such as ORM and automatic NSCoding implementation.

Class LoadingDynamic LoadingMetaprogramming
0 likes · 22 min read
Deep Dive into the Objective‑C Runtime: Object Model, Class Structure, Dynamic Loading and Practical Uses
Xianyu Technology
Xianyu Technology
Aug 21, 2018 · Mobile Development

Flutter External Texture Rendering and Optimization

Flutter reduces CPU/GPU overhead in multi‑video calls by separating drawing from presentation, using a unified LayerTree and external textures that share OpenGL contexts between Flutter and native code, allowing direct Skia rendering of native pixel buffers on iOS and Android with significantly lower latency and memory use.

External TextureFlutterOpenGL
0 likes · 13 min read
Flutter External Texture Rendering and Optimization
iQIYI Technical Product Team
iQIYI Technical Product Team
Aug 16, 2018 · Mobile Development

Performance Optimization and Frame‑Rate Testing for iOS Mobile Client Dynamic Layout

The article outlines iQIYI’s iOS dynamic‑layout architecture, recommends CADisplayLink for frame‑rate checks and TimeProfiler for deep analysis, then details a two‑phase optimization workflow—eliminating main‑thread bottlenecks (e.g., string formatting, image loading, view hierarchy changes) and reducing off‑screen rendering and layer blending through layer tricks, caching, and asset adjustments—to achieve smoother UI on low‑end devices.

Frame RateOptimizationdynamic layout
0 likes · 13 min read
Performance Optimization and Frame‑Rate Testing for iOS Mobile Client Dynamic Layout
JD Tech
JD Tech
Aug 16, 2018 · Mobile Development

Deep Dive into Objective‑C Object Memory Layout and Runtime Structures

This article explores the low‑level implementation of Objective‑C objects by examining instance memory allocation, the differences between class_getInstanceSize and malloc_size, the internal structures of instance, class, and meta‑class objects, and how isa and superclass pointers link them together.

Objective‑Cclass objectiOS
0 likes · 16 min read
Deep Dive into Objective‑C Object Memory Layout and Runtime Structures
Ctrip Technology
Ctrip Technology
Aug 15, 2018 · Mobile Development

Integrating Apple Pay in iOS Apps: Process, Security, and Practical Considerations

This article provides a comprehensive overview of Apple Pay integration on iOS, covering the end‑to‑end payment flow, Apple’s security mechanisms, certificate preparation, differences between domestic and international implementations, and practical tips for developers to avoid common pitfalls.

Apple PayPayment Integrationcertificate
0 likes · 16 min read
Integrating Apple Pay in iOS Apps: Process, Security, and Practical Considerations
Qunar Tech Salon
Qunar Tech Salon
Aug 14, 2018 · Mobile Development

Deep Dive into React Native’s Native Event‑Handling Path: From RCTRootView to the JavaScript Bridge

This article thoroughly analyzes React Native’s native event‑handling pipeline, explaining how RCTRootView creates RCTRootContentView and RCTTouchHandler, detailing the touchesBegan/touchesMoved/touchesEnded implementations, and tracing the flow through _updateAndDispatchTouches, RCTEventDispatcher, and the bridge that finally invokes JavaScript callbacks.

EventHandlingNativeModulesRCTTouchHandler
0 likes · 9 min read
Deep Dive into React Native’s Native Event‑Handling Path: From RCTRootView to the JavaScript Bridge
Xianyu Technology
Xianyu Technology
Aug 1, 2018 · Mobile Development

Automated Continuous Integration Framework for Xianyu iOS Multi‑Bundle Projects

The article describes an automated continuous‑integration framework for Xianyu’s iOS multi‑bundle projects that links Aone requirements to GitLab commits and Mojianlun builds via a SpringBoot/Vue platform, using webhook‑driven packaging, scoped testing, rate‑limited queues and statistics to reduce manual effort and errors.

CIGitLabSpringBoot
0 likes · 14 min read
Automated Continuous Integration Framework for Xianyu iOS Multi‑Bundle Projects
Xianyu Technology
Xianyu Technology
Jul 25, 2018 · Mobile Development

Extracting Flutter Dependencies for Native Projects in a Mixed Development Environment

The article explains how to extract Flutter engine, compiled Dart assets, and custom plugins from a mixed Flutter‑Native project, package them into an AAR (Android) and static libraries (iOS), publish them to an internal Maven repository, and let native code consume these artifacts via CI‑automated versioned dependencies, eliminating the need for a full Flutter SDK.

AARCIDependency Extraction
0 likes · 13 min read
Extracting Flutter Dependencies for Native Projects in a Mixed Development Environment
Tencent Music Tech Team
Tencent Music Tech Team
Jul 13, 2018 · Mobile Development

Analysis and Solutions for a Memory Leak Caused by a Repeating Animation in iOS

The article explains how a repeating iOS animation caused a hidden memory leak by retaining its view controller through a strong CABasicAnimation delegate and a performSelector‑afterDelay timer, and shows how replacing the delegate‑based animation with a CAKeyframeAnimation/CAAnimationGroup and using weak references or cancelling pending selectors eliminates the retain cycle.

CAAnimationObjective‑Canimation
0 likes · 10 min read
Analysis and Solutions for a Memory Leak Caused by a Repeating Animation in iOS
Baidu Intelligent Testing
Baidu Intelligent Testing
Jul 11, 2018 · Mobile Development

iOS Multi‑Device Remote Control: Technical Analysis and Implementation

This article analyzes the shortcomings of existing iOS remote‑control solutions, examines event‑driven and screen‑capture technologies, and presents a practical implementation that combines private APIs, optimized screenshot compression, and socket‑based real‑time streaming to achieve millisecond‑level event response and high‑frame‑rate video for multi‑device iOS control.

event-driveniOSmobile automation
0 likes · 11 min read
iOS Multi‑Device Remote Control: Technical Analysis and Implementation
Xianyu Technology
Xianyu Technology
Jul 7, 2018 · Mobile Development

Integrating Flutter into Large Native Projects: A Practical Refactoring Strategy

Xianyu’s team refactored their large iOS and Android codebases by extracting Flutter binaries, plugins, and assets into a remote repository, enabling native projects to compile, build, and debug independently in both Standalone and Flutter modes while still supporting full Flutter features such as hot‑reload and Dart builds.

Dependency ManagementFlutterhybrid architecture
0 likes · 8 min read
Integrating Flutter into Large Native Projects: A Practical Refactoring Strategy
Qunar Tech Salon
Qunar Tech Salon
Jul 2, 2018 · Mobile Development

Qunar Developers' Takeaways from WWDC 2018: ARKit 2.0, Swift, Core ML, Siri Shortcuts, and watchOS 5

At WWDC 2018 Qunar developers Jiang Zhuo and Zhang Zitian reported on Apple’s new software features—including iOS 12 performance improvements, ARKit 2.0 enhancements, Swift updates, Core ML advances, Siri Shortcuts, and watchOS 5—while discussing their relevance for mobile and AR app development.

ARKitCore MLSiri Shortcuts
0 likes · 10 min read
Qunar Developers' Takeaways from WWDC 2018: ARKit 2.0, Swift, Core ML, Siri Shortcuts, and watchOS 5
Meituan Technology Team
Meituan Technology Team
Jun 28, 2018 · Mobile Development

Multi-End Code Reuse and Componentization in Meituan Waimai iOS

Meituan Waimai iOS achieved an 84 % code‑reuse rate across its standalone app, Meituan channel, and Dianping channel by progressively componentizing business logic into layered CocoaPods, flattening dependencies, using binary pods for fast builds, and employing a robust toolchain and coordination among PM, RD, and QA.

CocoaPodsComponentizationcode reuse
0 likes · 22 min read
Multi-End Code Reuse and Componentization in Meituan Waimai iOS
Ctrip Technology
Ctrip Technology
Jun 26, 2018 · Mobile Development

Efficient Identification and Removal of Unused Code in Large-Scale Mobile Projects

The article discusses the challenges of locating dead or low‑utilization code in rapidly evolving mobile applications and presents a practical framework that combines Xcode code coverage with an automated UI testing platform and a gateway layer to achieve accurate online coverage without invasive instrumentation.

Dead Codeautomated testingcode coverage
0 likes · 6 min read
Efficient Identification and Removal of Unused Code in Large-Scale Mobile Projects
Snowball Engineer Team
Snowball Engineer Team
Jun 22, 2018 · Mobile Development

Converting CocoaPods and Carthage Dependencies to Static Libraries in an iOS Swift Project

This article explains how the Egg Roll Fund iOS project migrated its mixed CocoaPods and Carthage dependencies from dynamic frameworks to static libraries using CocoaPods 1.5’s use_modular_headers! flag, manual bridging‑header adjustments, and a Carthage static‑library script, resulting in faster startup and smaller app size.

CarthageCocoaPodsStatic Libraries
0 likes · 7 min read
Converting CocoaPods and Carthage Dependencies to Static Libraries in an iOS Swift Project
Xianyu Technology
Xianyu Technology
Jun 16, 2018 · Artificial Intelligence

Watermark Detection and Removal on iOS using TensorFlow Lite SSD and OpenCV

The article presents a complete iOS pipeline that trains an SSD‑MobileNet detector with TensorFlow, optimizes and converts it to TensorFlow Lite, runs C++ inference, applies non‑maximum suppression, and finally removes detected watermarks using OpenCV inpainting or pixel‑wise inversion, while discussing practical limitations.

OpenCVSSDTensorFlow Lite
0 likes · 12 min read
Watermark Detection and Removal on iOS using TensorFlow Lite SSD and OpenCV
转转QA
转转QA
Jun 5, 2018 · Operations

Static Code Scanning Workflow and Tool Selection for Mobile Projects

This article outlines the motivation, tool comparison, and detailed step‑by‑step process for implementing static code scanning across Android and iOS codebases, emphasizing the selection of Infer and the integration of scanning results into CI pipelines and issue‑tracking workflows.

AndroidInferStatic Analysis
0 likes · 8 min read
Static Code Scanning Workflow and Tool Selection for Mobile Projects
21CTO
21CTO
May 29, 2018 · Mobile Development

Step‑by‑Step Guide to Obfuscating Objective‑C iOS Apps

This tutorial explains why iOS code obfuscation is needed, how to prepare the required scripts and PCH file, configure Xcode’s build phases, and apply the obfuscation tool to hide method and variable names, while noting its limitations to .m/.h classes.

Objective‑CXcodecode-obfuscation
0 likes · 5 min read
Step‑by‑Step Guide to Obfuscating Objective‑C iOS Apps
ITPUB
ITPUB
May 29, 2018 · Information Security

How Roaming Mantis Malware Hijacks DNS to Infect Android, iOS, and PCs

The Roaming Mantis malware exploits compromised routers to perform DNS hijacking, redirecting Android, iOS, and desktop users to malicious sites that install fake updates, steal credentials, and run CoinHive mining scripts, while spreading across more than twenty languages worldwide.

AndroidDNS hijackingcoin mining
0 likes · 6 min read
How Roaming Mantis Malware Hijacks DNS to Infect Android, iOS, and PCs
JD Tech
JD Tech
May 14, 2018 · Mobile Development

Exploring iOS Automated Visual Event Tracking (埋点) – Technical Overview

This article examines the challenges and solutions of implementing automated visual event tracking (埋点) in iOS applications, covering background, existing methods, the proposed visual tracking architecture, unique identifier generation, data payload handling, version management, and future considerations for improving development efficiency.

SDKautomationevent tracking
0 likes · 19 min read
Exploring iOS Automated Visual Event Tracking (埋点) – Technical Overview
JD Retail Technology
JD Retail Technology
May 11, 2018 · Mobile Development

Exploring Automated Visual Event Tracking (埋点) for iOS Applications

This article examines the challenges of traditional code‑based event tracking in iOS, compares code, visual, and no‑tracking approaches, and presents a visual‑tracking solution that uses AOP, unique identifiers, data‑carrying protocols, and version management to improve automation and maintainability.

AOPautomationevent tracking
0 likes · 18 min read
Exploring Automated Visual Event Tracking (埋点) for iOS Applications
Xianyu Technology
Xianyu Technology
Apr 18, 2018 · Mobile Development

Mastering iOS VoIP: Implement CallKit & PushKit with Real‑World Tips

This guide walks through building a complete iOS VoIP solution using CallKit and PushKit, covering UI differences, step‑by‑step configuration of CXProvider and PKPushRegistry, handling incoming calls, common pitfalls such as lock‑screen crashes and token issues, and extending functionality with Call Directory extensions.

CallKitObjective‑CPushKit
0 likes · 12 min read
Mastering iOS VoIP: Implement CallKit & PushKit with Real‑World Tips
Liulishuo Tech Team
Liulishuo Tech Team
Apr 13, 2018 · Fundamentals

Understanding Compiler Synthesis of Equatable and Hashable in Swift 4.1

This article explains how Swift 4.1's compiler can automatically synthesize Equatable and Hashable implementations, the necessary conditions, examples of enums and structs, the limitations of synthesis, and how developers can override or supplement the generated code for better performance and correctness.

EquatableSwiftSynthesis
0 likes · 8 min read
Understanding Compiler Synthesis of Equatable and Hashable in Swift 4.1
Liulishuo Tech Team
Liulishuo Tech Team
Apr 11, 2018 · Mobile Development

Understanding map, flatMap, and compactMap in Swift

This article explains the differences between map, flatMap, and compactMap in Swift, covering the three overloads of flatMap, their behavior with sequences and optionals, the rationale behind renaming one overload to compactMap, and when to prefer optional chaining versus optional mapping.

Functional ProgrammingOptionalSwift
0 likes · 8 min read
Understanding map, flatMap, and compactMap in Swift
Baidu Maps Tech Team
Baidu Maps Tech Team
Apr 11, 2018 · Mobile Development

How Baidu Maps Solved Massive App Performance Bottlenecks with the Nirvana Framework

Baidu Maps confronts severe performance bottlenecks as its client app scales, analyzing main‑thread overload, third‑party SDK interference, and unstable network latency, and introduces the Nirvana framework to provide internal resource scheduling, monitoring, and isolation, achieving 10‑50% speed gains and noticeable user improvements.

AndroidApp OptimizationFramework Design
0 likes · 11 min read
How Baidu Maps Solved Massive App Performance Bottlenecks with the Nirvana Framework
Tongcheng Travel Technology Center
Tongcheng Travel Technology Center
Mar 20, 2018 · Mobile Development

Implementing an AR Hotel Finder with ARKit: Coordinate Systems, Transformations, and Navigation

This article details the design and implementation of an ARKit‑based hotel‑finding application for iOS, covering coordinate system concepts, conversion pipelines, elevation handling, directional hints, radar visualization, navigation routing, map/AR switching, and real‑time navigation alerts, accompanied by sample Objective‑C code.

ARARKitNavigation
0 likes · 14 min read
Implementing an AR Hotel Finder with ARKit: Coordinate Systems, Transformations, and Navigation
21CTO
21CTO
Mar 15, 2018 · Mobile Development

What iOS Development Trends Will Shape 2018 and Beyond?

The article outlines emerging iOS development trends for 2018, including ARKit-powered augmented reality, CoreML machine‑learning integration, Swift 4 enhancements, Apple Pay adoption, and HomeKit home‑automation, while reflecting on 2017's device releases and iOS 11 updates.

ARKitApple PayCoreML
0 likes · 5 min read
What iOS Development Trends Will Shape 2018 and Beyond?
Baidu Intelligent Testing
Baidu Intelligent Testing
Mar 2, 2018 · Mobile Development

Automated Performance Testing Solutions for Android and iOS Apps

The article outlines comprehensive automated performance testing approaches for Android and iOS applications, covering challenges of data accuracy, reliability and volume, and describing configurable UI automation, remote device management, data collection, and reporting mechanisms to enable scalable, low‑effort mobile testing.

AndroidData CollectionPerformance Automation
0 likes · 13 min read
Automated Performance Testing Solutions for Android and iOS Apps
WeChat Client Technology Team
WeChat Client Technology Team
Mar 2, 2018 · Mobile Development

How We Built a Low‑Overhead iOS Memory Monitor to Tame FOOM

This article details the design and evolution of WeChat's iOS memory‑monitoring system that detects Foreground Out‑of‑Memory (FOOM) events, covering detection methods, data collection, storage optimizations, reporting strategies, false‑positive reduction, and the measurable impact on app stability.

FOOMiOSmemory monitoring
0 likes · 18 min read
How We Built a Low‑Overhead iOS Memory Monitor to Tame FOOM
Meituan Technology Team
Meituan Technology Team
Feb 8, 2018 · Mobile Development

Logan: A High‑Performance Mobile Logging Library for Meituan‑Dianping

Logan is Meituan‑Dianping’s native C‑based mobile logging library that uses MMAP caching, streaming compression and encryption, and a unified protocol to eliminate Java‑heap GC pauses, prevent log loss, secure data, and provide efficient retrieval and proactive reporting across dozens of apps.

AndroidLog ManagementNative C Library
0 likes · 15 min read
Logan: A High‑Performance Mobile Logging Library for Meituan‑Dianping
Baidu Intelligent Testing
Baidu Intelligent Testing
Jan 26, 2018 · Mobile Development

iOS Diagnostics Battery Testing and Optimization Guide

This article explains how to obtain iOS diagnostics battery data on iOS 10+ and iOS 9 devices, interpret the SQLite tables to measure app power consumption, and provides practical code and performance‑optimization tips for reducing energy usage in iOS applications.

Battery TestingdiagnosticsiOS
0 likes · 9 min read
iOS Diagnostics Battery Testing and Optimization Guide
Tencent TDS Service
Tencent TDS Service
Jan 25, 2018 · Mobile Development

How OOMDetector Solves iOS Out‑of‑Memory Crashes and Memory Leaks

This article introduces Tencent's OOMDetector, an iOS memory‑monitoring component that records allocation stacks, detects leaks, and uses optimized hooking, stack compression, and mmap‑based dumping to provide low‑overhead, on‑device analysis of out‑of‑memory crashes and memory‑leak issues.

Memory Leak DetectionOOM detectioniOS
0 likes · 11 min read
How OOMDetector Solves iOS Out‑of‑Memory Crashes and Memory Leaks
Dada Group Technology
Dada Group Technology
Jan 15, 2018 · Frontend Development

Frontend Interface Integration Testing Tool for JD.com

This article describes the design, implementation, and practical benefits of a frontend‑focused interface testing tool used at JD.com to simulate public parameters, copy request parameters, and automatically compare actual and expected JSON responses, thereby reducing API confirmation cycles and improving testing efficiency.

API testingIntegrationautomation
0 likes · 11 min read
Frontend Interface Integration Testing Tool for JD.com
Tencent TDS Service
Tencent TDS Service
Jan 4, 2018 · Fundamentals

Exploring QUIC on iOS: Basics, Implementation, and Performance

This article introduces the QUIC transport protocol, explains its design goals and key features, details a practical iOS implementation using Chromium and Stellite libraries, presents code examples, and compares QUIC’s download latency against HTTP/2 on Wi‑Fi and 4G networks.

ChromiumQUICStellite
0 likes · 19 min read
Exploring QUIC on iOS: Basics, Implementation, and Performance
iQIYI Technical Product Team
iQIYI Technical Product Team
Dec 22, 2017 · Product Management

Apple App Store Review Guidelines, Common Rejection Cases, and Lessons Learned

The article outlines Apple’s App Store Review Guidelines across safety, performance, business, design, and legal categories, highlights frequent iPhone client rejections such as metadata errors, preview video ads, IAP icon duplication, and missing UGC reporting, and proposes training, risk reporting, and a knowledge base to prevent future violations.

App StoreAppleReview Guidelines
0 likes · 13 min read
Apple App Store Review Guidelines, Common Rejection Cases, and Lessons Learned
Meituan Technology Team
Meituan Technology Team
Dec 21, 2017 · Mobile Development

Shield: A Modular UI Framework for Android and iOS

Shield is Meituan‑Dianping’s open‑source modular UI framework for Android and iOS that splits pages into independent, lifecycle‑managed modules (Agents) defined by a remote configuration, enabling dynamic layout changes, cross‑platform consistency, decoupled communication via a RxJava‑based WhiteBoard, and easier maintenance and testing.

AndroidModular UIShield Framework
0 likes · 10 min read
Shield: A Modular UI Framework for Android and iOS
Architecture Digest
Architecture Digest
Dec 13, 2017 · Mobile Development

Practical Code Refactoring Lessons from a Mobile Development Leader

The author, a mobile development team leader, shares a detailed account of a recent iOS codebase refactoring, describing the removal of unused libraries and code, architectural improvements, memory‑leak fixes, and best‑practice guidelines such as avoiding singletons, unnecessary layers, and over‑reliance on third‑party frameworks.

Refactoringarchitecturecode cleanup
0 likes · 11 min read
Practical Code Refactoring Lessons from a Mobile Development Leader
iQIYI Technical Product Team
iQIYI Technical Product Team
Dec 1, 2017 · Mobile Development

Controlling __TEXT Segment Size in iOS Apps: Practices, Tools, and Metrics

The article explains how iOS engineers keep the __TEXT segment under Apple’s strict size limits by removing unused code, using Link Map analysis, applying a custom SizeLine metric, and adopting coding practices such as limiting blocks, macros, and hard‑coded strings, all supported by automated monitoring and feedback.

Binary SizeLink Mapcode optimization
0 likes · 11 min read
Controlling __TEXT Segment Size in iOS Apps: Practices, Tools, and Metrics
JD Retail Technology
JD Retail Technology
Nov 29, 2017 · Operations

iOS Thread Synchronization Mechanisms and Lock Implementations

This article explains various iOS thread synchronization tools—including NSLock, NSRecursiveLock, NSConditionLock, NSCondition, @synchronized, dispatch_semaphore, pthread_mutex, and the deprecated OSSpinLock—detailing their internal implementations, usage patterns, code examples, and performance considerations for developers seeking safe concurrent programming on Apple platforms.

LocksNSLockThread Synchronization
0 likes · 22 min read
iOS Thread Synchronization Mechanisms and Lock Implementations
JD Retail Technology
JD Retail Technology
Nov 14, 2017 · Mobile Development

Understanding Drag & Drop in iOS: Concepts, APIs, and Implementation

This article explains the iOS Drag & Drop interaction model, covering its core concepts, system integration, multi‑touch features, and step‑by‑step implementation using UIKit APIs such as UIDragInteraction, UIDropInteraction, and NSItemProvider with Swift code examples.

Drag-and-DropSwiftUIDragInteraction
0 likes · 12 min read
Understanding Drag & Drop in iOS: Concepts, APIs, and Implementation
Tencent TDS Service
Tencent TDS Service
Nov 2, 2017 · Mobile Development

Advanced iOS Auto Layout: Runtime Changes, Gestures, Dynamic Type & Safe Area

This article walks iOS developers through six advanced Auto Layout techniques—including runtime constraint changes, touch‑tracking gestures, Dynamic Type support, Safe Area usage, proportional positioning with spacer views, and adaptive Stack View layouts—providing code samples, Interface Builder tips, and practical examples.

Auto LayoutInterface BuilderSwift
0 likes · 21 min read
Advanced iOS Auto Layout: Runtime Changes, Gestures, Dynamic Type & Safe Area
iQIYI Technical Product Team
iQIYI Technical Product Team
Oct 27, 2017 · Mobile Development

Componentization Architecture and Engine Design for iOS Applications at iQIYI

iQIYI’s iOS team replaced a mediator‑based component system with a registration‑driven engine, allowing independent development, hot‑plug module addition, server‑controlled launches, and full Open‑Closed compliance, while integrating CocoaPods, GitLab, and Jenkins for automated binary delivery and scalable modular architecture.

CI/CDComponentizationEngine Architecture
0 likes · 13 min read
Componentization Architecture and Engine Design for iOS Applications at iQIYI
21CTO
21CTO
Oct 1, 2017 · Fundamentals

Why Did Apple Open‑Source Its XNU Kernel? Insights and Implications

Apple surprised developers by publishing the XNU kernel source for macOS and iOS on GitHub, explaining the kernel’s origins, licensing under APSL 2.0, and how this move may help developers understand system internals while aiming to attract more contributors.

AppleXNUiOS
0 likes · 4 min read
Why Did Apple Open‑Source Its XNU Kernel? Insights and Implications
Alibaba Cloud Developer
Alibaba Cloud Developer
Sep 20, 2017 · Mobile Development

Why a Single Warning Can Cause Xcode to Eat 6GB RAM – A Real‑World iOS Debugging Tale

An iOS team discovered that Xcode’s memory usage jumped from 2 GB to nearly 7 GB after a codebase upgrade, traced the surge to hundreds of nonnull warnings embedded in header files that inflated .dia cache files, and resolved the issue by removing the warnings, highlighting the hidden cost of ignored compiler warnings.

Memory usageXcodecache files
0 likes · 8 min read
Why a Single Warning Can Cause Xcode to Eat 6GB RAM – A Real‑World iOS Debugging Tale
Baidu Intelligent Testing
Baidu Intelligent Testing
Sep 18, 2017 · Mobile Development

Design Guidelines and 13 Essential Changes for iPhone X UI

This article provides comprehensive iPhone X UI design guidelines, covering screen dimensions, safe‑area layout, status‑bar adjustments, home‑indicator considerations, color gamut updates, Face ID integration, custom keyboard rules, larger navigation bars, and resources for designers and developers.

Design GuidelinesUI designiOS
0 likes · 10 min read
Design Guidelines and 13 Essential Changes for iPhone X UI
Baidu Intelligent Testing
Baidu Intelligent Testing
Sep 5, 2017 · Mobile Development

Compatibility Test Suite (CTS): Boosting Efficiency of iOS Mobile Compatibility Testing

The Compatibility Test Suite (CTS) introduces a "one‑device operation, multi‑device linkage" approach that captures gestures on a source iPhone, maps them to other devices via element trees and image‑recognition techniques, and automates batch installation to dramatically reduce the time and effort of iOS compatibility testing.

CTSautomationcompatibility
0 likes · 9 min read
Compatibility Test Suite (CTS): Boosting Efficiency of iOS Mobile Compatibility Testing
JD Retail Technology
JD Retail Technology
Aug 25, 2017 · Mobile Development

Modular Development and Management of JD iOS Application

This article outlines JD's iOS modular development strategy, covering background, goals, code decoupling, custom routing protocols, AppDelegate hooking, Cocoapods management, the iBiu system, configuration tables, automation scripts, CI integration, and practical deployment steps.

AppDelegateCocoaPodsJDRouter
0 likes · 14 min read
Modular Development and Management of JD iOS Application
21CTO
21CTO
Aug 16, 2017 · R&D Management

From Code to Leadership: How Tech Professionals Can Become Effective Managers

Tech lead Tang Qiao shares his journey from iOS developer to product‑tech manager, explaining why engineers should consider management, debunking common misconceptions, and offering practical advice on time management, communication, mentorship, and upward management to help technical professionals transition into effective leadership roles.

Leadershipcareer-developmentiOS
0 likes · 31 min read
From Code to Leadership: How Tech Professionals Can Become Effective Managers
WeChat Client Technology Team
WeChat Client Technology Team
Aug 16, 2017 · Backend Development

Why Switch from FMDB to WCDB? Performance, Migration & Feature Guide

This article compares FMDB and WCDB, detailing smooth migration steps, benchmark results showing WCDB's superior write and multithreaded performance, reduced code complexity, built‑in encryption, statistics and repair tools, and provides practical guidance for developers considering a database switch.

Database MigrationFMDBSQLite
0 likes · 10 min read
Why Switch from FMDB to WCDB? Performance, Migration & Feature Guide
BiCaiJia Technology Team
BiCaiJia Technology Team
Aug 13, 2017 · Mobile Development

Fix IPv6 App Store Rejection and Architecture Errors for iOS Apps

This guide explains why an iOS app may be rejected for IPv6 incompatibility, how to set up a local IPv6 test environment with two iPhones and a Mac, troubleshoot network bugs, update the Reachability library, and strip unsupported architectures from frameworks to resolve App Store upload errors.

App StoreIPv6Reachability
0 likes · 6 min read
Fix IPv6 App Store Rejection and Architecture Errors for iOS Apps
JD Retail Technology
JD Retail Technology
Aug 11, 2017 · Mobile Development

iOS Mocker: A Server‑Side Mock Service for Mobile Development at JD

The article introduces JD’s iOS Mocker, a server‑side mock service that decouples client development from backend progress, provides comprehensive mock data for all shopping‑flow interfaces, improves testing efficiency, ensures UI robustness, and outlines its architecture, usage workflow, and future extensions.

APIClient‑ServerMocking
0 likes · 7 min read
iOS Mocker: A Server‑Side Mock Service for Mobile Development at JD
Baidu Intelligent Testing
Baidu Intelligent Testing
Aug 10, 2017 · Mobile Development

iOS Crash Log Symbolication: Three Methods and dSYM File Analysis

This article explains why iOS crash logs are unreadable without symbolication, introduces three symbolication approaches—Xcode's symbolicatecrash, the atos/atosl tools, and dSYM‑based parsing—details the dSYM file structure, Mach‑O headers, load commands, data segments, and how to extract and demangle symbols for effective crash debugging.

CrashMach-Oatosl
0 likes · 10 min read
iOS Crash Log Symbolication: Three Methods and dSYM File Analysis