请问准备开始学 IOS 开发,先买个黑苹果主机可行吗?

2024-01-31 11:52:21 +08:00
 snowyowl

如题,纯 IOS 新人(纯外行),正在考虑 2 个方向提高下技能,一方面就是 IOS 开发,另一方面是想学学剪辑。 已有 windows 系统的电脑了,但是本职工作资料比较多,不打算用这个电脑装双系统。 苹果官方价格目前还是超出我的预算比较多,所以想问下黑苹果合适不合适。 我的编程技能只有一点浅显的 MySQL 知识,在 windows 上尝试学 python 环境搭建还经常出错,用朋友的苹果本接触了 Swift 发现比较方便,所以想问问站里的业内朋友。 如果能给我一些配置建议就更加感谢了,现在考虑到黑果小兵的店去买成品。 谢谢大家~

12014 次点击
所在节点    iDev
100 条回复
roundgis
2024-01-31 19:09:03 +08:00
買 mac mini
UXha45veSNpWCwZR
2024-01-31 19:50:16 +08:00
@fresco #47 之前就這樣試過了,現在又試一次。還是不行。還是會回到同步時間前的時間。
iOCZS
2024-01-31 21:04:47 +08:00
直接远程登录我的苹果机开发吧
wwlzz
2024-01-31 22:39:51 +08:00
推荐 Mac mini
kkk9
2024-01-31 22:54:23 +08:00
win 下 vmware 黑苹果 xcode 很流畅啊……我是这样学习的
qinrui
2024-01-31 23:27:27 +08:00
@MeteorVIP #20

以下代码保存为 bat 脚本,在计划任务中设定 用户登录 为触发条件即可
net stop w32time
w32tm /unregister
w32tm /register
net start w32time
w32tm /resync
bugu1986
2024-01-31 23:29:26 +08:00
mac mini
callmesmc
2024-02-01 00:46:49 +08:00
黑苹果不要考虑了,玩不了几年了,但是你开发必须每年升级最新 Xcode ,也就意味着必须升最新的 macOS
vokins
2024-02-01 00:50:48 +08:00
::让 Windows 将 BIOS 硬件时间视为协调世界时( UTC ): 解决和 Win Mac 双系统 时间不同步的问题
reg add "HKLM\SYSTEM\CurrentControlSet\Control\TimeZoneInformation" /v "RealTimeIsUniversal" /t REG_DWORD /d 1 /f


我用的是这一条没啥问题啊,改完以后重新用 vbs 同步下时间

'VBS 校准系统时间 BY Yu2n 2019.05.26 http://www.bathome.net/viewthread.php?tid=60369
Option Explicit

RunAsAdminX64
Main

'************************************************************************
Sub Main()
'************************************************************************
Dim dtNet, dtLocal1, dtLocal2, lngOffset1, lngOffset2, strMessage
dtNet = GetNetTime("http://www.microsoft.com")
dtLocal1 = Now()
lngOffset1 = Abs(DateDiff("s", dtNet, dtLocal1))
If lngOffset1 > 1 Then
SetDateTime dtNet
dtLocal2 = Now()
lngOffset2 = Abs(DateDiff("s", dtNet, dtLocal2))
strMessage = " [校准前] " & vbCrLf _
& "标准北京时间为:" & vbTab & dtNet & vbCrLf _
& "本机系统时间为:" & vbTab & dtLocal1 & vbCrLf _
& "与标准时间相差:" & vbTab & lngOffset1 & "秒" & vbCrLf & vbCrLf _
& " [校准后] " & vbCrLf _
& "标准北京时间为:" & vbTab & dtNet & vbCrLf _
& "本机系统时间为:" & vbTab & dtLocal2 & vbCrLf _
& "与标准时间相差:" & vbTab & lngOffset2 & "秒"
Else
strMessage = " [无需校准] " & vbCrLf _
& "标准北京时间为:" & vbTab & dtNet & vbCrLf _
& "本机系统时间为:" & vbTab & dtLocal1 & vbCrLf _
& "与标准时间相差:" & vbTab & lngOffset1 & "秒"
End If
WScript.Echo strMessage
End Sub


