自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

马甲包开发审核交流群:869685378

欢迎各位大牛来吹水

  • 博客(184)
  • 收藏
  • 关注

原创 ios(马甲包)游戏过审1.0账号被调查解决方案

ios 账号1.0被调查的开始时间和内容从2019年4月份开始大量开发者收到ios开发者账号1.0被调查的邮件反馈。其实1.0就是之前的4.3的变种,不过1.0变的被4.3更为严重。因为对苹果来说给出4.3的时候开发者还会通过申诉等方式与其交涉,给出1.0就变相的让开发者死心,开发者提出申诉苹果也可以不予理睬,这样既节省了审核人力也节省了很多不必要的时间。下面是被1.0的反...

2019-08-12 14:52:35 5443 1

转载 今天分享的题目是“iOS APP(马甲包)接口安全分析”。

从时间线来说,从原生到WEB再到混合开发模式,但是从逻辑角度来说,混合开发模式放在中间是更合适的。原生开发模式很好理解,我们用官方提供的语言,调用Framework的接口实现我们APP的功能。在webAPP里完全依赖于webview这个组件使用纯前端技术,我们APP的功能和逻辑主要由js实现

2019-07-28 20:19:49 1451

转载 联想 ThinkPad P 系列笔记本预装 Ubuntu 系统A

戴尔可能是目前最知名的 Linux 笔记本电脑供应商,而现在这个市场将迎来另一位同样强大的对手—— 联想正在寻求预装 Linux 系统的机器的市场。据了解,联想本月晚些时候在美国上市时的 ThinkPad P 系列笔记本电脑都可以选择预装 Ubuntu 18.04 LTS 系统。虽然在关于 ThinkPad P 系列笔记本电脑的新闻稿中,联想没有提到预装 Linux 系统的消息,...

2019-06-23 10:52:39 882

原创 【WWDC2019 Session】Xcode 11新特性

写在前面Apple WWDC 2019 正如火如荼的进行着。按照WWDC计划,美国时间从Tuesday到Friday都会有各种Session分享(实在干货)。所有Session相关的Video、PPT都将陆续在 WWDC2019官网 放出。撸主会根据Session Topic与实际工作的相关性并结合实际操作,陆续将Session内容第一时间分享给大家。进入正题,本文分享的是Xcode ...

2019-06-18 12:47:52 1117

转载 iOS13 新特性简介

目录一、Dark Mode 暗黑模式 二、Status Bar更新 三、UIActivityIndicatorView加载视图 四、总结一、Dark Mode 暗黑模式1.1 iOS13推出了Dark ModeDark Mode1.2 UIColor拥有了动态属性iOS13之前只能表示一种颜色iOS13以后能够表示两种模式下的不同颜色1.3 图片也能...

2019-06-16 19:54:33 1595

转载 iOS13 暗黑模式(Dark Mode)适配之OC版

目录一、适配Dark Mode 颜色适配 图片适配 二、获取当前模式(Light or Dark) 三、其他内容 四、总结 招ios app马甲包套壳上架技术(个人、团队)H5接口、极光推送、关键词、介绍图、标题。能做的私聊Q;51286559 iOS马甲包开发审核交流Q群:370868450首先看看我们的效果图:适配效果图一、适配Dark Mode...

2019-06-16 19:52:55 8223 2

原创 高仿漫画类项目-Swift5版本

项目使用了常见的框架SnapKit、Kingfisher、Moya、HandyJSON、SwiftyJSON、MJRefresh、IQKeyboardManagerSwift、MBProgressHUD、IQKeyboardManagerSwift、HMSegmentedControl等框架,页面布局,逻辑处理

2019-06-13 18:31:08 719

原创 iOS(马甲包)开发如何避免安全隐患

现在很多iOS的APP没有做任何的安全防范措施,导致存在很多安全隐患和事故,今天我们来聊聊iOS开发人员平时怎么做才更安全。一、网络方面用抓包工具可以抓取手机通信接口的数据。以Charles为例,用Charles可以获取http的所有明文数据,配置好它的证书后就可以模拟中间人攻击,获取https加密前的明文数据。1.1 中间人攻击先简要地说下什么是中间人攻击:①客户端:“我是客...

2019-06-13 18:11:41 1332 1

原创 简单易懂iOS面试篇

