iOS関連のことを調べてみた2020年11月05日

iOS関連のことを調べてみた2020年11月05日

Apple Developer と Google Play の公式テスターについて

## 概要

久々に調べて毎回ググるのが面倒だからここにまとめる。
iOS/Androidのアプリ開発で、公式のテスター登録について次の内容となる。

※一部公式の内容を抜粋しているため、アップデートがあった際に詳細が異なる可能性があり、この記事をそのまま鵜呑みにせず必ず公式ページを確認するようにお願いします。

## [TestFlight](https://developer.apple.com/jp/testflight/)

 lockup-hero-large_2x.png

### 内部テスター
* チームでAccount Holder、Admin、App Manager、Developer、Marketingのいずれかの役割を担うメンバーを**最大100人**まで追加可能。

### 外部テスター
* Eメールアドレスを使用するか、任意のユーザーに対してAppのテストに参

元記事を表示

[Flutter] [Navigator] 次画面へ複数の値を渡す方法

Navigatorによる画面遷移時に次画面へ値を渡す方法です。
SQLiteやSharedPreferencesで保持する必要はなく、ライトに値を渡したいときにご参考になればと思います。

渡したい値が1つの場合

変数 hogeを次画面に渡す例

第3引数のargumentsに変数 hoge をセットします。

遷移元

“`dart

String hoge = ‘hoge’;
Navigator.pushReplacementNamed(
context,
‘/next_path’,
arguments: hoge
);
“`

遷移先

“`dart

final String hoge = ModalRoute.of(context).settings.arguments;
“`

渡したい値が複数ある場合

変数 hogeId, fuga を次画面に渡す例

渡したい値をまとめたクラスを作成し、そのオブジェクトを渡します。
名前はなんでも良いので、ViewAToBArguments というクラス名で以下のように作成すると

元記事を表示

iOS記事まとめ8

MVVMの基礎概念と実用についてそれぞれわかりやすかった記事

https://blog.77jp.net/development-rules-for-mvvm-that-a-beginner-should-be-conscious-of

CombineでHTTP通信を実装する
https://dev.classmethod.jp/smartphone/iphone/use-combine-for-http-networking/

Swift4.1からnil要素を除いた配列を生成するArrayのflatMapメソッドは
compactMapメソッドにリネームされたと言う話
https://qiita.com/amarillons/items/e897ca495470963249fe

WebViewの戻るボタン(イベントをフックする方法など)

Swiftの予約語一覧
https://q

元記事を表示

iOS記事まとめ7

Lottie(アニメーション)
https://lottiefiles.com/

UIBezierPath(線の描画)
https://program-life.com/648 
https://dev.classmethod.jp/smartphone/iphone/play-uibezierpath-1/

Swiftのunittest
https://qiita.com/s-harada/items/5a8c12b0c456d155ba53

AutoLayoutの制約を使ったアニメーション
https://qiita.com/roana0229/items/6a3272151262ea89e9ff

CABasicAnimation(重い処理のアニメーションに向いている)

[iPhone] CABasicAnimationを使たアニメーション


https://developers.cyberagent.co.jp/blog/archives/16638/

Appleのアプリ公開まで
https://qiita.com/kenny_J_7/items

元記事を表示

iOS記事まとめ6

RxSwiftとMVVMの登場人物
https://gist.github.com/mironal/9eead7a5d812174cec238d68615f1dd6

RxSwiftに苦手意識がある人向け

PromiseKit(非同期処理)
https://github.com/mxcl/PromiseKit

SVProgressが使えなくなる
https://qiita.com/edm17/items/a4b7163201c779895de3

KickstarterのMVVM
https://qiita.com/muukii/items/045b12405f7acff1a9fd

SwiftUIチートシート
https://fuckingswiftui.com/

UXデザイントレンド
https://note.mu/ryoheey_0417/n/nd427ffef1bc3#weGx6

流体インターフェイスを構築するアニメーション
https://medium.com/@nath

元記事を表示

iOS記事まとめ5

Macのストレージ圧迫のシステム欄の犯人
https://qiita.com/reikubonaga/items/48987d35fb10b7de6bcc

