- 1. ECDSA の署名生成・検証を複数言語・環境でどう書くかまとめてみた
- 2. CA.swift #11 ~3年後のアプリ設計を考えよう~ 参加報告
- 3. iOSシミュレータにプッシュ通知を送ってみる
- 4. XcodeでiOSアプリを作成中にiOSのバージョンをアップしたらエラがー出た話
- 5. UnityでiOS実機とmacエディタでBLEを使う
- 6. Instagram検索画面風レイアウトをCompositionalLayoutで爆速開発する(約150行の実装)
- 7. 【iOS】ビューを凹んだように見せて「押した」感を演出する
- 8. 【Flutter】画面下から出てくるピッカー(ドラムロール)を実装する
- 9. [iOS]今からはじめるドキュメントベースApp
- 10. UIViewのExtensionでフェードイン・アウトアニメーションを実装する
- 11. #23 Viewの背景を画像にする方法
- 12. iOSエンジニアがSign in with Appleをサーバーサイドで実装したときに行き詰りを感じたところとか
- 13. Xcode archive時にimport不可のエラー
- 14. iOS Safariでselect optionにdisplay:noneが効かない対策
- 15. flutter_blueがiOSでヘッダーファイルを見つけられなくてbuildできない問題
- 16. 初めてiOSアプリにとりかかるデザイナーさんへ、私(エンジニア)が楽するためのお願い
- 17. [Swift5]ニコニコ動画やLINEにあるようなスクロールによって閉じたり開いたりするヘッダー
- 18. 【iOS】書類スキャンライブラリ「WeScan」の紹介と日本語化など
- 19. SwiftUIとRealmを連携してUIを自動更新する
- 20. iOSとmacのunityのnative pluginを作る
ECDSA の署名生成・検証を複数言語・環境でどう書くかまとめてみた
## はじめに
楕円曲線DSA (ECDSA) は楕円曲線暗号を利用した電子署名方式で、通信のセキュリティ確保のために広く使われています。様々なプログラミング言語の標準的なライブラリでサポートされているため、言語をまたいで利用することができます。
ただし、実際に言語をまたいで署名生成 & 検証をしようとしてみると API の違いやフォーマット方式によりハマること多々あったため、書き方をまとめておくことにしました。
## この記事に書かれていること
Golang, Node.js, Kotlin, Swift での(できる限り)標準ライブラリを利用した キーペア生成、署名生成・検証方法を記載します。
以降の記述は基本的に ECDSA を前提に書かれています。
**全体的に、エラーハンドリングは省略しているので注意してください。**
## この記事に登場するキーワード
キーワード | 概要
— | —
EC | 楕円曲線、もしくは楕円曲線暗号のこと。
P-256 | 利用する楕円曲線の種類。キーペア生成、署名生成・検証時にパラメータとして指定します。NIST
CA.swift #11 ~3年後のアプリ設計を考えよう~ 参加報告
大変遅くなりましたが
2020年1月30日に開催されたCA.swiftへ
ブログ枠として参加させていただきました際の報告です。
https://cyberagent.connpass.com/event/155392/ざっと内容や感想を書かせていただきます。
# Thinking about Architecture for SwiftUI
## 登壇者
[@d_date](https://twitter.com/d_date)さん[KITASANDO COFFEE – 北参道コーヒー]
(https://apps.apple.com/jp/app/kitasando-coffee-%E5%8C%97%E5%8F%82%E9%81%93%E3%82%B3%E3%83%BC%E3%83%92%E3%83%BC/id1470570852)## スライド
## 内容
### タイトルはSwiftUIの設計になっているけど
メインは
iOSシミュレータにプッシュ通知を送ってみる
※本記事は一般に公開されている範囲で書いています。スクリーンショットの添付は自粛します
Xcode 11.4 からiOSシミュレータがプッシュ通知のシミュレーションをサポートしますね。
> Simulator supports simulating remote push notifications, including background content fetch notifications.
[Xcode 11.4 Beta Release Notes](https://developer.apple.com/documentation/xcode_release_notes/xcode_11_4_beta_release_notes/)シミュレータでプッシュ通知をシミュレーションする方法は2つありますが、両方とも有効な Apple Push Notification Service payload ファイルが必要になります(拡張子は .apns である必要があります)。
“`
{
“aps”:{
“alert”:”Test”,
XcodeでiOSアプリを作成中にiOSのバージョンをアップしたらエラがー出た話
** ※2020年1月29日時点の情報になります。記事投稿日時点の環境ではエラーは発生していません。開発中にむやみやたらと新しいものに飛びつくと良くないよという自身の忘備録として、また同じような状況に今後陥った方へ向けて書いています。**
先日Xcode、iOS13.3のiPhone実機で開発をしていた際にiOS13.3.1にバージョンアップするとエラーが発生し、対応に困ったため記事にします。この手の文章を書き慣れていないため、練習も兼ねて・・・
# 結論
iOSのバージョンを13.3に戻すと解決しました。知識がない状態で開発中に環境いじるのは良くないですね。# 経緯
環境
・macOS Catalina 10.15.2
・iOS:13.3 実機:iPhone11
・Xcode 11.3.1
.Apple Developer無料アカウント上記環境にてiPhone実機で動作確認をしながらiOSアプリを開発していました。
ここで新しいもの好きの私は
**iOS13.3.1のアップデートが来た!更新!**
↓
**macOS10.15.3も来た!更新!**
↓
**mac
UnityでiOS実機とmacエディタでBLEを使う
# UnityでiOS実機とmacエディタでBLEを使う
UnityでiOS実機とmacエディタで、CoreBluetoothを使って、Bluetooth Low Energyのデバイスと通信するnative pluginを作成しました。
[Unity Packageを配布しています。](https://github.com/fuziki/UnityCoreBluetooth/releases)
リポジトリはこちら→[https://github.com/fuziki/UnityCoreBluetooth](https://github.com/fuziki/UnityCoreBluetooth)UnityエディタとiOSで動くBluetoothのプラグイン作った#unity Instagram検索画面風レイアウトをCompositionalLayoutで爆速開発する(約150行の実装)
## はじめに
本記事ではiOS13から利用可能になった `UICollectionViewCompositionalLayout` を利用して、インスタグラムの検索画面のようなパネルレイアウトを作成する方法を記載します。
`UICollectionViewCompositionalLayout` は、複雑なレイアウトを簡単で宣言的な記述で実現できるレイアウトクラスで、今回のデモに関しては約150行足らずですべての実装を完了することができました。
実際のAppの挙動は下記にgif動画を添付しています。
**成果物**
**サンプルコード**
https://github.com/chocoyama/InstaLikeLayoutViewControllerの実装は↓だけです。(約35行)
【iOS】ビューを凹んだように見せて「押した」感を演出する
iOS アプリで、ボタン以外にタップ可能なビューを置きたいケースがあります。例えば、[マンガ向け・ストーリー構成力養成ドリル drill](https://drill.5thfloor.co.jp/) というアプリで以下のようなカードっぽいビューを作る機会がありました。
このカードはタップすると次の画面に遷移しますが、そのままだとフィードバックが何もなく、「ちゃんとタップされた」かどうか不安になりそうでした。
そこで、ビューを視覚的に凹んだように見せることで、「押した」感のあるフィードバックを実現しました。意外と情報がなかったのでメモしておきます。
# ガイドラインを調べる
早速実装…といきたいことろですが、もし「押した」感の演出で公式で推されている表現があるならそれに従っておきたかったので、最初に簡単にガイドライン
【Flutter】画面下から出てくるピッカー(ドラムロール)を実装する
![picker.gif](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/105756/68307a99-a85a-773a-a20e-2966352eb7c2.gif)
Flutter で画面下から出てくる iOS 風ピッカー(ドラムロール)を実装します。
– `Flutter 1.12.13+hotfix.5`
– `Dart 2.7.1`## コード
“`dart
import ‘package:flutter/material.dart’;
import ‘package:flutter/cupertino.dart’;void main() => runApp(MyApp());
class MyApp extends StatelessWidget {
@override
Widget build(BuildContext context) {
return MaterialApp(
title: ‘Modal Picker’,
theme:
[iOS]今からはじめるドキュメントベースApp
こんにちは。
@gachalatteです。今回はドキュメントベースAppのお話です。
iOS 11のトピックですので目新しさはありませんが、[Firevault](https://apps.apple.com/us/app/firevault/id1439389822?l=ja&ls=1)の開発で得られた知見を共有したいと思います。
#ドキュメントベースApp
ユーザーが対象を選択し、内容を編集、名前を付けて保存する。iOSでこのようなAppを開発するなら、ドキュメントベースApp(Document-Based App)が最適です。
> UIDocument、Open in Place、Document Provider Extension、iCloud Driveなど、Appleの主要なテクノロジーをドキュメントベースAppに組み込むことで、ユーザーの生産性を高め、素晴らしいユーザー体験を提供することができます。
>
[ドキュメントベースApp – Apple Developer](https://developer.apple.com/jp/document-base
UIViewのExtensionでフェードイン・アウトアニメーションを実装する
UIViewでフェードイン・アウトをExtensionとして実装しました。
## 環境
* Swift 5
* Xcode 11.2.1## フェードイン・アウトを行うExtension
UIViewを継承しているクラスなら利用できるので案外便利
“`Swift
extension UIView {
// MARK: Animation
enum Fade {
case `in`
case out
}/// フェードインアウトを行う
/// – Parameters:
/// – type: fadeタイプ
/// – animation: アニメーションを実行するか
func fade(type: Fade, animation: Bool = true) {
switch type {
case .in:
isHidden = false
UIView.animate(withDuration: 0.3) {
self.alpha = 1.
#23 Viewの背景を画像にする方法
#はじめに
個人のメモ程度の出来なのであまり参考にしないで下さい.#環境
Xcode:11.2.1
Swift:5.1.2
2019/11##part1
`Assets.cassests`に画像をドロップする.##part2
`UIImageView`と検索する.##pa
iOSエンジニアがSign in with Appleをサーバーサイドで実装したときに行き詰りを感じたところとか
**Sign in with Apple 実装のデッドラインは4月** ですね☺️
Web/iOS/Androidなど、複数プラットフォームをサポートするためWebViewでログイン機能を実装しているサービスや、外部サービスAPI利用の際に独自のAPIを噛ませているなど、サーバーサイドでSign in with Appleに対応するケースはあるかと思います。iOSエンジニアであるわたしがサーバーサイドで実装した際に、わかりにくいな〜?と感じたポイントについて記載します。
自分のスキルセットとして、認証・認可、Webの知識はほぼ0でした?
**実装したソースコードをの抜粋を載せていますが、言語はrubyです。**# やること
今回ご説明する Sign in with Apple の全体のざっくりフローは、1. Apple Developer サイトでの設定
2. Apple ID サインイン画面表示(Authorizeエンドポイント)、認可コード受取り
4. 認可コードを使い、AppleのユーザーIDを取得(Tokenエンドポイント)です。
**取得したいデータがema
Xcode archive時にimport不可のエラー
##はじめに
FlutterでAPL開発を行い、APPLEの申請を行っていたのですが、思わぬところでつまずいたので、備忘録として保存しておきます。
通常のビルドは、実施可能ですし、シュミレーターの起動や実機での起動も上手く行ってたにも関わらず、appleでの申請用にarchiveしようとしたら内部で使用しているライブラリをimportできないとエラーになりました。この[記事](https://i-app-tec.com/ios/app-upload.html)を参考にarchiveしており、エラーになりました。この記事は何も悪くはなく、素晴らしい記事です。
##試した内容
* クリーンして再ビルド。 → NG
* [これ](https://github.com/flutter/flutter/issues/22821)を参考に、Podfileを削除して、`pod install`からやり直し。 →NG
* [これ](https://teratail.com/questions/99422)を参考に、deployment target を変更してみる。 →NG
* [これ](h
iOS Safariでselect optionにdisplay:noneが効かない対策
表題のとおり、iOSの場合はselect optionにdisplay:noneは効かない。
ググってるとwrapするといいとのことで、たしかにwrapすると何故か消える。
(wrapするタグにはstyleを一切設定していないのに・・!?)
ただ、個々にちまちまwrapさせるのもめんどくさいので
optionにdisplay:noneをしたら勝手にoptionタグをwrapしてくれれば
今まで通りだしいいやんって思った次第。attrchange.js
https://github.com/meetselva/attrchange/
このjQueryプラグインを利用すると
styleに変化があるとEventが上がってくるので利用させてもらったのが以下のコード。もう少しやり方あるだろ?って思われそうだけど、ひとまずそこは・・
“`