Machi Originals just released a new app called FAM. Let’s look at what frameworks are inside v1.0.3:

➜ fam.app ls -1 Frameworks/AgoraAIDenoiseExtension.framework
AgoraCore.framework
AgoraRtcKit.framework
AgoraSoundTouch.framework
Agorafdkaac.framework
Agoraffmpeg.framework
Alamofire.framework
Differentiator.framework
FBLPromises.framework
FirebaseCore.framework
FirebaseCoreDiagnostics.framework
FirebaseCrashlytics.framework
FirebaseInstallations.framework
GoogleDataTransport.framework
GoogleUtilities.framework
IQKeyboardManagerSwift.framework
InputBarAccessoryView.framework
Kingfisher.framework
Lokalise.framework
Mantis.framework
Moya.framework
NSObject_Rx.framework
PubNub.framework
RxCocoa.framework
RxDataSources.framework
RxGesture.framework
RxRelay.framework
RxSwift.framework
RxSwiftExt.framework
RxViewController.framework
SKCountryPicker.framework
SnapKit.framework
Toast_Swift.framework
nanopb.framework

So original 🙃


SoundOn just pivoted to SoundClub in version 3.2.6. Let’s look at what frameworks are inside it: (Why is the app folder/project name called Runner? I have no idea :))

➜  Runner.app ls -1 Frameworks/AgoraRtcKit.framework
AgoraSoundTouch.framework
Agorafdkaac.framework
Agoraffmpeg.framework
App.framework
FBLPromises.framework
FBSDKCoreKit.framework
FBSDKLoginKit.framework
FMDB.framework
Flutter.framework
GTMSessionFetcher.framework
GoogleUtilities.framework
Protobuf.framework
Toast.framework
absl.framework
agora_rtc_engine.framework
apple_sign_in.framework
audio_service.framework
audio_session.framework
device_info.framework
flutter_downloader.framework
flutter_email_sender.framework
flutter_facebook_auth.framework
flutter_isolate.framework
fluttertoast.framework
grpc.framework
grpcpp.framework
image_picker.framework
just_audio.framework
leveldb.framework
nanopb.framework
openssl_grpc.framework
package_info.framework
path_provider.framework
share.framework
shared_preferences.framework
sign_in_with_apple.framework
social_share.framework
sqflite.framework
uni_links.framework
url_launcher.framework
webview_flutter.framework


We’re talking about the Clubhouse (audio chat), not Clubhouse (project management), of course ;)

Let’s look at what frameworks are inside Clubhouse iOS app v0.1.25:

➜  clubhouse.app ls -1 Frameworks/APAddressBook.framework
AgoraRtcKit.framework
Amplitude_iOS.framework
DBPrivacyHelper.framework
DZNEmptyDataSet.framework
FlagPhoneNumber.framework
IGListDiffKit.framework
IGListKit.framework
ISO8601DateFormatterValueTransformer.framework
Instabug.framework
Nuke.framework
PubNub.framework
RKValueTransformers.framework
RestKit.framework
RxCocoa.framework
RxNuke.framework
RxRelay.framework
RxSwift.framework
SOCKit.framework
SZTextView.framework
Sentry.framework
TransitionKit.framework
TrustKit.framework
TwitterCore.framework
TwitterKit.framework
UIAlertController_Blocks.framework
UIScrollView_InfiniteScroll.framework
UITextView_Placeholder.framework
Valet.framework

There are quite some third party frameworks. Most descriptions below are from https://cocoapods.org:

APAddressBook

Easy access to iOS address book

AgoraRtcKit

“Agora is a leading video, voice and live interactive streaming platform, helping developers deliver rich in-app experiences”. And yes, it is a…


How to sync Spotify local files to your mobile devices

Open Spotify desktop app (Yes, you need to install this):

  1. Turn on “Settings — Local Files — Show Local Files”.
  2. Add local files to a new playlist.

Open Spotify mobile app:

  1. Turn on “Settings — Local Files — Local audio files”. Grant local network permission if presented (new permission on iOS 14).
  2. Turn off “Settings — Playback — Hide Unplayable Songs”.
  3. Select the new playlist and download all songs of local files.

Comments

Spotify excels Apple Music in almost every aspect except for this one. …


