做一个 App 到底要花多少钱?独立开发真的能赚钱吗?
这两年,独立开发又火起来了。
一边是 AI 编程工具越来越强,一个人做 App 的门槛越来越低;另一边,社交平台上经常能看到这样的故事:
“独立开发一个月收入 5 万。”
“一个人做 App,睡后收入超过工资。”
“周末做了个小工具,上线后月入过万。”
看多了以后,很容易产生一种错觉:
现在做 App,是不是已经变成了一门低成本、高回报的生意?
我自己做过不少 App,也长期关注独立开发这件事。
如果只说结论:
做一个 App 的开发成本,确实已经比以前低了很多。
但真正昂贵的,往往不是“把 App 写出来”。
而是:
选品、设计、……继续阅读 »
sharezer
5小时前 15浏览 0评论
0个赞
App Store 宣传图正式开放!不更新 App,也能换产品页头图
苹果 2026 年 10 月新功能|Creative Assets、搜索结果宣传图、Asset Library,一篇讲清楚。
适合:iOS 独立开发者、App 运营、产品设计师。预计阅读约 6 分钟。
封面:原创 AI 场景图+编辑排版。仅用于文章说明,并非真实 App Store 截图。
如果你经常上架 App,应该对产品页素材很熟悉:一个图标、几张截图,再加一段可选的预览视频。这些内容能够介绍功能,却未必能把产品的品牌气质展示出来。
现在,苹果为 App Store 增加了新的视觉表达方式。
2026 年 10 月……继续阅读 »
sharezer
5小时前 9浏览 0评论
0个赞
本文由 简悦 SimpRead 转码, 原文地址 juejin.cn
之前的两篇文章对 GCD 队列和调度函数进行了解析。本文将继续讲解 GCD 里面一些使用率较低的函数的使用。
栅栏函数
我们在开发中经常会使用到并发队列+异步函数,来开启新线程去完成耗时任务,但这样的操作存在一个漏洞,耗时任务的执行会呈现无序性,从而淡化队列的概念,而在特定的情况下,个别任务执行的条件是前置任务完成。这种情况使用并发队列 + 异步函数是无法实现的,这时候就需要栅栏函数出马了。
使用dispatch_barrier_async添加的任务,会将队列里面的任务分成 3 部分,dispatch_barrier……继续阅读 »
sharezer
3年前 (2024-04-01) 1251浏览 0评论
0个赞
[TOC]
一、fishhook
1、介绍
fishhook 是 facebook 出品的一个开源库。利用 mach-o 文件加载原理,通过 rebind_symbols 函数修改__DATA Segment 的符号指针指向,来动态的 Hook C 函数。
2、主要信息
2.1、结构体
struct rebinding {
const char *name; //函数名称
void *replacement; //新的函数地址
void **replaced; //保存原始函数地址变量的指针(通常要存储下来,在替换后的方法里调用)
};
2.2、主要接口
/*
交换方……继续阅读 »
sharezer
6年前 (2021-04-19) 2439浏览 0评论
0个赞
方法一: 用 applescript 获取
applescript 在开发中也非常好用。
tell application "System Events"
set listOfProcesses to every process
set allProcess to {}
repeat with processItem in listOfProcesses
set procname to name of processItem as string
set processId to unix id of processI……继续阅读 »
sharezer
6年前 (2021-04-15) 2910浏览 0评论
0个赞
// 显示Mac隐藏文件
defaults write com.apple.finder AppleShowAllFiles YES
// 隐藏Mac隐藏文件
defaults write com.apple.finder AppleShowAllFiles NO
// 强制使用集显
sudo pmset -a GPUSwitch 0
// 强制使用独显
sudo pmset -a GPUSwitch 1
// 自动切换模式
sudo pmset -a GPUSwitch 2
// 修改Mac地址
sudo ifconfig en0 ether [mac地址]
……继续阅读 »
sharezer
7年前 (2019-07-17) 7519浏览 0评论
0个赞
……继续阅读 »
sharezer
7年前 (2019-05-29) 2415浏览 0评论
0个赞
国内Specs
清华大学镜像
https://mirrors.tuna.tsinghua.edu.cn/git/CocoaPods/Specs.git
上海大学镜像
https://mirrors.shu.edu.cn/CocoaPods (仅HTTP/HTTPS访问,不支持git拉取)
https://mirrors.shu.edu.cn/mgit/Specs (仅git访问)
https://git.shuosc.org/CocoaPods/Specs (均支持)
中国区镜像表项
git://cocoapodscn.com/Specs.git
使用方法
对于旧版的 CocoaPods 可以……继续阅读 »
sharezer
8年前 (2019-05-01) 5748浏览 0评论
0个赞
废话不多说,直接上代码。
let options = PHImageRequestOptions()
options.version = PHImageRequestOptionsVersion.current;
options.deliveryMode = PHImageRequestOptionsDeliveryMode.highQualityFormat;
options.isSynchronous = true;
let phImageManager = PHImageManager.default()
phImageManager.requestImageData(for: phot……继续阅读 »
sharezer
8年前 (2018-12-02) 2796浏览 0评论
0个赞
新博客:
完整版 - AVFoundation Programming Guide
分章节版:
– 第 1 章:About AVFoundation - AVFoundation 概述
– 第 2 章:Using Assets - 使用 Assets
– 第 3 章:Playback - 播放
– 第 4 章:Editing - 编辑
– 第 5 章:Still and Video Media Capture - 静态视频媒体捕获
– 第 6 章:Export - 输出
– 第 7 章:Time and Media Representations 时间和媒体表现
版权声明:本文为博主原创翻译……继续阅读 »
sharezer
8年前 (2018-11-23) 5994浏览 0评论
0个赞