'************************************************************************
'获取网络上指定的 HTTP 服务器时间
'************************************************************************
Function GetNetTime(ByVal Url)
Dim Bias, DateLine '时间偏移(分钟)
Dim dtGMT, dtLocal, dtBegin
On Error Resume Next
With CreateObject("WScript.Shell")
'[ActiveTimeBias]:该键值存储当前系统时间相对格林尼治标准时间的偏移(以分钟为单位)
'[Bias]:该键值存储当前本地时间相对格林尼治标准时间的偏移(以分钟为单位)
Bias = .RegRead("HKLM\SYSTEM\CurrentControlSet\Control\TimeZoneInformation\ActiveTimeBias")
End With
With CreateObject("Microsoft.XMLHTTP")
dtBegin = Now()
.Open "POST", Url, False
.Send
If Err.Number = 0 Then
dtGMT = Split(Replace(.getResponseHeader("Date"), " GMT", ""), ",")(1)
If IsDate(dtGMT) Then
dtLocal = DateAdd("n", -CLng(Bias), CDate(dtGMT)) '北京时间:GMT+8
dtLocal = DateAdd("s", DateDiff("s", dtBegin, Now()), dtLocal) '时间损耗
GetNetTime = dtLocal
End If
End If
End With
End Function


'************************************************************************
'设定电脑的时间
'************************************************************************
Function SetDateTime(ByVal dt1)
Dim WmiService, ComputerName, OSList, OSEnum, OS, DateTime
ComputerName = "."
Set WmiService = GetObject("winmgmts:{impersonationLevel=impersonate, (Systemtime)}!//" + ComputerName + "/root/cimv2")
Set OSList = WmiService.InstancesOf ("Win32_OperatingSystem")
Set DateTime = CreateObject("WbemScripting.SWbemDateTime")
For Each OSEnum In OSList
DateTime.Value = OSEnum.LocalDateTime
DateTime.Year = Year(dt1)
DateTime.Month = Month(dt1)
DateTime.Day = Day(dt1)
DateTime.Hours = Hour(dt1)
DateTime.Minutes = Minute(dt1)
DateTime.Seconds = Second(dt1)
If (OSEnum.SetDateTime(DateTime.Value) <> 0) Then
'WScript.Echo "警告:设置系统时间失败!"
SetDateTime = False
Else
'WScript.Echo "提示:设置成功。当前时间:" & DateTime.GetVarDate()
SetDateTime = True
End If
Next
End Function


