apple 在几个月前发布了自家的芯片 M1,由于将多核cpu,多核gpu,神经网络运算,内存和其他一切处理部件高度整合在一起,大大提高数据传输速度。发布后好评如潮,我也没有忍住,入手了一台最低配的mac air m1。目前 M1 还是有很多软件不能很好支持,当然,这个无法阻挡我在上面的开发。我给大家分享一下我在apple silicon上开发的过程。

首先,到写这篇文章的时候还有很多开发软件不支持跑在M1上,我们来看看当前的状态。

  1. Docker正式发布版本不原生支持 apple silicon,preview 版本已经开始支持,但目前问题较多
  2. VScode正式发布版本不原生支持,insider版本已经开始支持,但目前问题较多
  3. .NET目前的LTS版本3.1和最新的5.0都不原生支持,目标是6.0版本支持
  4. NodeJS preview版本支持
  5. Python支持

所以,如果大家是JS, Python语言技术栈的话,恭喜,你已经开始在 M1 上进行原生开发了,只是目前大多数都在preview阶段。

如果你和我一样是 .NET 技术栈的话,一种方式是使用 Rosetta 来转换,但是转换的话就无法体验 M1 给我们带来的快感。网上有一个视频比较 VScode 启动速度的,使用 Rosetta 转换的话,明显慢,大概需要 5-8 秒,但是如果是原生的话,基本是瞬间就完成了(1秒以内)。

所以我使用的是另外一种方式,VScode remote,我在azure上开了一台虚机,vscode使用ssh的方式远程上去。下面是一些操作的链接

  • VScode insider build for Apple Silicon (ARM64) https://code.visualstudio.com/insiders/
  • 配置SSH远程开发的步骤 https://code.visualstudio.com/docs/remote/ssh
  • 在远程虚机上安装.net https://docs.microsoft.com/en-gb/dotnet/core/install/linux

使用云端的虚机的好处是:你已经有一个public地址,所以不需要安装 ngrok 软件,可以直接把虚机的 ip 地址直接给到 teams,只需要记得打开对应的端口就可以了。如果你的虚机不是在云端的,那需要单独再安装 ngrok。

我的虚机是 ubuntu 20.04 LTS版本,如果你使用的是 windows 的远程虚机,那需要安装 openssh,但是这里有一个坑,我之前就掉进去,花了3,4小时才发现是一个已知问题,就是如果你的机器名字和用户名是一样的话,就死活登入不了。

另外,我自己的经验是,远程开发机器尽量使用 linux。这样如果你用来开发 python 或者 docker 相关的东西也会少遇到很多坑。

One more thing,目前 Teams 本身还不支持 M1,相信这个会被很快解决,因为 Electron 最近也已经支持了 apple silicon 了。https://www.electronjs.org/blog/electron-11-0

最后,如果大家对目前各大软件支持apple silicon的进度感兴趣的话,可以访问这个网站,非常实用:https://isapplesiliconready.com/for/developer

