After learning from http://www.iosre.com/t/7-2-0-ios/770 and http://bbs.iosre.com/t/ptrace/371 two articles, I tried it out.
Found that Amap (Gaode Map) version 7.5.4 no longer has a sub function, but directly adds ptrace dynamic loading in start. As shown below:
...
Preface
Around August 5th, I suddenly made the decision to come to Beijing to work. When I asked a Beijing classmate about the situation, his company happened to need people. I came for an interview on the 7th, and reported for work early on the 13th. I have some connection with iOS development. From mid-March to early May, I did less than 2 months of iOS development at a small company in Jinan (originally interviewed for Android, but iOS was more urgently needed after joining. I thought since I just switched, I could do it, so I started doing iOS. Later, my Beijing classmate’s company also wanted to do Android initially (with the idea of learning Android source code later, I was particularly fond of Android then), but they also needed iOS, so it was decided).
(Now thinking about it, switching to iOS development also had something to do with my confusion. Mobile development, penetration testing, machine learning—three directions I had invested considerable time in, couldn’t decide, so I just went with whichever job I found. (Perhaps the interviewer could see if I was suitable for that direction. Now thinking about it, I was really irresponsible about my future. Later thinking, I can only say I was lucky or this direction really suited me)).
...
Background
A live streaming chat room where many viewers can send many messages, and sending props also generates many prop messages. Assume a scenario with many messages: 5 messages per second.
Messages are implemented using NSAttributedString, messages contain images and text of different sizes.
After messages arrive, automatically scroll to the last message.
Global message list (stores the most recent 500 messages, when reaching 500, directly delete the earliest 300)
...
Background
Seeing so many good things on CocoaPods, as a beginner in iOS development, I wanted to familiarize myself with this process.
I thought about a simple Tab page I recently developed, tried to improve it, make it more general, and put it on CocoaPods.
Final Result
Usage and code: https://github.com/everettjf/Yolo/tree/master/EVTTabPageScrollView
...
Introduction
After an app goes live, if it crashes, can you only stare blankly? It’s impossible to get users’ phones to import crash logs through Organizer, so you need to automatically collect crash logs when the program crashes and upload them to the server when the program starts again.
Crash logs need to be associated with code from a specific revision (if using svn). (Generally using continuous integration Jenkins, you can indirectly associate with code through Jenkins’s BuildNumber).
Corresponding version’s dSYM symbol file. (Can be configured to generate during linking)
...
Introduction
Continuous integration is a “configure once, benefit long-term” task. But many small companies don’t have it. Previously, configuring it for Windows development felt simpler. This time configuring it for iOS, I felt there were quite a few steps. I’ve organized it here to share with everyone. Please correct any mistakes.
This article mainly uses fastlane to configure iOS continuous integration, automatically compiling and packaging multiple versions.
I recently switched to iOS development, and the primary task was to use Jenkins (a sibling of Hudson) to configure continuous integration for iOS projects.
After searching various resources, I organized the following keywords.
...
Notes from “Redis Getting Started Guide.”
Note: Which type to use depends on the specific situation. The following is just one approach.
Data Types
string
String type (simplest key-value)
SET bar 1
GET bar
...
I’ve been doing C++ development on Windows for 5 years. As I’m about to switch to Android development, I’m organizing the tools I’ve used.
Star indicates the tool is frequently used.
...