引言目前经济增速的放缓,到处都在鼓吹互联网发展进入下半场。今年跳槽季的遭遇想必大家也是感受到了一丝寒意。笔者有一个朋友在阿里工作,今年3月底开始请他帮忙内推,也许是阿里的大前端战略,也许真的是互联网的寒意。对于一个三年的iOSer上海这边一直没有合适的岗位可推,即便是有也是招P7级别,统统被拒的命运。我也是放弃了希望,开始找其它渠道推销自己,不过最终还是找到了心仪的工作,现在终于可以做一下总结...

2019-06-11 11:10:54 382

原创 iOS13-适配夜间模式/深色外观(Dark Mode)

今天的 WWDC 19 上发布了 iOS 13,我们来看下如何适配 DarkMode。首先我们来看下效果图效果图.gifDarkMode 主要从两个方面去适配,颜色和图片颜色适配iOS 13 下UIColor增加了一个初始化方法,我们可以用这个初始化方法完成 DarkMode 的适配@available(iOS13.0,...

2019-06-08 11:10:46 3809

原创 iOS多线程开发:几个容易被忽略的细节(马甲包)

一般情况下,iOS开发者只要会使用GCD、@synchronized、NSLock等几个简单的API,就可以应对大部分多线程开发了,不过这样是否真正做到了多线程安全,又是否真正充分利用了多线程的效率优势呢?看看以下几个容易被忽略的细节。读者写者问题(Readers-writers problem)先看下读者写者问题的描述:有读者和写者两组并发线程,共享同一数据,当两个或以上的读线程同时...

2019-06-07 13:08:47 396

原创 WWDC19 苹果宣布全新 UI 框架 SwiftUI

2019 年 WWDC 大会上,苹果在压轴环节向大众宣布了基于 Swift 语言构建的全新 UI 框架 ——SwiftUI。开发者可通过它快速为所有的 Apple 平台创建美观、动态的应用程序。在介绍过程中,苹果公司软件工程高级副总裁 Craig Federighi 演示了如何将一百行代码简化为大约十几行。据官方介绍,SwiftUI 是一个创新且非常方便使用的框架,开...

2019-06-06 21:57:06 1859

原创 VMware 开源混沌工程编排工具 MangleA

混沌工程(Chaos Engineering)最近也变得有点热闹,前阵子阿里才刚开源了混沌工程工具 ChaosBlade,近日VMware 也开源了一款混沌工程编排工具 Mangle。混沌工程是指在系统中引入故障进行实验,以了解整个系统的是如何反应的,帮助提系统的可恢复性和对故障的容错性。Mangle 是一个混沌工程工具,它是一个 Spring Boot 应用,实现了在受支持的端点上调用...

2019-06-02 13:50:42 283

原创 Android 开发者应该从 Java 转到 Kotlin 吗?

今年 I/O 大会上,谷歌宣布正在采取的下一个重大步骤是 Kotlin-first,Android 开发将越来越多地以 Kotlin 为主,许多新的 Jetpack API 和功能将首先在 Kotlin 中提供。并且当天谷歌就开源了 Jetpack Compose 呼应这一战略。消息一出来,“Android 开发以后是不是只能用 Kotlin 了”、“Android 开发者应该从 Java 转...

2019-06-02 13:48:34 227

原创 中国设计师品牌准备好开网店了吗?

经过十数年的发展,中国设计师品牌终于在全球时尚产业有了一席之地。王汁、郭培、邱昊、上官喆、陈安琪、陈序之、王逢陈等中国设计师的名字已为许多人所知。他们参加海内外时装周,争夺各种国际时尚奖项,把衣服卖去知名买手店和奢侈品电商,入驻连卡佛和老佛爷等高端精品百货,几乎在所有能涉足和曝光的渠道崭露头角。但中国的电商平台渠道是个例外。迄今为止,中国设计师品牌对于在天猫、京东一类国内电商平台上开店仍表...

2019-06-02 13:45:45 391

原创 2019 iOS马甲包过审经验4.3和2.1的过包技巧

1. 机审原理我们虽然无法得知苹果实际的机审原理,但从程序员的角度还是能分析出一些东西的。1.1 首先OC和C++代码编译出的二进制文件,有点经验和反编译过的应该都知道:删注释神马的是没用的,因为注释是不会被编译进包里改类名是靠谱的,因为反编译出来能看到类名,改掉它显然是会造成包不一样增改函数也是靠谱的,同样是因为反编译能看到改文件夹或者文件名应该是不太靠谱的,编译的时候会根据路径来...

2019-06-01 18:44:32 5583 4

原创 解读 iOS 组件化与路由的本质

前言虽然 iOS 组件化与路由的话题在业界谈了很久,但是貌似很多人都对其有所误解,甚至没搞明白“组件”、“模块”、“路由”、“解耦”的含义。相关的博文也蛮多,其实除了那几个名家写的,具有参考价值的很少,况且名家的观点也并非都完全正确。架构往往需要权衡业务场景、学习成本、开发效率等,所以架构方案能客观解释却又带了些主观色彩,加上些个人特色的修饰就特别容易让人本末倒置。所以要保持头脑清晰,...

2019-06-01 16:35:02 346

原创 iOS中UIViewController完美瘦身

对于UIViewController瘦身是一个老生常谈的问题,现在也有比较多的架构来实现此效果,比如MVVM等等。不过这次我们是对于传统的MVC架构设计实现完美的瘦身。此方法也完全不妨碍在此基础上使用MVVM等其他方法瘦身。情景首先让我们看一下我们要做的界面效果看着界面不是很难,最上边是二维码扫描;中间输入一些信息,数字1、2、3是按钮点击网络请求然后弹出选择界面供用户选择;...

2019-05-30 14:56:43 222

原创 用户端智能的应用实践

去年团队在用户端上进行了一些简单的智能应用探索实践,这里记录梳理下。现在很多“智能”,是普通推荐算法借深度学习的风包装的,核心也就是决策树/随机森林/SVM这些90年代已经提出的算法,我们这里的实践也是这样。在用户端上,智能应用最广泛的目前两个点:个性化和多媒体识别,我们主要实践是在个性化上,从原来所有用户都用同一套或几套规则,换成根据推荐算法给每个用户制定符合他个性化特征的不同规则。实际...

2019-05-30 14:53:49 254

原创 iOS多线程:『pthread、NSThread』详尽总结

本文用来介绍 iOS 多线程中,pthread、NSThread的使用方法及实现。第一部分:pthread 的使用、其他相关方法。第二部分:NSThread 的使用、线程相关用法、线程状态控制方法、线程之间的通信、线程安全和线程同步,以及线程的状态转换相关知识。文中 Demo 我已放在了 Github 上,Demo 链接:传送门1. pthread1.1 pthread ...

2019-05-29 13:24:54 219

原创 [Masonry] 实现原理及链式调用分析

Masonry is a light-weight layout framework which wraps AutoLayout with a nicer syntax. Masonry has its own layout DSL which provides a chainable way of describing your NSLayoutConstraints which resu...

2019-05-29 13:21:29 444

原创 深入iOS系统底层之程序中的汇编代码

合抱之木,生于毫末;九层之台,起于垒土;千里之行,始于足下。–(老子·道德经 )对于一个闭源系统来说如果想研究某些逻辑的内部实现就需要对汇编语言进行掌握和了解、对于某些需要高性能实现的逻辑来说用汇编语言实现可能是最好的选择、对于某些逻辑来说可能只能用汇编来实现。以最后一个能力来说:当我们要实现一个HOOK所有OC方法调用的逻辑时,因为HOOK的方法不能破坏原有函数的参数栈,而且还需要在适当的时...

2019-05-28 13:23:50 508

原创 随便说说 alloc 和 init

先抛出一个小问题,然后延伸引入接下来要说的zuyuClass *z = [zuyuClass alloc];zuyuClass *z1 = [z init];zuyuClass *z2 = [z init];NSLog(@”%p – %p – %p”,z,z1,z2);思考一下是控制台的输出是怎么样的思考过后代码试一下z,z1,z2三个对象的地址是完全一样的allo...

2019-05-28 13:20:58 358

原创 快速掌握RabbitMQ(三)——消息确认、持久化、优先级的C#实现

1 消息确认  在一些场合,如转账、付费时每一条消息都必须保证成功的被处理。AMQP是金融级的消息队列协议,有很高的可靠性,这里介绍在使用RabbitMQ时怎么保证消息被成功处理的。消息确认可以分为两种:一种是生产者发送消息到Broke时,Broker给生产者发送确认回执,用于告诉生产者消息已被成功发送到Broker;一种是消费者接收到Broker发送的消息时,消费者给Broker发送确认回执...

2019-05-26 20:29:13 173

原创 iOS组件化开发架构设计思考(初版)

组件化开发系列:(一)iOS组件化开发架构设计思考(二)iOS组件化开发实施一期文档一. 项目现状当前iOS端APP项目大概有35万行代码,早期为了iPad和iPhone双端开发的效率,将所有业务模块的网络请求和数据模型统一抽离到DDEngine工程,自定义了私有开发库DDDevLib工程,和第三方SDKs管理库ThirdSDKs工程,和功能相对独立的DDMIX_UI工程。在项目较...

2019-05-26 13:12:01 267

原创 快速掌握RabbitMQ(二)——四种Exchange介绍及代码演示

 在上一篇的最后,编写了一个C#驱动RabbitMQ的简单栗子,了解了C#驱动RabbitMQ的基本用法。本章介绍RabbitMQ的四种1 direct类型1 direct路由规则  上一篇最后一个栗子使用的Exchange就是direct类型的,direct类型的exchange路由规则很简单:  exchange在和queue进行binding时会设置routing...

2019-05-25 18:01:48 201

原创 快速掌握RabbitMQ(一)——RabbitMQ的基本概念、安装和C#驱动

1 RabbitMQ简介 RabbitMQ是一个由erlang开发的AMQP(Advanced Message Queue )的开源实现,官网地址:http://www.rabbitmq.com。RabbitMQ作为一个消息代理,主要负责接收、存储和转发消息,它提供了可靠的消息机制和灵活的消息路由,并支持消息集群和分布式部署,常用于应用解耦,耗时任务队列,流量削锋等场景。本系列文章...

2019-05-25 15:15:27 180

原创 App送审,4.3问题怎样处理

先回顾下,4.3问题被拒邮件是怎样的4. 3 Design: SpamGuideline 4.3 - DesignThis app duplicates the content and functionality of other apps submitted by you or another developer to the App Store, which is consider...

2019-05-25 13:31:02 595

原创 iOS组件化开发实施一期文档

组件化开发系列:(一)iOS组件化开发架构设计思考(二)iOS组件化开发实施一期文档一、目标梳理项目工程结构,抽离基础层和中间层。保证所有第三方库管理、基础库从主工程抽出,可独立编译,减少编译时间。梳理提供的功能和使用方法,便于各业务模块的调用。让团队成员更熟悉公司项目,减少重复造轮子,提高开发效率。二、实施计划1、实施说明 专门建立一个组件化的分支组,组...

2019-05-25 13:03:25 204

原创 最全iOS马甲包审核以及常见审核问题

从事过APP运营的开发者们,可能都听说过苹果马甲包。而对从事棋牌游戏行业的创业者来说,苹果马甲包的重要性更是不言而喻。尤其是去年棋牌马甲包大规模下架事件,更是让众多棋牌运营商损失惨重。那么,有没有什么方法能够解决苹果马甲包审核的问题呢?在此之前,我们需要先了解苹果审核的规则。机审和人工审核和众多平台审核的机制类似,苹果审核有机审和人工审核两部分。包上传后首先进入的是预审,会被扫描API等,...

2019-05-24 15:26:45 5561 2

原创 iOS——隐形水印的实现和『颜色加深』算法

很多 APP 都在敏感页面有水印,主要为了应对舆情时可以追踪图片来源,一般在水印上都会有员工或用户 ID 和昵称。水印的用途总结有亮点: 追踪来源 威慑作用 威慑作用是指当用户看到水印时,会自觉避免违法传舆行为。但是,当不需要威慑作用时,例如,为了保持应用或者图片的美观,显形的水印似乎不是那么必要,这时候可以考虑使用隐形水印。最近在同事在知乎上看到一种水印。...

2019-05-24 14:57:17 766

原创 iOS 多线程:『RunLoop』详尽总结

1. RunLoop 简介1.1 什么是 RunLoop?可以理解为字面意思:Run 表示运行,Loop 表示循环。结合在一起就是运行的循环的意思。哈哈,我更愿意翻译为『跑圈』。直观理解就像是不停的跑圈。RunLoop 实际上是一个对象,这个对象在循环中用来处理程序运行过程中出现的各种事件(比如说触摸事件、UI刷新事件、定时器事件、Selector事件),从而保持程序的持续运行。...

2019-05-22 13:22:39 549

原创 MyLayout&TangramKit 的重大升级!

MyLayout和TangramKit是一套基于frame之上的UI界面布局库的OC版本和Swift版本。目前最新版本升级为MyLayout1.7.0和TangramKit1.4.0。OC1.7.0: github.com/youngsoft/M…Swift1.4.0: github.com/youngsoft/T…这次升级的主要目的是为了和AutoLayout结合的更加紧密。这不...

2019-05-21 18:21:30 192

原创 来一次有侧重点的区分Swift与Objective-C

[TOC]@(swift)[温故而知新]面试中经常被问到Objective-C与Swift的区别,其实区别还是很多的,重点整理一下个人觉得很重要的:面向协议编程。一、Objective-C与Swift的异同1.1、swift和OC的共同点:– OC出现过的绝大多数概念,比如引用计数、ARC(自动引用计数)、属性、协议、接口、初始化、扩展类、命名参数、匿名函数等,在Swif...

2019-05-21 16:19:06 480

原创 一文看尽 Build 2019 与 I/O 2019A

上周微软 Build 2019 大会与谷歌 I/O 2019 大会相继举办,两场开发者大会让人热血沸腾,期间两位巨头宣布了各种劲爆的消息,OSCHINA 对其中一些与开发者特别相关的内容进行了报导。两场会议都已经落幕,这里汇总一下我们报导过的内容,让你一文了解微软与谷歌开发生态的最新消息。可以点击每篇文章的标题跳转原文阅读更多内容:微软在 Windows 10 中搞了个真正的 Linux ...

2019-05-19 15:51:15 1013

原创 iOS组件化方案对比

背景随着公司业务的不断发展,项目的功能越来越复杂,各个业务代码耦合也越来越多,代码量也是急剧增加,传统的MVC或者MVVM架构已经无法高效的管理工程代码,因此需要用一种技术来更好地管理工程,而组件化(也可称为模块化)是一种能够解决代码耦合的技术。项目经过组件化的拆分,不仅可以解决代码耦合的问题,还可以增强代码的复用性,工程的易管理性等等。市场上的方案:方案一、url-block这是...

2019-05-18 16:00:44 351

原创 iOS应用程序瘦身的静态库解决方案

为什么要给程序瘦身?随着应用程序的功能越来越多,实现越来越复杂,第三方库的引入,UI体验的优化等众多因素程序中的代码量成倍的增长,从而导致应用程序包的体积越来越大。当程序体积变大后不仅会出现编译流程变慢,而且还会出现运行性能问题,会增加应用下载时长和消耗用户的移动网络流量等等。因此在这些众多的问题下需要对应用进行瘦身处理。一个应用程序由众多资源文件和可执行程序文件组成,资源文件的优化不在本...

2019-05-17 16:37:57 148

原创 马蜂窝 iOS App 启动治理:回归用户体验

增长、活跃、留存是移动 App 的常见核心指标,直接反映一款 App 甚至一个互联网公司运行的健康程度和发展动能。启动流程的体验决定了用户的第一印象,在一定程度上影响了用户活跃度和留存率。因此,确保启动流程的良好体验至关重要。「马蜂窝旅游」App 是马蜂窝为用户提供服务的主要阵地,其承载的业务模块不断丰富和完善,产品功能日趋复杂,已经逐渐成长为一个集合旅行信息、出行决策、自由行产品及服务...

2019-05-16 11:11:50 150

原创 在 iOS 中实现谷歌灭霸彩蛋

示例代码下载最近上映的复仇者联盟4据说没有片尾彩蛋,不过谷歌帮我们做了。只要在谷歌搜索灭霸,在结果的右侧点击无限手套,你将化身为灭霸,其中一半的搜索结果会化为灰烬消失…那么这么酷的动画在iOS中可以实现吗?答案是肯定的。整个动画主要包含以下几部分:响指动画、沙化消失以及背景音效和复原动画,让我们分别来看看如何实现。图1 上为沙化动画,下为复原动画响指动画Goog...

2019-05-15 14:58:06 243

原创 教你如何处理被苹果App Store审核多次被拒和被警告的情况下通过审核

内部审核渠道人员教你如何处理被苹果App Store审核多次被拒和被警告的情况下通过审核We will reject apps for any content or behavior that we believe is over the line. What line, you ask? Well, as a Supreme Court Justice once said, “I'll kn...

2019-05-12 18:22:51 8524

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除