Spotify

如果你在 Spotify(包含 Anchor)上架,那麼答案是:

Image for post
Image for post

Spotify for Podcasters Platform Terms and Conditions of Use 以及 Anchor Terms of Service 裡,都有這麼一條:

User Guidelines
The following is not permitted for any reason whatsoever:
- involves commercial or sales activities or pyramid schemes, that are not expressly authorized by Spotify

已經有 Podcast 被 Spotify 引述這個條款而下架了。

KKBOX

KKBOX for Podcasters 服務條款剛推出時,曾經有一條這麼寫(2020–07-30):

10. 您在使用本服務或軟體時,不得有下列行為
若您有違反本條款之情事,本公司有權暫停或終止你的 KKBOX for Podcaster 帳號:
a. 進行重製、變更、出售、授權、轉讓或為任何商業或不法之目的而利用 KKBOX for Podcasters 服務或軟體之內容,或傳送或發表商業廣告文字、連結及圖片

不過撰文時(2020–08–03)才發現,KKBOX 已經刪掉「商業」相關用詞,所以應該是允許業配:

10. 您在使用本服務或軟體時,如有下列行為
若您有違反本條款之情事,本公司保留暫停或終止你的 KKBOX for Podcaster 帳號之權利:
a. 進行重製、變更、出售、授權、轉讓或為任何不法之目的而利用 KKBOX for Podcasters 服務或軟體之內容

然而這個條款都可以隨時更改了,至少也該承諾修改時會預先公告與發通知信件吧,這些科技公司的法務部門為什麼都這麼跋扈呢?所以還是持保留意見:

本公司保留隨時修改本條款的權利,條款修改後經公布於 KKBOX Podcaster 平台上即生效力。若您在本公司修改服務條款後仍繼續使用 KKBOX Podcaster,即代表您已接受此修改條款之規範。

其他平台

目前閱讀 Apple Media Services Terms and Conditions (Apple Podcast) 與 SoundOn Term of Service 還沒發現類似條款。

參考資料


【重要公告】

更新:《台灣電子書搜尋》iOS App 已經下架,請參考其他成果:

在下架之前談談,為什麼超過一年無法更新?

比較易懂的比喻:App Store 是一家蘋果開設的「百貨公司」,特別喜歡接受自主品牌的精品入駐。而《台灣電子書搜尋》只是個第三方小工具,因此不符合百貨公司的「高標準」。

以下是來自蘋果審查人員的回覆:

We noticed that your app only includes links, im …


一個月前首發於數位時代,但不知為何編輯沒把連結和影片放上去。全文如下:

Image for post
Image for post

Surface Neo是真正的「筆記本電腦」

近年微軟的硬體產品發表會,經常成為眾目焦點,這次也不例外。貫串全場的微軟硬體部門副總裁、Surface之父Panos Panay指出,一直以來Surface旨在融合筆記型電腦(laptop)與平板電腦(tablet),並預言今天發表的「Surface Neo」將成為下一個全新的產品類型。

用一句話說明Surface Neo的產品特色?雙螢幕!首先在硬體上能折疊成筆記本大小,更容易手持或收納,至於張開後的筆記本形式,軟體上即刻給人「左右雙多工」的使用習性。Panos表示相較於智慧型手機的螢幕限制,雙螢幕絕對能讓人更有生產力。

這樣的硬體型式,真正像極了一本「筆記本」,尤其神似Moleskine經典筆記本的造型。相較於能放在腿上使用的「筆記型電腦(laptop)」,或許Surface Neo是要讓我們重新定義「筆記本電腦(notebook)」,這才是它真正的產品類型名稱!

多工體驗孰佳未可知

自從觸控型智慧手機成為許多人的工作裝置,來回操作不同App是常見任務,而過往硬體都是往「大螢幕」方向發展,並繼而催生了iPad這樣的平板電腦,或是Android手機的多視窗支援,讓使用者自行操作分割畫面,至於折疊式手機則強調能張開成一片完整的大螢幕。

Surface Neo則開創了一個新想法:「雙螢幕」。這樣的產品是否能讓雙多工操作更直覺、更有效率呢?產品預計明年2020年終假期才要上市,軟體表現還未可知。不過,這個「雙螢幕」的概念,其實早在2009年,媒體就曾披露微軟內部的平板概念影片「Courier」,當時雖廣受好評,但隔年正式發表上市的iPad則博得市場更大掌聲與更多目光。Surface Neo可說是Courier平板概念的復興產品。

探索新產品類型,是微軟唯一出路

微軟在經歷了Windows Phone失敗之後,近年不斷實驗各種Surface產品新概念,為的是既然在智慧型手機作業系統市場上失敗了,就必須鞏固傳統的筆記型或平板電腦,並繼而開發新的產品類型,才有機會重新扳回一城。

這樣的企業脈絡,是不是跟1990年代的蘋果電腦很像呢?當年Steve Jobs回鍋蘋果電腦,先是鞏固了自家Mac電腦產品線,才繼而研發出了iPod、iPhone這些劃時代的新產品。

然而Surface Neo還在初期產品概念時期,處處可見市場上既有功能的影子,譬如可磁吸的觸控筆,可磁吸的鍵盤則可帶出類似MacBook Touch Bar的觸控列介面,或是類似ASUS ScreenPad的觸控板介面,至於這些軟體形式是否能吸引開發者投入,尚未可知。此外,相較於iPad定位在筆記型電腦和智慧型手機之間,Surface Neo則像是在平板電腦與智慧型手機之間,這其中的發展空間是否可能更為侷限呢?Surface Neo筆記本採用專屬的Windows 10X作業系統,Surface Duo口袋型筆記本則採用Android作業系統(尺寸更像是雙螢幕手機),儘管微軟執行長Satya Nadella表示「對我們來說,用什麼作業系統不再是最重要的事」,重要的是這幾年微軟繼Office之後,大量投資的各種微軟生產力工具軟體與雲端服務。

最後,相較於iPhone於2007年破天荒發表後,還讓消費者等了將近半年,才正式上市開賣;Surface Neo則要消費者等上整整一年!微軟可能是想讓早期使用者們知道,「我們的Courier平板概念回來了」,而未來的你,工作時是想帶上一台筆記型電腦,或是一本Surface Neo筆記本?


2020/11/9 Update: slides with more latest info here ;)

#WWDC20
#WorldWideDevelopersConfused20

Good morning! Welcome to Unpredictable Sandbox Environment for IAP Auto-renewable Subscriptions. My name is Denken, and I’m a confused iOS app developer.

We’ll talk about a number of things today:

  • Sandbox Tester
  • Subscription Management
  • Billing Retry Service
  • App Store Server Notifications

Sandbox Tester

Do you really need to create a sandbox account to start testing? We’ve been pretty vague about this, and we’ll continue to do so. Because you already got it: No need.

Just use your Apple ID, if you have downloaded from TestFlight, or built from Xcode. During the…


Last night, my iPad was updated with the latest iOS X beta. I couldn’t help myself from trying the new features:

“All iPhone apps are now running in Slide Over¹.”

It just worked, period. I opened Spotify for iPhone to enjoy music.

“All iPad apps support both Slide Over and Split View.”

No more fullscreen-only iPad app. So I started working on my next opinion article, with iA Writer on the left side, and Evernote as reference source on the right side.

My editor called me, and it showed as Picture in Picture. We discussed about the draft. She reminded me that:

“iPad is now open to download app from the Web.”

She would like to know what I would comment on this.

“It’s huge! There will be Google…


Evernote 作為你的第二個大腦,2008 年以網路服務模式創立,共同創辦人暨執行長為 Phil Libin。我們曾以為是這樣的歷史。

但其實最早的創辦人 Stepan Pachikov,曾研發用於 Apple Newton 的手寫辨識技術,受啟發後才發想了 Evernote,在 2000 年就註冊網域,2002 年公司開張,2004 年推出 Windows 版,用來幫助人們記憶事物,商標則意指大象的超強記憶力。但他自己後來卻患上帕金森氏症。

相較於當年 Newton 將被停產之際,使用者群聚在蘋果總部外面抗議,Steve Jobs 仍執意要砍掉。可以說 Evernote 其實是 Newton 的後繼者吧。雖然後來也有了 Apple Pencil。

參考資料:

Denken

“Ultimately it comes down to taste.” — Steve Jobs

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store