如何在 Apple Silicon (M1) 上开发 Teams App相关推荐

  1. Apple Silicon M1 Mac如何恢复出厂设置

    今天小编就来和大家讲述一下 Apple Silicon M1 Mac如何恢复出厂设置并还原的? Apple完全改变的Apple Silicon Mac的一个方面是访问恢复模式的方式,这是重新安装Mac ...

  2. 怎样恢复出厂设置并还原Apple Silicon M1 Mac?

    Apple完全改变的Apple Silicon Mac的一个方面是访问恢复模式的方式,这是重新安装MacOS,解决问题或彻底擦除硬盘驱动器所必需的工具,以防万一您必须将其退回或决定删除硬盘.在下面,您 ...

  3. Apple Silicon M1 MacBook Air上手详细评测M1的强大!

    离开Intel的第一天,一点都不想它. 简要总结这款M1 MacBook Air: 1.  M1性能表现超出预期的好,速度快到堪称恐怖 2.  与Intel Mac一样功能强大,甚至更强大 3.  M ...

  4. rosetta2安装_您需要了解有关Apple Silicon Macs上的Rosetta 2的所有信息

    苹果的M1 Mac配备了新处理器,可提供突破性的性能,但要运行在英特尔芯片上的应用程序可能需要使用全新的Rosetta转换技术才能运行.这是什么,它做什么? 支持前往Apple Silicon的旅程 ...

  5. apple silicon m1软件适配进度

    苹果的M1芯片设备发布已经有一段时间了,但有些人可能仍处于观望状态. 日常办公和学习所需的常用软件能否适配搭载M1芯片的Mac,也是大家担心和考虑的问题. 通过目前的Appstore市场来看,官方并没 ...

  6. 使用Azure Serverless来开发Teams App

    Azure Function可以说比较早期的一个serverless服务,随着这些年云服务的大行其道,Serverless在概念越来越火,什么叫serverless? Serverless compu ...

  7. 如何在M1 Apple Silicon Mac上安装Rosetta

    由Apple Silicon芯片驱动的Mac,例如M1 MacBook Pro,既可以运行iOS应用程序也可以运行Mac应用程序,但是由于名为Rosetta 2的支持,它们也可以运行x86-64软件, ...

  8. CPU 的工作原理以及为什么Apple Silicon M1 比 Intel i9 快?

    计算机是一种可以通过编程自动执行算术或逻辑运算序列的机器.CPU 或中央处理单元是计算机中最重要的部分.所以在这篇文章中我将讨论 CPU 是如何工作的,稍后我将讨论为什么 Apple Silicon ...

  9. 在 Apple silicon Mac 上 DFU 模式修复或恢复 macOS 固件

    搭载 Apple 芯片的 Mac 电脑 DFU 模式全新安装 macOS Ventura 请访问原文链接:https://sysin.org/blog/apple-silicon-mac-dfu/,查 ...

最新文章

  1. MVC模式和文档/视图结构
  2. 在java中使用solrj对solr进行CRUD
  3. PyTorch实战福利从入门到精通之一——PyTorch框架安装
  4. 【ubuntu】开机一直“/dev/sda3:clean, XXX files, XXXX blocks”解决方法
  5. jQuery Mobile事件,开发全解+完美注释
  6. Mac 顶部栏显示路径
  7. 西狐爱墙:为中国祈福!
  8. vivo nex免Root使用空调狗
  9. MATLAB求二阶隐函数导数,matlab隐函数求导
  10. 南开100题C语言(001-010)
  11. 西安游记(兵马俑 -- 华清池)
  12. layer添加元素 openlayer_OpenLayers使用点要素作为标记
  13. Ubuntu16.04LTS上安装QQ,QQ音乐
  14. CodeBlocks:1: 在MacOS上安装20.03
  15. 2020 年高中数学联赛试题及解析
  16. vue报错:Object(...) is not a function
  17. geoserver给天地图添加服务,给线加标注
  18. van-popup() 点击空白处关闭弹窗
  19. ESP32TCP-SERVER 通信
  20. 微信软件服务器在那个国家,安道尔究竟是什么地方?为什么2000万中国人微信地址都选在安道尔...

热门文章

  1. 前端必备知识点—SVG
  2. 几个故事告诉你,火热的区块链究竟是什么?
  3. Java做一个动画效果音量调节_设计与实现一个 ISoundable 接口,该接口具有发声功能、还能调节音量大小...
  4. html5的网络书店图书网站代码_【技能提升】10个编写HTML5的实用小技巧
  5. Spring常用的的注解对应xml配置详解
  6. netflix 工作原理_Netflix如何在屏幕后面工作?
  7. web登录界面设计_出色的Web界面设计的7条规则
  8. 《Programming in Lua 3》读书笔记(十二)
  9. Ajax完整资料加代码
  10. 读书笔记(06) - 语法基础 - JavaScript高级程序设计