IT分からんわ~_~;

IT色々お勉強中のブログ

xcodeproj/project.pbxprojのコンフリクト解消方法

xcodeproj/project.pbxprojのコンフリクト解消方法

両方でファイルを追加しててコンフリクトした場合

  1. マージ元の変更で上書き

  2. 右クリックでAdd file to ""を選択

  3. 自分が追加したファイルを一生懸命探して追加

Xcodeショートカット一覧

  • cmd+Shift+f 全検索

  • ctl + i インデント修正

  • cmd + shift + o プロジェクト内検索

  • Cmd + ↑ カーソルをファイルの先頭へ移動
  • Cmd + ↓ カーソルをファイルの最後へ移動
  • Cmd + Shift +H シュミレータホームに戻す
  • Cmd + Shift + option + F ワークスペース全置換
  • Cmd + ctl + → or ← 過去の履歴ファイルに移動
  • Cmd + U テスト実行

【iPhoneアプリ申請】次のバージョンリリース

基本↓と一緒

【iPhoneアプリ申請】アプリリリース - IT分からんわ~_~;

version変更、変えないと怒られるよ

f:id:babababand:20191215161405p:plain

Generic選択

f:id:babababand:20191215160606p:plain

Archive実行

f:id:babababand:20191215160653p:plain

validate APP

f:id:babababand:20191215161033p:plain

成功するとこんな感じ

f:id:babababand:20191215161713p:plain

distribute app アップロード

f:id:babababand:20191215161819p:plain

ひたすら待ちましょう

f:id:babababand:20191215161951p:plain

終了

f:id:babababand:20191215162159p:plain

メールが来たら完了、AppCenterよりバージョン追加

f:id:babababand:20191215164107p:plain

Delegateについて

Delegateについて

中々理解できなかったので、自分で分かりやすく覚えるためのメモ

  • 猫と犬がいて、犬は猫が吠えたことを検知したい

  • 検知したら犬側で何か処理をする

class Cat {
    var barkedWords = ""
    var delegate: CatDelegate?
    
    func stroke() {
        DispatchQueue.main.asyncAfter(deadline: .now() + 1) {
            self.bark()
        }
    }
    private func bark(){
        barkedWords += "にゃん"
        delegate?.didBark()
    }
}

猫は撫でると鳴き声が追加される

protocol CatDelegate {
    func didBark()
}

準拠するためのルールを記述

プロトコルとは、具体的な処理内容は書かず、クラスや構造体が実装するプロパティとメソッドを定義する機能」

class Dog: CatDelegate {
    func didBark() {
        print(cat.barkedWords)
    }
    
    let cat: Cat
    
    init() {
        cat = Cat()
        cat.delegate = self
    }
    
    func strokeCat() {
        cat.stroke()
    }
}

犬は猫のデリゲートに準じて実装しなければならない

 cat.delegate = self

準拠したプロトコルに自分自身を入れてあげる、これでcat.delegateが犬になる

        delegate?.didBark()

犬になったdelegateがdidBarkメソッドを呼び出す

 let dog = Dog()
dog.strokeCat()
dog.strokeCat()

同じように猿にも実装できる

class Monkey: CatDelegate {
    
    var count = 0
    
    func didBark() {
        count += 1
        print(cat.barkedWords + " : " + count.description)
    }
    
    let cat: Cat
    
    init() {
        cat = Cat()
        cat.delegate = self
    }
    
    func strokeCat() {
        cat.stroke()
    }
}

【iPhoneアプリ申請】手動リリース

リリース方法には手動リリースと自動リリースなど複数の方法があります

f:id:babababand:20191205004649p:plain

手動リリースを選んだ場合審査が通ったらリリースします。

f:id:babababand:20191205004756p:plain

待ちましょうそのうちリリースされます