iOSのアーキテクチャ比較サンプル
https://medium.com/@rockname/clean-archirecture-7be37f34c943

Macのカーソル強制バインディング
https://qiita.com/saboyutaka/items/489ed2ffe4c1187b65a7#%E4%BB%96%E3%81%AB%E3%82%82%E3%81%84%E3%82%8D%E3%81%84%E3%82%8D

Macのカーソル移動ショートカットなど
https://kukka.me/mac-arrowkey/

SwiftUIでMapKit
https://www.hackingwithswift.com/books/ios-swiftui/advanced-mkmapview-with-swiftui
https://www.dev4app.com/archives/58346305-how-to-fo

元記事を表示

iOS記事まとめ4

Flutterチャットアプリを支える技術
https://kwmt27.net/2020/03/26/the-technology-behind-flutter-chat-app/

(可愛い)Flutter入門
https://priceless-bardeen-f24139.netlify.app/

良いコードの書き方
https://qiita.com/alt_yamamoto/items/25eda376e6b947208996

RxSwift入門 非同期処理 
https://qiita.com/k5n/items/98aaf84fc164f7a5502c#observablecreate

Swiftにおけるclassとstructの使い分け

RxSwiftでsubscribeをネストされると困る
https://qiita.com/yimajo/items/393ec9b3b445ec170ce4

Flutt

元記事を表示

iOS記事まとめ3

SwiftでCore MIDI
https://qiita.com/yohki/items/cb8820026730c7729a2e

Flutterのパフォーマンス改善
https://note.com/shogoyamada/n/n3b752f2adf2e

ARKitの入門者向け記事まとめ
https://techpartner.jp/blog/category/ar%e3%82%a2%e3%83%97%e3%83%aa%e9%96%8b%e7%99%ba

booleanを返却するメソッド名、変数名の付け方
https://tinyurl.com/yyrp4a5x

iOS14で追加されるUIコンポーネントの使い方
https://qiita.com/MaShunzhe/items/a4db494b1c07c9e5b5ba

SwiftUI LazyVGrid/LazyHGrid
https://qiita.com/H_Crane/items/2e8e883685b976ec8555

Swift、Dateの王道
https://qiita.com/rinov/items/bf

元記事を表示

iOS記事まとめ2

FlatIcon
https://www.flaticon.com/search?word=Covid&style_id=15
このサイト1つでアイコンに困らなくなる
色もサイズも自分好みで取得可能

売れるアプリにするためにした工夫(UXノウハウ)
https://note.com/toconakis_tech/n/nda6cae85e410

いらすとやでわかるDI(iOSじゃないですが)
https://qiita.com/keidroid/items/7f0112502a08e2107c67

メモリリークをXcodeでチェックする
https://dev.classmethod.jp/articles/ios-memory-leak-check-and-prevent-190508/

associatedTypeのあるprotocolにキャストする
https://medium.com/finc-engineering/casting-to-protocol-having-associatedtype-e5854994a97f

Flutter Providerの使い方と解

元記事を表示

iOS記事まとめ

Flutter学習手順
https://medium.com/flutter-jp/flutter-learning-c5640c5f05b9

SwiftUIの@がついてるやつのまとめ的な記事
https://qiita.com/shiz/items/6eaf87fa79499623306a

iOSとmacOSアプリで知っておくべき違い

DispatchWorkitemによる非同期処理のキャンセル処理
https://qiita.com/umireon/items/f2cf44621070e749d73e

SceneKit(ARKit)のパーティクルシステムについての紹介記事
https://qiita.com/kboy/items/a1cd8dff40dff45d5b9e

↑の詳細パラメータなど

Xcode12のアップデート内容

元記事を表示

Vue3ベースのIonic-Vue(β)で実機デバッグするまで。

Vue3が発表されてIonic-Vueがβで公開されて少し経ったのでどんなもんか触ってみました。
諸事情あってWindowsで開発環境を構築していますがMacでもほぼ差異なく動きました

ionic/cliをglobalにinstallします。

“`shell
npm install -g @ionic/cli@testing
“`

my-appはプロジェクト名なので任意に

