Advanced iOS Development

Source: Internet
Author: User
Tags gcd using git

"iOS Development Advanced"
Basic information
Tang Qiao
Publishing house: Electronic Industry publishing house
isbn:9787121247453
Last Date: 2014-12-26
Publication date: January 2015
Folio: 16 Open
Page: 268
Edition: 1-1


Content Introduction
Computer Books
"iOS Development advanced" sub-tools, practice, theory three parts. The first part introduces common tools for iOS development, the second part introduces some common practical experiences in iOS development, and the third part describes the principles involved in iOS development.
If the process of becoming an iOS developer is likened to the cultivation process in a martial arts novel, the Learning of tools, practice and theory corresponds to the cultivation of weapons, moves and internal organs. "iOS Development advanced" hope that through these three aspects of the comprehensive explanation, the overall improvement of the developer's skill level.
Directory
"iOS Development Advanced"
Recommended Order III
Chapter 1th Introduction 1
1.1 Why should I write a book 1
1.1.1 My idea. 1
1.1.2 Content Guide 1
1.1.3 Target Readers 2
1.1.4 Sample Code and Errata 2
1.1.5 Acknowledgements 2
1.2 How to improve iOS development skills 3
1.2.1 Read the blog 3
1.2.2 Reading 3
1.2.3 Watch WWDC video 4
1.2.4 look at Apple's Official document 4
1.2.5 See code for open source projects 4
1.2.6 write more code, think more 4
1.2.7 + Peer Exchange 5
1.2.8 Share 5
I part I: IOS Development tools
The 2nd Chapter uses Cocoapods to do the dependency management 9
2.1 CocoaPods Introduction 9
Installation and use of 2.2 CocoaPods 10
2.2.1 Installation of CocoaPods 10
2.2.2 Using a mirrored index of Cocoapods 10
2.2.3 using Cocoapods 11
2.2.4 Finding third-party libraries 11
2.3 Precautions 12
2.3.1 about. Gitignore 12
2.3.2 Create a Podspec file for your project 12
2.3.3 using a private pods 12
2.3.4 Not update Podspec 12
2.3.5 Help for generating third-party libraries 13
2.3.6 Principle 13
3rd Chapter Network Packet analysis tools Charles 15
3.1 Charles Introduction 15
Installation and use of 3.2 Charles 16
3.2.1 Installation Charles 16
3.2.2 Installing the SSL certificate 16
3.2.3 set Charles as a system Agent 17
3.2.4 Charles Main Interface Introduction 18
3.2.5 Filtering Network Requests 18
3.3 Using Charles to assist iOS development 19
3.3.1 Intercept network packets on iphone 19
3.3.2 Analog Slow network 21
3.4 Advanced Features 22
3.4.1 Intercepting SSL Information 22
3.4.2 Modifying network request content 23
3.4.3 Modifying the server return content 25
3.5 Map Function 25
3.6 Rewrite Function 27
3.7 Breakpoints Function 29
3.8 Summary 30
3.9 Reference Links 30
4th Chapter Interface Debugging tool reveal 31
4.1 Reveal Introduction 31
Use of 4.2 Reveal 32
4.2.1 Debugging with reveal connection Simulator 32
4.2.2 Connecting the real machine with reveal 34
4.2.3 Debugging other application interfaces with reveal 34
4.2.4 Summary 35
4.2.5 Reference 36
5th Mobile Statistics Tool Flurry 37
5.1 Flurry Introduction 37
Basic use of 5.2 Flurry 38
5.2.1 registering and downloading the corresponding SDK 38
5.2.2 Integration SDK 40
5.2.3 Custom Statistic Entries 42
5.2.4 View Statistical Results 43
5.2.5 Statistics Crashlog 44
5.3 Comparison and summary 45
Comparison of 5.3.1 and other statistical analysis platforms 45
5.3.2 Summary 45
6th Chapter Crash Logging Tool Crashlytics 47
6.1 Crashlytics Introduction 47
Use of 6.2 Crashlytics 49
6.3 Realization principle and use experience 52
7th App Store stats app Annie 55
7.1 App Annie Introduction 55
7.2 App Annie's use 56
7.3 App Annie Account registration and Configuration 59
7.4 vs. other tools 60
7.4.1 Official command-line tool 60
7.4.2 Other similar services 61
7.4.3 function Comparison 61
8th Xcode Plugin 63
8.1 Xcode Plug-in management tool Alcatraz 63
8.1.1 Introduction 63
8.1.2 Installation and Removal 64
8.1.3 Use 64
8.1.4 plug-in Path 66
8.2 Plug-in mechanism for Xcode 66
8.3 Common Xcode Plugins 66
8.3.1 Ksimagenamed 66
8.3.2 Xvim 67
8.3.3 Fuzzyautocompleteplugin 67
8.3.4 Xtodo 67
8.3.5 Bbudebuggertuckaway 68
8.3.6 Scxcodeswitchexpander 68
8.3.7 Deriveddata-exterminator 68
8.3.8 Vvdocumenter 69
8.3.9 Clangformat 69
8.3.10 Colorsense 69
8.3.11 Xcodeboost 70
9th Other Tools Introduction 71
9.1 Color Extraction Tool: Digital color measurement meter (DigitalColor Meter) 71
9.1.1 Preface 71
9.1.2 Usage Introduction 71
9.1.3 Other similar tools: Xscope 72
9.2 Other graphical Tools 73
9.2.1 Imageoptim 73
9.2.2 Mark Eel 74
9.2.3 Dash 74
9.2.4 Dandelion 75
9.3 Command-line tools 75
9.3.1 Nomad 75
9.3.2 Xctool 76
9.3.3 Appledoc 76
II Part Two: IOS Development practices
Chapter 10th Understanding Memory Management 81
10.1 Reference Count 81
10.1.1 What is a reference count, what is the principle of 81
10.1.2 Why do we need reference counting 83
10.1.3 do not send messages to objects that have already been disposed 85
10.1.4 Circular Reference (reference cycles) question 85
10.1.5 using Xcode to detect circular references 88
10.2 Using ARC 90
10.2.1 Automatic Reference Count 90
Memory management for 10.2.2 Core Foundation objects 92
11th Chapter Master GCD 95
11.1 GCD Introduction 95
11.2 Using GCD 97
Definition of 11.2.1 block 97
Dispatch method provided by the 11.2.2 System 98
11.2.3 modifying variables outside the Block 99
11.2.4 Background Run 99
11.2.5 Summary 100
The 12th chapter uses UIWindow 101
12.1 UIWindow Introduction 101
12.2 increased UIView 102 for UIWindow
12.3 System use of the UIWindow 102
12.3.1 Windowlevel 104
12.3.2 Manually created UIWindow 105
12.3.3 Don't abuse UIWindow 108
12.3.4 Reference 109
The 13th Chapter Dynamic Download System offers a variety of Chinese fonts 111
13.1 Feature Introduction 111
13.1.1 Preface 111
13.1.2 Function Introduction 112
13.1.3 Font List 112
13.2 Using Tutorial 113
13.2.1 Related API Introduction 113
13.2.2 Summary 115
14th use in-app payment 117
14.1 Background Settings 117
14.2 IOS-Dev 119
14.3 Service-Side development 121
14.4 Precautions 122
15th. Hybrid programming based on UIWebView 123
15.1 Introduction to Hybrid programming 123
15.2 rendering the HTML interface using the template engine 124
15.3 Objective-c language and JavaScript languages call each other 126
15.4 How to pass parameters 129
15.5 Synchronous and asynchronous 129
15.6 Precautions 130
15.6.1 Thread blocking issue 130
15.6.2 Main thread Problem 130
15.6.3 Keyboard Control 130
15.6.4 CommonJS Specification 130
15.7 Using Safari for debugging 131
16th. Security 135
16.1 Preface 135
16.2 Network Security 135
16.2.1 securely transmits user passwords 135
16.2.2 prevent communication protocols from being easily cracked 137
16.2.3 verifying vouchers for in-app payments 138
16.3 Local file and data security 138
16.3.1 Security of Program Files 138
16.3.2 Local Data Security 140
16.4 Source code Security 140
16.5 Summary 142
17th. Coretext-based typesetting engine 143
17.1 Coretext Introduction 143
17.2 base typesetting engine based on Coretext 145
The 18th Chapter Combat Skill 181
18.1 App Store and Review 181
18.1.1 revoking an application under review 181
18.1.2 Application for expedited review 181
18.1.3 application in the market name 182
18.1.4 limit of number of test devices 182
18.1.5 How to apply the next rack 183
18.1.6 How to report other application infringement 183
18.1.7 iTunes Connect Background Operation Error 184
18.1.8 Metadata Reject 184
18.2 Development Tips 184
18.2.1 UILabel content Blur 184
18.2.2 Close the keyboard 184
18.2.3 nsjsonserialization better than Nskeyedarchiver 185
18.2.4 Setting the System control language within an app 185
18.2.5 Why Viewdidunload was abandoned 188
18.2. More than 6 people cooperate cautiously with storyboard 189
18.2.7 avoid misuse of block 190
18.2.8 Merge Project files conflict 192
18.2.9 ignoring compilation warnings 193
18.3 Xcode Usage Tips 193
18.3.1 Xcode shortcut key 193
18.3.2 Find Tips 195
18.3.3 JavaScript File Settings Adjustment 195
18.3.4 Clear Deriveddata 196
18.3.5 Target Information Exception 197
18.3.6 Download Xcode 197
18.4 Debugging Tips 197
18.4.1 Simulator shortcut key 197
18.4.2 Override Installation Precautions 197
18.4.3 add image to simulator album 198
18.4.4 obtaining program data from the simulator 198
18.4.5 installing an older version of the simulator 199
18.4.6 Analog Slow Network 199
18.4.7 exception Breakpoint and symbol breakpoint 199
18.5 IPA file Format 199
18.5.1 viewing the contents of the IPA 199
18.5.2 viewing the pictures in the IPA 200
18.6 Add daily Build 201 for the project
18.6.1 Preface 201
18.6.2 Step 201
18.6.3 encountered problems 206
18.6.4 Summary 206
18.7 using scripts to improve development efficiency 206
18.7.1 Removing unused picture Resources 206
18.7.2 automatic generation of small size images with scripts 207
18.7.3 Checking the picture 208
18.8 Managing code Snippets 209
18.8.1 Code Snippet Introduction 209
18.8.2 Define your own code snippet 210
18.8.3 using git to manage Code Snippets 211
18.8.4 other code Snippets management tools 211
III Part Three: IOS Development underlying principles
19th Chapter Objective-c Object Model 215
19.1 Introduction 215
19.2 Isa Pointer 215
member variables for class 19.3 217
19.4 application of the object Model 220
19.4.1 dynamically creating Objects 220
19.4.2 system-related APIs and Applications 222
19.4.3 Reference 226
20th Chapter Tagged Pointer object 227
20.1 Problems with legacy systems 227
20.2 Tagged Pointer Introduction 228
20.2.1 Tagged Pointer 228
20.2.2 features 230
20.3 considerations and Implementation Details 231
20.3.1 Isa Pointer 231
Isa pointer optimization under 20.3.2 64-bit 231
20.3.3 the bit bit meaning of ISA 232
20.3.4 Summary 233
20.3.5 Reference 233
Chapter 21st Block Object Model 235
21.1 Block's internal data structure definition 235
21.2 using Clang to analyze block implementations 237
21.2.1 implementation of block of Nsconcretemallocblock type 242
Replication of 21.2.2 variables 243
21.3 Precautions 243
21.3.1 Avoid circular references 243
21.3.2 ARC effect on block type 244

Advanced iOS Development

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.