まだどこにもないアプリを作る

アプリ開発でつまづいたところなどを中心に記事にして行きます。

Xcode

"Designed for iPad on my Mac" で"UIActivityViewController" が失敗する

Xcode26 - iOS 26、macOS Tahoeの"Designed for iPhone on my Mac" だと"UIActivity View Controller" が失敗する現象 解決法 Xcodeの上部にあるのアプリ名をクリックそれからEdit Scheme → Run → Diagnostics → Metal API Validation を オフでできました。…

M1 MacにあるXcodeの "Designed for iPhone" でデバッグしてる時にアプリを消す・再インストールする方法

Apple Silicon M1 Mac以降でできるXcodeの"Designed for iPhone" でデバッグしてる時にアプリを消す・再インストールする方法 ↓ 1. Dockの起動してるアプリを右クリックしてのFinderに表示を選択 表示されたところいにある /Users/xxx/Library/Developer/Xco…

iPhone is not connected Xcode will continue when ~~~'s iPhone is connected. の後にXcodeが毎回クラッシュする問題の解決方法

Xcodeで実機シミュレートした時に高確率で iPhone is not connectedXcode will continue when ~~~'s iPhone is connected. もしくは iPhone is not connectedXcode will continue when iPhone is connected and unlocked. が出た後にCancelボタンを押すと Xc…

PHPickerConfiguration.selection = .orderedが機能しない問題 備忘録

PHPickerで画像の複数選択を実装する際 PHPickerにPHPickerConfiguration.selection = .orderedという設定をしても 非同期で写真を取得するため たまにユーザーが選んだ順番になってくれないという問題が起こった ↓以下のStackOverFlowのC6Silver氏のすばら…

Xcode備忘録 iOS13などのシミュレーターを追加して動かす時に困ったこと

いろいろスクショなど不足してるかも知れませんが 何かしらの参考になりましたら幸いです。 シミュレーターを追加する シミュレーター一覧のある画面 OS Versionでデバッグに使いたいOS選択。 目当てのOSがなかったらDownload more simulator runtimesをクリ…

対処法の一例file '/Users/xxx/Library/Developer/Xcode/DerivedData/ModuleCache.noindex/O077AGJK1JVD/MachO-1JNFAJWZD9YN6.pcm' is not a valid precompiled module file #include <mach-o/loader.h> ^ <unknown>:0: error: could not build Objective-C module 'os'

file '/Users/xxx/Library/Developer/Xcode/DerivedData/ModuleCache.noindex/O077AGJK1JVD/MachO-1JNFAJWZD9YN6.pcm' is not a valid precompiled module file#include <mach-o/loader.h> ^<unknown>:0: error: could not build Objective-C module 'os' の対処法の一例 /Users/xxx/Li</unknown></mach-o/loader.h>…

【SwiftUI】CoreData SortDescriptor を動的に使う。fetchResultsを動的に並び替える,ボタンを押したら並び替える

<読者の想定> Coredataを使ってアプリを作成しており 最初にCoreDataを使うにチェックを入れてアプリを作成し、それを元にアプリを作成している人に向けて書いております。 private var items: FetchedResults<Item> items.sortDescriptors = [SortDescriptor(\Ite</item>…

Swift5 UIKit セルをロングタップして検知 セルのインデックス番号も取得できる方法

teratail.com 上記のサイト様を参考にさせていただきました。 swift5 cellをロングタップした時の動作 override func viewDidLoad() { super.viewDidLoad() //セルのロングタップジェスチャー let longPressRecognizer = UILongPressGestureRecognizer(targe…

【SwiftUI】TextField TextEditorで文字を打つごとに検知2

↓以前書いたこの記事では 【SwiftUI】TextfieldやText Editorで文字が入力されるごとに検知する方法。 - まだどこにもないアプリを作る バインディングの変数が変わることを検知する onChangeモディファイアを使うことで実装しましたが TextfieldやTextEdito…

【SwiftUI】TextfieldやText Editorで文字が入力されるごとに検知する方法。

onChange()を使えばできるようです。 最初に@Stateで変数を定義しておいて、 その値が変わるごとに呼ばれるといった感じです。 import SwiftUI struct SwiftUIView: View { @State private var task = "" var body: some View { Form{ Section(){ TextField(…

Xcode Archive Distributeできない原因の一例 - Macの容量が足りないから

Macのストレージ容量が足りなくてアーカイブができなかったり、Distributeがうまくいっていませんでした。 報告します。

swift AVPlayer・AVFoundationなどで音楽止めずに再生する

以下のコードをViewDidLoad内に置きます。 do { let audioSession: AVAudioSession = AVAudioSession.sharedInstance() try audioSession.setCategory(AVAudioSession.Category(rawValue: "AVAudioSessionCategoryAmbient")) }catch{ print("エラー") } これ…

Swift 一度だけ実行したいアラートの書き方

すっきりしたコードではないし他にやり方があると思いますがこれで一応。 UserDefaultに保存してある値を変更しない限り 1度アラートを出したら2度と出ないアラートを作ることがきます。 let ud = UserDefaults.standard func onceAlert() {//単発アラート v…

Swift エラー Pods/Fabric/run: No such file or directory 一応の対処法

このエラーが出ている人はCrashlyticsを使っている人だと思いますが RunScriptがうまく作動してないのでこのエラーが出るようです。 対処している時間がなかったので 私の場合はCrashlyticsはひとまず使わないことにしました TARGET / Build PhasesのRun Scr…

swift 現在表示されているセルの最後のインデックスを取得 visiblecells

if let cell = tableView.visibleCells.last{ if let visibleIndexPath = tableView.indexPath(for: cell) { print("現在画面上に見えているセル中で最後のセルのインデックス値:", visibleIndexPath) } } お疲れ様です。 [増補改訂第3版]Swift実践入門 ──…

swift systemImageの大きさを変える方法 システムアイコンの大きさを変える SFSymbolのスケールを変える。

ios - Change a SF Symbol size inside a UIButton - Stack Overflow ↑スタックオーバーフローのQ&Aを参考にさせていただきました。 if #available(iOS 13.0, *) { let config = UIImage.SymbolConfiguration(pointSize: 160, weight: .medium, scale: .larg…

Swift 配列にて特定の要素を全て削除する方法

例えば この配列に含まれている5という数字を全て削除したい場合 var array = [0,1,2,3,4,5,5,6,7] array.remove(value:5) ↑このコードだと一つしか削除されません let a: (Int) -> Bool = { $0 == 5 } array.removeAll(where: a) ↑これで全ての5をいっぺん…

building for iOS Simulator, but linking in object file built for iOS, file '' for architecture arm64のとりあえずの対処法、妥協策

見づらくて申し訳ない M1 MacにしてXcodeで既存のアプリをシミュレーターで動かそうとすると現れる のようなエラー,etcの数々 Apple Silicon (M1)のマックだとアーキテクチャが変わったとかで、おそらくそれに対応していないライブラリなどがある場合はうま…

FCM 特定の端末にテストメッセージを送信する方法 iOSアプリ

Firebase Cloud Messagingにて特定の端末にテスト送信する方法 備忘録的ですが参考になれば 1. 新しい通知を選択(テストを作成ではないので注意) 2.テストメッセージを送信を選択 3.通知したいデバイスのトークンを入力してプラスボタンを押す このトークン…

Firebase Cloud Messagingで「キャンペーンで読み込みエラー」が出た場合の対処の一例

私はiOSアプリをリリースしていてPUSH通知を導入しています。 いつものようにPUSH通知しようとしたら こういうふうに PUSH通知を送信しても毎回40件しか送信されないという症状になっていたんですよね。 かなり困っていたのですが結構単純な問題でした。 私…

M1 AppleSilicon Macにてcocoapodsが使えない時に対処した方法

一応書いておきます 基本的には以下のGithubのissueやサイトに書いてあることを実行しました。 github.com armen-mkrtchian.medium.com 1:Finderからターミナル.appの場所を見つけて右クリックで これだけでは終わりません 2:一回ターミナルを再起動して…

flutterでMLKITを使おうとした時のエラーCocoaPods could not find compatible versions for pod "google_ml_kit":  

google_ml_kitは2021/09/06現在 ios10以上でないと使えないようです? まずflutterのプロジェクトのXcodeのプロジェクトを開きます↓ 白いのRunner..xcworkspaceを開く なければRunner.xcdeprojを開く ここからデプロイメントターゲットをiOS10以降にあげまし…

Swift toolbarのbutton、barButtonItemをコードで書いているときに位置を調整する方法

hajihaji-lemon.com こちらのサイト様を参考にさせていただきました。 flexible Spaceはよく目にすることも多いですが 今回のはfixedSpaceです。 下のコードだと let flexibleItem = UIBarButtonItem(barButtonSystemItem: .flexibleSpace, target: nil, act…

【Swift エラー】'GoogleUtilities/GULURLSessionDataResponse.h' file not foundの回避方法一例

プロジェクトに入っているFirebase Admob関連のライブラリが原因です プロジェクトに入っているFirebase Adomb関連のPodを全て一回削除します。 削除するには Podfileの文をコメントアウトするだけです。 #pod 'Firebase/Analytics' #pod 'Firebase/Crashlyt…

【swift】 配列から空の要素""を削除

swift配列から空の要素""を削除します。 削除するというよりフィルターをかけています。 下記の配列は 1番目-空 2番目-a 3番目-空白 4番目-タブ になってます。 var arr: [String] = ["","a"," "," "] arr = arr.filter { !$0.isEmpty }//空の要素を削除 pri…

【Swift】特定の文字を削除する方法

【Swift】特定の文字を削除する方法 なぜかいい感じに特定の文字を指定して削除するメソッドが見つからなかったので代わりに置換メソッドを使いましょう。 var str2 = "coffee" str2 = str2.replacingOccurrences(of: "f", with: "") print(str2) 出力結果 -…

【Swift】iOS13からのSystemIcon SFSymbolの太さをコードで変更する方法(UIKit)

こちらのサイト様を全面的に参考にさせていただきました。 How to use system icons in your app - free Swift 5.4 example code and tips SymbolConfiguration(weight:で変えることができます。 //SFSymbolの太さを指定 let boldConfig = UIImage.SymbolCon…

【Swift】BarButtonItemにシステムアイコンを指定する。UIBarButtonSystemItem

意外と手こずりました。 UIBarButttonItemとUIBarButtonSystemItemは違うようです。 ↓がUIBarButtonSystemItemをナヴィゲーションアイテムの右端のボタンに配置するやり方です。 //左上のバーボタンをシェアボタンに let myLeftButton = UIBarButtonItem(bar…

【Swift】フォトライブラリに何らかの変更があったときに検知する方法

Photosフレームワークをインポート import Photos まずPHPhotoLibraryChangeObserverを追加(継承) class ViewController: UIViewController,PHPhotoLibraryChangeObserver{ エラーの赤丸を押せば勝手に出てくる func photoLibraryDidChange(_ changeInstance…

【Xcode】error: Abort trap: 6 (in target '' from project '') のとりあえずの対処法

error: Abort trap: 6 (in target 'プロジェクト名' from project 'プロジェクト名') でなんかわからないけどビルドできなくなってしまいました。 ほぼ心当たりはありません。 Xcode Macの再起動試しましたがダメでした 解決法は こちらのサイト様参考にしま…