“`shell
ionic start my-app tabs –type vue –tag vue-beta
“`

1分程待つと

“`shell
Your Ionic app is ready! Follow these next steps:

– Go to your new project: cd ./vocbook
– Run ionic serve within the app directory to see your app in the browser
– Run ionic capacitor add to add a native iOS or Android proj

元記事を表示

[Swift5]スプラッシュ画面の作成方法

## スプラッシュ画面とは
アプリケーションを起動した時に表示される画面をスプラッシュ(Splash)画面、またはローンチスクリーン(Launch Screen)と呼びます。アプリケーションにおいては、ユーザーが操作することのできない数少ない画面です。

例を挙げるとtwitterやLineのアイコンが中央に表示されるアノ画面ですね。

デフォルトではアプリケーションを立ち上げた時に真っ白な画面が表示されるようになっております。

## 作成方法
スプラッシュ画面はXcodeの`LaunchScreen.storyboard`から作成できます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/643372/bdec5d02-33ae-6877-3ae7-2535d292cf42.png)

このようにviewに色をつけてみましょう。そうすると。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0

元記事を表示

[iOS]Swiftでインスタのような加工アプリを作ってみた

Swiftで加工アプリを作ってみました!

概観は以下のGifの通りです。
![加工アプリ.gif](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/848369/2e6a317f-2b7b-20e1-8bfe-b92bfaa93e42.gif)

1. 画像をセットする

まずプロジェクトを作り、Main.storyboardに移動した後、View、UIImageView、ボタンを置いていきます。
最初にViewを上、右、左に0、高さを200。次にUIImageViewをViewの中に入れるのですが、別にレイアウトはお好きなようにお願いします。下のボタンは雰囲気で置いているだけなのでこちらもお好きなようにカスタマイズしてください。
それと、UIImageViewの上に雰囲気で画像を貼っているのですが、画像を何か設定しないと空白のように見えるので何かセットしておいた方が分かりやすいです。

![スクリーンショット 2020-11-03 10.19.18.jpg](https://qiita-image-store.

元記事を表示

[Swift]UITextFieldにnilと” “の違いを教えられた

先日nilと””(から文字)の違いを目の当たりにしたので記録しておきます。

# 起こった出来事

メッセージを入力するためのUITextField(`textField`)と、それを送信するためのボタン(`sendButton`)
を実装していました。
![スクリーンショット 2020-11-03 18.56.09.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/468821/b7ae6db1-d297-4a47-7fc2-7756fa42738d.png)

ここで、textFieldに値が入ってないと意味がないので、送信ボタンはtextFieldに値が入っている場合に限り、使えるように設定しようと考えました。実装は以下の通りに

“`swift