'************************************************************************
'初始化 RunAsAdminX64 For Win10 x64
'************************************************************************
Function RunAsAdminX64()
Dim wso, fso, dwx, sSFN, sSD32, sSF32, vArg, sArgs, oShell, sDWX
Set wso = CreateObject("WScript.Shell")
Set fso = CreateObject("Scripting.filesystemobject")
RunAsAdminX64 = False
'获取 WSH 参数
For Each vArg In WScript.Arguments
sArgs = sArgs & " " & """" & vArg & """"
Next
'获取 32 位 WSH 目录
sSFN = fso.GetFile(WScript.FullName).Name
sSD32 = wso.ExpandenVironmentStrings("%windir%\SysWOW64")
If Not fso.FileExists(sSD32 & "\" & sSFN ) Then
sSD32 = wso.ExpandenVironmentStrings("%windir%\System32")
End If
'以 32 位 WSH 运行
If UCase(WScript.FullName) <> UCase(sSD32 & "\" & sSFN) Then
wso.Run sSD32 & "\" & sSFN & " """ & WScript.ScriptFullName & """" & sArgs, 1, False
WScript.Quit
End If
'以管理员权限运行 WSH
If Not WScript.Arguments.Named.Exists("ADMIN") Then
Set oShell = CreateObject("Shell.Application")
oShell.ShellExecute WScript.FullName, """" & WScript.ScriptFullName & """ " & sArgs & " /ADMIN:1 ", "", "runas", 6
WScript.Quit
End If
End Function
techmale
2024-02-01 00:56:24 +08:00
只需要看两条
- d3vil
- 买 Mac Mini

其余评论一概忽略 没有任何意义
superedlimited
2024-02-01 07:09:31 +08:00
楼上程序员们是不是有点单纯了?
这个帖子,是不是结尾“黑果小兵”的软广?🙊
putyy
2024-02-01 08:29:37 +08:00
有钱买白苹果,没钱黑苹果,,自己爱折腾就黑苹果 自己要会如何配 efi 如何设置各种参数,,不然是容易出问题,,我黑苹果用了 5-6 年了 个人的配置还是很稳定的,楼上有些说不稳定 时间啥子的问题 一看就是黑苹果小白..... 不是折腾党就买白苹果吧
worldhandsomeboy
2024-02-01 08:44:09 +08:00
可以试一下 flutter 跨平台,入门先不用原生 iOS 了吧。要不要做个小白,我前段时间双系统在虚拟机跑 sonama14.2 ,xcode 编码速度可以,就是不知道跑多了会怎么样
yinchunde
2024-02-01 08:48:54 +08:00
手里有一台黑苹果( 10700 + 32G + 584 ),也在做移动端开发( Flutter ),应该有点发言权。

先说结论,跟其他 V 友的意见一样,不建议黑苹果,建议 Mac Mini M1 16+256 ;
如果只是想试试水开发 iOS ,可以淘一台 1500 左右的无头骑士,2018 年的应该能淘到,能升级一两次最新系统,够你用一两年 xcode 的了,性能够用;
独立开发成功率有多低呢,你就想象一下你是一个歌手,10 年前发几首歌能不能火;
iOS 开发目前职位不多,如果为了就业,(喜欢前端的话)鸿蒙开发好像多少有点机会。

原因如下:
iOS 开发高度依赖系统升级,实际上是 Xcode 升级,黑苹果每次大版本升级都很糟心,有时候官方不支持某些驱动了就只能等论坛高手解决,比如 2023 年很多白果网卡都不支持最新的 Sonoma 系统了。
Intel 的机器已经进入了淘汰周期,苹果的优化以及系统的新特性等原因,导致买 Intel Mac 就是 48 年入国军,我自己也已经下单了 M 芯片的 MacBookPro 了,准备全面替换手里的两台 Intel 设备了。
Mac Mini 最近一年性价比爆棚,性能也不用说,主要是省心。硬盘可以扩容,也可以外插高速 ssd 把系统装到外置硬盘上。用五年后,淘汰的 mac mini 做个家庭服务器或者电视盒子也很爽。

最后我手里这台黑苹果你如果要的话我高价转给你(狗头)
buytraffic
2024-02-01 08:57:26 +08:00
有苹果本 pro 半台不含屏幕的那种机子(应该是叫 macbook pro 半机,你自己搜看看),接个自己的屏即可,价格我看挺划算的。你买黑苹果怕还得折腾设置或零件。

接楼上,我觉得未必是软广,这家店铺确实容易搜到,不能把提到品牌或店铺的帖子都猜测为软广,不然都完全不能提各种第三方了。
CodingIran
2024-02-01 09:54:26 +08:00
不了解黑苹果,首先需要去确认几件事情:
1.黑苹果能否持续跟随 macOS 的升级,Xcode 绑定 macOS 的版本,建议升级最新版 Xcode 以确保可以跟进 Apple 最新的 SDK
2.黑苹果是否能完美胜任开发任务,比如开发 Vision OS 就必须使用 Apple Silicon 芯片的 Xcode ,而黑苹果通常是 x86 芯片
3.上面很多人已经提到,mac mini 16 + 256 用来开发已经绰绰有余,黑苹果不一定有价格优势
4.另外你提到有“学剪辑”的需求,macOS 在这方面也有一些独特的优势,可以考虑上白苹果
jdjingdian
2024-02-01 10:06:37 +08:00
硬要用黑苹果,肯定是可以,但是非常折腾
有人会说,折腾也好玩,我不否认,因为我以前也很喜欢黑苹果
但如果是专心想学 iOS ,那还是买个 m1 的 mac mini 或者更好的,毕竟黑苹果可能时不时有些小问题,不要为了解决这些小问题浪费时间。

苹果系统闭源的,折腾来折腾去,换个版本,又要重新弄。你说学黑苹果能学知识吧,确实也学到了,但要是相同的时间去看 Linux 内核源码,说不定都能给 Linux 内核提交一些补丁了呢。

为了玩,休闲,折腾,搞搞黑苹果,挺好
为了生产力,严肃场景,搞个 mac
sharpy
2024-02-01 10:10:11 +08:00
买个二手 mac mini 先用着呗
Socrazy
2024-02-01 10:11:40 +08:00
直接买 mini 吧,置办上黑果,你会发现没时间学习了,大部分时间在折腾黑苹果了。
HangoX
2024-02-01 10:12:50 +08:00
买二手 m1 mac mini 16G 或者 8G 都 ok ,黑苹果有难度。如果实在没这个钱,可以考虑黑苹果,黑苹果安装之后会稳定,升级的话找淘宝也 ok

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1013032

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX