You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert
Appleは日本時間7月29日、「iOS 16」「iPadOS 16」「tvOS 16」「HomePod 16」「macOS 13」の2番目のパブリックベータ版を登録者向けにリリースしました。 開発者向けのDeveloper Beta4に相当します。 追記7月30日:watchOS 9 Public Beta2が利用可能に 新たにリリースされたバージョン 今回確認された新機能や変更点 これまでに確認されている機能追加や変更点 パブリックベータについて iOS 16 Public Beta 2 新たにリリースされたバージョン iOS 16 beta 4 (20A5328h) iPadOS 16 beta 4 (20A5328h) macOS 13 beta 4 (22A5311f) tvOS 16 beta 4 (20J5344f) Xcode 14 beta 4 (14A5284g) wa
はじめに こんにちは、id:FM_Harmonyです。 今回は自身のiOSアプリ開発における、Xcode周りの体験談についてまとめてみました。 iOSアプリ開発にはIDEとしてXcodeを使うのが一般的だと思いますが、 元々Eclipseでサーバサイドの開発に携わっていた身としてXcodeを使った開発は新鮮なものでした。 そんな体験談の中から、今回は3つを記事にしています。 この記事を読んで、「こんな使い方があったのか」といった気付きを得たり、「あるある」と共感いただけたり、 逆に「こういう使い方もあるよ」といったご意見をいただけたりしますと幸いです。 Xcodeの紹介やインストール方法については、RAKUS Developers Blogに詳しい記事が投稿されています。 こちら記事もぜひご覧ください。 ・【超入門】Xcodeのインストール方法-iosアプリを実機にインストールするまで -
Xcode 11.2ではApp Store Connectにアップロードできない つい先日iOSアプリをリリースする機会がありましたが、2019年11月7日以降、Xcode 11.2でビルドしたiOSアプリをApp Store Connectにアップロードできなくなりました。 Xcode Organizerからアップロードをしてみると、アップロード中に下図のようなエラーが発生します。 Xcode 11.2.1へのアップデートが必要! 上図のエラーに書かれている通り Xcode 11.2.1でビルド・アップロードする必要があります。 Xcode 11.2.1はGMが公開された状態でしたが、2019年11月13日(水)に正式リリースされています。 「Xcode 11.2.1」Mac向け最新版をリリース。UITextViewアプリがクラッシュする問題を修正 | moshbox なお、Xcode
こんにちは。CATS Productivity Team の iOS 担当 青山 (@ra1028fe5) です。 最近は同チームのメンバーが海外 旅行 カンファレンスに行っている中、黙々とデスクで仕事しています。 今回は iOS 開発におけるパッケージ管理についてです。 ライブラリについてだけではなく、開発に利用する Swift 製ツールの管理についても軽く触れます。 最近では Xcode と Swift Package Manager (libSwiftPM) の統合により、これがデファクトスタンダートになっていく事が前提ですが、まだしばらくはサードパーティツールを利用していくことになる理由と個人的に気に入っている管理方法を書こうと思います。 [Disclaimer] ツール自体の優劣を説いた内容ではありません はじめに 個人的な浅い感覚ですが、iOS の開発は他のプラットフォームの開
こんにちは、こばやしよしのり @yoshiii514 です。 Xcode をアンインストール(削除)する方法です。Xcode をアンインストールすると Swift もアンインストールされます。 アプリケーションから Xcode をゴミ箱へアプリケーションにある Xcode アイコンでサブメニューを表示して[ゴミ箱]を選択するとアンインストールされます。サブメニューは、「control」キー+「クリック」で表示されます。 これで Xcode は削除されます。 あとで、バージョンの異なる Xcode をインストールして使いたい方はここまでの手順で十分です。 ですが、Xcode を使っていたときに作られたファイルも含めて完全に削除しないと気持ち悪い!という方は、次の手順が必要です。 関連ファイルも含めて完全に削除する�Library フォルダ配下に、Xcode のファイルが作成されていますので、
Mac App Storeで配信予定の「Xcode 15」のサイズは50%小さくなり、より素早く導入可能なるそうです。詳細は以下から。 Appleは日本時間2023年06月05日より、世界開発者会議(WWDC23)を開催していますが、Appleが先程更新したAppleプラットフォーム用IDE「Xcode」のプレビューページによると、次期「Xcode 15」はMac App Storeでの配信サイズが50%縮小されるそうです。 Xcode 15 is now 50% smaller on the Mac App Store, with downloadable simulator runtimes for all platforms. Enhanced code completion helps you write safer code faster, now referencing all
6月に開かれたWWDC19において、アプリ開発者の間で最も重要な発表だとされたのが「SwiftUI」と呼ばれるユーザーインターフェイスデザインのためのフレームワークだ。SwiftUIの詳しい説明をしていく前に、1つの可能性として「SwiftUIの登場で今後何が変わるのか?」という具体的なヒントを、WWDC19の基調講演から振り返ってみよう。 WWDC19の発表のなかでも目玉と目された「SwiftUI」 SwiftUIとProject Catalyst、Apple Arcadeの関係 昨年のWWDC18ではまだ名前が与えられていなかったものの、iPadアプリをMac向けにビルドして利用できる技術が発表された。今年のWWDC19で「Project Catalyst」という名前が明かされた。 iPhoneやiPad用アプリをMacに移植しやすくする技術が「Project Catalyst」だ P
はじめに 自分のXcodeプロジェクトではライブラリ管理を徐々にCocoaPodsからSwift Package Manager(以下 SPM)へ移行してるんですが、CocoaPodsの時にやっていたのと同じようなBitriseのキャッシュ設定をSPM用にも入れたいなと思いちょっと調べてみました。 SPMで取ってきたパッケージをBitriseでキャッシュさせるのどうやるんかなぁ🤔— asmz (@_asmz) 2020年10月19日 で、先に言ってしまうと、調べた結果こちらの記事がとても参考になった(と言うかCIサービスがCircleCIなところ以外はほとんどこれと一緒)ので、気になる方はこちらと併せてご確認ください。 uptech.team 今回やりたいこと CocoaPodsでは、落としてきたライブラリたちが全て./Podsに入るので、BitriseのCache:Pushでは以下のよ
Xcode11では、このUIScene APIのライフサイクルを使用したものが、デフォルトテンプレートに採用されています。現時点では、UIApplicationベースでも問題ないものの、UIApplicationのUIに関するメソッドが非推奨となっていることから、今後このシーンの使用が一般的になると思われます。現時点でのメモを共有したいと思います。 UISceneとは iOS12 でのアプリケーションのプロセスは1つで、それに対するUIインスタンス(ウインドウ)も1つでした1。iOS13(UIScene)以後のアプリケーションのプロセスは1つで、それに対するUIインスタンス(ウインドウ)は複数です。マルチウインドウと言います。開発者視点では、そのウインドウをシーンと呼びます。UIScene API とは、ひとまずアプリをマルチウインドウ(マルチシーン)に対応するAPIと言えそうです。 ユー
こんにちは、CX事業本部 Delivery部の若槻です。 iOS アプリケーションを開発する際には、アプリをシミュレートされたデバイス上でデバッグできる Simulator を使うと便利です。 Simulator は私も普段の iOS アプリ開発でよく使っており、また Tips を紹介するブログもいくつか投稿しています。 FlutterアプリをGoogle Chrome/iOS Simulatorでデバッグする | DevelopersIO Flutterアプリを複数台のiOS Simulatorデバイスで同時に実行してみた | DevelopersIO flutter_nearby_connectionsによるP2P通信をiOS Simulatorのデバイス間で試してみた | DevelopersIO しかし、アプリケーションが端末のカメラや通信機能などハードウェア機能を利用する場合は、
UIScrollViewやUITableViewは標準的なスクロール機能を持った非常に便利なUIツールです。 しかしAuto Layoutで制約を付けるときには、外側の制約と、内側の制約とを考える必要があるので、少しややこしくなったりします。 画面上の見た目のサイズを決めるのが外側で、UIScrollView.frameと関連づきます。 スクロールする中のコンテンツのサイズを決めるのが内側で、UIScrollView.contentSizeと関連づきます。 そして、スクロールする中のコンテンツのサイズは、テキスト量に応じて変わります。 テキスト量が外側のサイズを超えない程度であれば、スクロールはしません。 逆にテキスト量が多ければ多いほど、スクロールする長さは伸びます。 Storyboard あらためて上の図のようなStoryboardの例で説明します。 下3分の2くらいの領域にUIScr
はじめに レンダリングループとはアプリが起動している間常に起動している処理です。 例えば、タッチイベントはOSからアプリに伝えられ、アプリはUIの変更をOSに伝え、OSがフレームを最終的にレンダリングして私たちの目に見える変化となって現れます。 SwiftUIはこの内部実装がよく隠されていて、そうしたレンダリングループのことを一切考えずに次のようにViewを構築できます。 struct TestView: View { var body: some View { VStack { Image(systemName: "face.smiling") Text("Hello World!") } } } このようにレンダリングに関する意識を関心から外すことで、私たちはViewの構築に集中することができます。一方で完全にレンダリングを意識の外に追いやると、コミットヒッチやレンダーヒッチなどユーザ
Appleは日本時間12月18日、「iOS 15.3」「iPadOS 15.3」「watchOS 8.4」「tvOS 15.3」の最初のベータ版を開発者向けにリリースしました。 また、「macOS 12.2」の最初のパブリックベータ版をベータ登録者向けに公開しています。 追記12月21日:「iOS 15.3」「iPadOS 15.3」「watchOS 8.4」のパブリックベータ版公開 新たにリリースされたバージョン 今回確認された新機能や変更点 これまでに確認されている新機能 パブリックベータについて iOS 15.3 Public Beta 新たにリリースされたバージョン iOS 15.3 beta (19D5026g) iPadOS 15.3 beta (19D5026g) watchOS 8.4 beta (19S5525f) tvOS 15.3 beta (19K5527e) Xc
iOS純正のメッセージアプリでは、LINEスタンプより手軽にスタンプを公開することができます。 有料のAppleデベロッパープログラムに登録している必要がありますが、スタンプ画像のセットがあれば、プログラミングなしでメッセージスタンプ用アプリとしてストア公開することができます。 LINEスタンプを作ったついでにiMessageステッカーアプリも出しちゃえってことができるわけですね。 Xcode new project 「Sticker Pack Application」というテンプレートを使用してアプリを作成すると、画像をドラッグ&ドロップで追加していくだけの作業でアプリを作ることができます。 Sticker Pack Applicationで作成したスタンプをメッセージアプリで使うときのイメージは以下のとおりです。 iOSメッセージアプリのイメージ LINEスタンプと同様、グレー背景のメ
No receipt for 'com.apple.pkg.CLTools_Executables' found at '/'. No receipt for 'com.apple.pkg.DeveloperToolsCLILeo' found at '/'. No receipt for 'com.apple.pkg.DeveloperToolsCLI' found at '/'. gyp: No Xcode or CLT version detected! ←「ココ」 gyp ERR! configure error gyp ERR! stack Error: `gyp` failed with exit code: 1 gyp ERR! stack at ChildProcess.onCpExit (/Users/mac/.nodebrew/node/v12.16.2/lib/nod
過去数か月に開催された世界各地のApple Vision Proデベロッパラボで、AppleのエキスパートがvisionOSに関するさまざまな疑問にお答えしてきました。エンティティ、イマーシブ空間、コリジョンシェイプなどの新しい概念に関するインサイトを含む、よくある質問への回答を紹介します。 ジェスチャを使ってエンティティを操作するにはどうすればよいですか?ジェスチャベースのエンティティインタラクションを有効にする場合、次の3つの重要な要素があります。 エンティティにInputTargetComponent(英語)があること。これがないと、ジェスチャ入力が受信されません。 エンティティにCollisionComponent(英語)があること。CollisionComponentの形状(英語)は、ジェスチャが実際にヒットする領域を定義するため、エンティティとのインタラクションのためにはコリジ
手順 従来のDeveloper Disk Image(DDI)を再配置する方法がiOS 17よりできなくなりました。 代わりに、以下のコマンドをターミナルで実行して、Xcode 14.3.1を起動します。 CoreDeviceとDDIを更新するために、Xcode 15のインストールは必須となります。ご注意ください。 すると、(CoreDevice)と付いたデバイス名が表示されて選択できるようになります。 簡単になりましたね。 環境: macOS Ventura 13.4.1, Xcode 14.3.1, Xcode 15 beta 4 CoreDeviceとは? CoreDeviceとは、iOS 17以降のデバイスとの通信に使用される新しいデバイススタックです。 CoreDeviceとでは、(OSリリースごとではなく)プラットフォームごとに1つのDDIがあり、この同じデバイススタックは、シ
MacBook Proを使用中に音楽などを再生していると音割れが発生する現象がiOS開発している人たちの中で起きている(同僚でも2、3人同じことを言っていた)らしいけど、これはどうやらiOS Simulatorが原因らしい。 自分のMacBook Proでも昨年からいつの間にかこの現象が現れ始めて、OSを再起動しても治ったり治らなかったりで本体の故障かと思って諦めていたのだけど最近なぜかずっと調子がよくて不思議だった。しかし今日久しぶりにiOS Simulatorを起動してみたら、さっきまで調子良くYouTubeを再生してくれていたのに急にノイズが混じるようになってこの現象に気づいた。直近ではRubyを書いていることが多かったからiOS Simulatorを起動してなくて調子良かったのだと思う。 Twitterで聞いてみたら他にも同じ現象に遭遇している人iOS開発者の人たちがいたので正しい
これは Swift Advent Calendar 2019 24日目のエントリーです。 昨日23日は Moto0124 さんの CGAffineTransformを知る でした。 はてなエンジニアAdvent Calendar 2019での Deletable Table with TextField on SwiftUI に続いて、今回も SwiftUI ネタです。 そもそもSwift Playgroundsって? ここでいう Swift Playgrounds はXcodeに付属のPlaygroundではなく、iPadアプリとしての Swift Playgroundsを指しています。 以降、 Swift Playgrounds は 「iPadアプリのSwift Playground」、 Xcode Playground はXcodeに付属のPlaygroundと使い分けます。 ドキュ
GitHub Actions で Flutter アプリの TestFlight 用バイナリ(ipa)をビルドする方法を調べると「Automatically manage signing」 を無効にしてビルドする記事が出てきます。 オプションを有効にしたままビルドする方法が見つからなかったので調べました。検証は Flutter で行いましたが、Flutter を使わない iOS ネイティブのプロジェクトでも同様の手順でビルドできると思います。 Automatically manage signing と Cloud signing Automatically manage signing について改めて調べると、Xcode13 以降では Automatically manage signing を有効にすると Cloud signing という機能が使われるようです。 Cloud sign
M1 Macで既存のReact Nativeプロジェクトを開発する環境が整うまでにしたことをまとめました。 Xcodeをインストール Mac App StoreからXcode 12.2をインストールします。 Homebrewをインストール 公式サイトにあるインストールスクリプトを実行すると、以下のようにRosetta 2を使用するか、他のインストールオプションを勧められます。 Homebrew is not (yet) supported on ARM processors! Rerun the Homebrew installer under Rosetta 2. If you really know what you are doing and are prepared for a very broken experience you can use another installat
はじめに 久々に自分のMacでGit使おうとしたら以下のエラーで動かなかったので、対処方法をメモしておきます。 xcrun: error: invalid active developer path (/Library/Developer/CommandLineTools), missing xcrun at: /Library/Developer/CommandLineTools/usr/bin/xcrun 環境 macOS Catalina10.15.3 git version 2.21.1 (Apple Git-122.3) 対処方法 Xcodeの開発者ツールが見当たらなくなってしまっていることが原因らしいので、ターミナルで以下を実行すると直りました。
どうも、koogawa です。 今年は Stack Overflow の reputation がついに 6,000 を超えました🎉 そんなわけで、とうとうiOS アドベントカレンダーも最終日ですね! 今年も昨年に引き続き「今年Stack Overflowに投稿されたiOSに関する質問」の中で、Vote数(投票数)が多かった質問、つまり デベロッパーから支持の多かった質問 をまとめてみました。 それでは10位から順に見ていきましょう! ※2019年12月16日(日本時間)時点での情報を元に集計しています 第10位:Xcode 10.2 で iOS 10 未満のシミュレーターを動かそうとするとクラッシュする問題(61票) 第9位:Xcode 11.2 で Module compiled with Swift 5.1 cannot be imported by the Swift 5.1.2
iOSアプリをApp Storeではなく、Webサービスなどからベータ版のアプリを配信する方法を Ad hoc 配信といいます。 Ad hoc配信はiOSアプリ開発の黎明期から行われておりますが、事前にデバイスを登録したり、Provisioning Profileをアップデートしたり、と配信環境のメンテナンスが煩雑になりがちです。 この記事では、 Bitrise などのCI/CDサービスを利用して、Ad hoc配信ではなく、Testflightで継続的に配信する方法を紹介します。 特にBitriseを利用して、App Store Connect API経由でTestFlightにアップロードするのは結構ハマりながら作業することになったので、この記事が参考になれば幸いです。 Bitriseでの配信設定をとりあえずしりたい方は、 ここ までジャンプするとよいでしょう。 2022/01/26更新
UIScrollViewはAutoLayoutのみでスクロールできるよう設定できますが、 Xcode 11でその方法が少し変わりました。 作りたいもの 画面幅と同じサイズのViewを2枚横に配置し、スクロールできるようなものを作ります。 Xcode 10.3 違い Xcode 11では Content Layout Guide と Frame Layout Guide が追加されています。 Xcode 10.3(今まで)ではScrollViewの直下にViewを配置、そのViewの子としてスクロールさせたいViewを配置し、制約をかけることでスクロールできるようになっていました。 Xcode 11ではScrollViewの直下にViewが Content Layout Guide と Frame Layout Guide に置き換わったようです。 そのため、Xcode10.3(今まで)でS
はてなブックマークチームのid:nakiwoです。ある日、チームのメンバーから 「Simulatorで複数の項目をドラッグする方法がわからない」 という質問がありました。実デバイスでの方法は知っていたのですが、Simulatorについては私を含めチームの誰もやり方を知らなかったので調べてみました。 複数の項目をiPadでドラッグする手順 そもそもタッチデバイスで複数の項目をまとめてドラッグすることになじみのない方も多いと思います。Appleのサポートページの「iPadでドラッグ&ドロップして項目を移動する」によると、次のように手順を説明しています*1。 複数の項目を選択して移動する 選択する最初の項目をタッチして押さえたままにして、少しだけドラッグしてから、それを押さえたままにします。 最初の項目を押さえたまま、別の指で追加の項目をタップします。選択した項目の数がバッジに表示されます。 す
Merpay Advent Calendar 2020 の19日目は、メルペイ iOS チーム EM(Engineering Manager)の 玉城がお送りします。 2020年はメルペイではBackend/Frontend/iOS/Androidの領域で、より素早いリリースイテレーションを達成するためにリグレッションテストの自動化が推進された年でした。 また、これまでスプレッドシートなどで管理されていたテストの項目、実績管理などもTestRailというテスト管理サービスに移行させることでテストの自動化との親和性が上がりつつあります。 私が持つiOSチームではリグレッションテストをXCUITestで自動化する取り組みをしていました。本記事ではXCUITestで作成したテストがどのように管理・サービス連携されているのか、そして連携するデータの元となっているResult Bundleの構造や、
はじめに こんにちは。CX事業本部の平屋です。 本記事では、Xcode 11に統合されたSwift Package Managerでライブラリを管理する手順を紹介します。 検証環境 macOS Catalina 10.15.2 Xcode Version 11.3 Swift Package Managerとは Swift Package ManagerはSwift用の公式のライブラリ管理ツールです。Swiftで書かれており、バージョン3.0のSwift以降に同梱されます。CocoaPodsと比べると新しめのツールです。バージョン11以降のXcodeではライブラリの管理をXcodeのUIで実行できるようになりました。CocoaPodsやCarthageのように、明示的に設定ファイルを作成したりコマンドを実行したりする必要がありません。 ライブラリがSwift Package Manager
I am trying to get a large (and working on Xcode 11!) project building in Xcode 12 (beta 5) to prepare for iOS 14. The codebase was previously in Objective-C, but now it contains both Objective-C and Swift, and uses pods that are Objective-C and/or Swift as well. I have pulled the new beta of CocoaPods with Xcode 12 support (currently 1.10.0.beta 2). Pod install is successful. When I do a build, I
デバッグの際などにiPhoneの通信速度を変更したい場合、iPhoneの設定アプリにあるNetwork Link Conditionerを使用することがあると思います。 これはとても便利なのですが、使用中においてそれを表す表示がないこともあり、切り忘れることがよくありました。 そこで、Xcode11かつiOS13からはiPhoneのNetwork Link Conditionerを切り忘れることがないように、通信速度を変更できる方法が提供されているので紹介します。 iPhoneをMacに接続しXcodeを開き、Xcode > Window > Devices and Simulatorsを選択します。 開いたウィンドウ内にDEVICE CONDITIONSというセクションがあり、そこでConditionをNetwork Linkにすることによって、通信速度を変更することができます。 ここで
Xcodeで作成したバイナリをAppStoreConnectにアップロードしたところ、アップロードは成功したが、メールでITMS-90626エラーの通知がきた。 (環境:XCode 12.2 / macOS Catalina) その時のエラーメッセージは以下のとおり ITMS-90626: Invalid Siri Support - Localized title for custom intent: 'Configuration' not found for locale: ja ITMS-90626エラー iOS14から追加されたWidgetKitを追加したことが影響していたということが分かりました。 Siriに関する実装はしていないはずなのにSiri関連のローカライズに関するエラーのようです。 WidgetKitをターゲットに追加する時のウィザードで、Configurationを有
CocoaPodsの概要CocoaPodsの導入手順「pod install」と「pod update」の違いPodfileとPodfile.lockの違いPodfile.lockを使う理由についてCocoaPods導入後の取り扱い方 CocoaPodsとは、iOSアプリ開発で使用するライブラリの管理を簡単にするためのツールです。 CocoaPods公式サイトより引用します。 [原文] CocoaPods is a dependency manager for Swift and Objective-C Cocoa projects. It has over 91 thousand libraries and is used in over 3 million apps. CocoaPods can help you scale your projects elegantly. [日本語訳
プロジェクトでは、往々にして開発環境とステージング環境、本番環境のように、動作環境を変える必要があります。特に通信など外部連携が関わる場合には、接続先を変えたりします。 そこでプログラムでif文(ifdef文)を書くことなく、開発者がビルド時に意識することなく、環境に応じたプロダクトができて欲しいものです。 ここでは従来Objective-Cでのスマートな設定方法を振り返りつつ、Swiftで踏襲する方法を説明します。 Xcode6より前にプロジェクトを新規作成するときには、pchファイルが自動生成され、そこにプリプロセッサマクロの定義などを記述する習慣がありました。(Xcode6以降は手動で設定する必要がありました) それを応用し、環境ごとに変わるdefine変数もここで定義するようになりました。 ターゲットを環境ごとに分けた具体例で説明します。 TARGETS:sample, sampl
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く