@objc func textFieldDidChange(sender: UITextField) {
if textField.text == nil {//この行に注目
sendButton.isEn

元記事を表示

【改良版】iPhoneショートカットでシステム音量を微調整する

以前投稿した[iPhoneショートカットでシステム音量を数値で指定する](https://qiita.com/benzene/items/682c447ce0713b9bea6f)について進展がありました。
**iOS14において現在の音量情報を取得できるようになった**ため、現在の音量の情報をもとに音量を調整できるショートカットを新たに作成しました。

#現在の音量情報の取得
デバイス > 現在の音量を取得 から音量の情報を取得することができます。
最大値が**1**、最小値が**0**で出力されるようになっており、**0.001刻みの理論上1000段階の制御**が可能です。そのため、かなり細かく微調整することができます。~~おそらく0.001の違いを聞き分けられる人はいないと思いますが…~~
一方、サイドの音量ボタンで**0.0625**刻みで変化します。つまり、サイドボタンでは1÷0.0625=**16段階**の調整が可能です。やはり16段階しかないのは微調整が効かないので個人的にはかなり使いにくいです。

#ショートカットの概要
早速ショートカットの概要に移ります。
今回は音

元記事を表示

【第2回】初心者二人で0から麻雀アプリ開発

[第1回の記事はこちら](https://qiita.com/RTkd59/items/3968bff9a1d9982cd1db)
交互にそれぞれのアカウントで記事を書いていきます。

#第2回会議(2020年10月31日)
麻雀に関係するiosアプリを作ろう!!そんな感じで始まったプロジェクト第2回目の会議

##アプリの概要
!!!統合型麻雀成績管理ツール!!!
とかっこつけて書きましたが、要するにアプリひとつでフリー・セット麻雀の両方の成績を管理出来るアプリが目標です。

##開発ツールの追加
[Slack](https://slack.com/intl/ja-jp/)と[Trello](https://trello.com/ja)を導入しました。
Slackは多機能チャットツールで、話題ごとのチャットや、ファイル共有などが簡単にできるのが利点(らしい)です。
私の所属する研究室に導入するかもということで、じゃあこっちのプロジェクトにも使っちゃえ!と思い切って導入しました。
trelloはタスク管理ツールで、プロジェクトメンバーで共有できるToDoリストや、タスクの分担ができ

元記事を表示

GoogleAPISDKのサイズが原因でgit pushに失敗した場合の対処方法

発生した問題

GitHubで公開するために、iOSの制作物をgit pushしようとしたところで問題が発生しました。発生している問題は、下記のリンクで発生していた問題と全く同じでした。
GitHub に100MB超のファイルを置く — git push に失敗してからの対処方法
GooGleMapsとGoogleAdsのAPIを使用するためのSDKファイルのサイズが問題でエラーになってしまいました。

remote: error: GH001: Large files detected. You may want to try Git Large File Storage – https://git-lfs.github.com.

解決法を試すも、改善せず

リンクにあった解決法を試しましたが、手順通りに行っても改善しませんでした

元記事を表示

[Swift]繰り返し処理について”for-in文”

## 繰り返し処理とは
要約すると`これだけの回数繰り返してください`という構文。

## “for-in”の基本文法

“`ViewController.swift
for i in 0..<10 { //この場合iが0回目から9回目に達するまで{}の中身が繰り返されるということ //10回おこなわれるということ print(i) //この場合ログには0〜9が表示される } ``` `0..<10`のように`.が2個`の場合は`0以上10未満`、反対に、`0...<10`のように`.が3個`の場合は`0以上10以下`という意味になる。

元記事を表示

iOSアプリ開発者がAWS認定ソリューションアーキテクト(SAA-C02)を取得した際の備忘録・AWS小ネタまとめ

## はじめに
今夏のコロナの影響もあって一時だけリモート勤務になり
所属する会社のサポートで[Architecting on AWS](https://aws.amazon.com/jp/training/course-descriptions/architect/)の
オンライントレーニングを受講しました。

せっかくなのでAWS認定ソリューションアーキテクト
(SAA-C02)を取得してみましたという備忘録と
モバイルアプリ開発にも関連したAWSまわりの小ネタをメモまでに。

![aws-certified-solutions-architect-associate (2).png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/6691/d266e20b-9ed1-90bc-48a6-2beeb3dee94b.png)

## AWSとの関わりレベル
* 普段はiOSメインで開発
* 担当案件のバックエンドはAWSで各リソースがどんな働きかを広く浅く知ってる程度
* サーバーサイドは大昔にオンプレでインフ

元記事を表示

Charlesを通信中に強制終了したらネットワークが繋がらなくなった話

### 経緯
macOSでXcodeを使用しiOSのアプリを製作しています:raising_hand:

APIの動作確認をしたく、Charlesにて通信を確認していたところ、
通信中に動作が重くなり、Charlesが接続中のまま動かなくなってしまった為、
処理中のままアプリを終了させてしまいました。

それ以降、Charlesを起動している間でないとネットワークに接続できなくなってしまいました:scream:

### 試したこと

– **pcの再起動**
– **証明書の再発行**
– **Charlesアプリの削除**(消してしまったらネットに繋がらなかった為、ゴミ箱から復活させました)
– **macのProxyのチェックを外す**
 システム環境設定 > ネットワーク > 詳細 > プロキシ から、「構成するプロトコルを選択」のチェックを全て外しました。

![スクリーンショット 2020-11-02 15.59.37.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/534195/3cf638

元記事を表示

OTHERカテゴリの最新記事