私の基本的なバックグラウンド#
私は普通のフロントエンドエンジニアであり、以前は iOS 開発を学んだことはありませんでしたが、時々Swift コードを実装し、アプリ内でネイティブ機能を呼び出す必要があります。
uni-app x の 4.25 以降、できることがさらに増えました。
例えば、現在の電池残量を取得したり、現在のシステムのテーマがダークモードかどうかを取得したり、ボタンを押したときに音楽を再生するなどの関数をラップしたい場合があります。
JS Web 開発と同様に簡単にテストできます。ブラウザを開き、ランダムなウェブページを開いて、F12 キーを押してコンソールを開くと、JS を実行して応答を得ることができます。ネイティブクライアント開発ではできません。
では、どのようにして関係のない知識をできるだけ少なく学び、UIKit と Swift コードを素早くテストおよび実験できるようにするか?
この記事では、私の学習プロセスを記録し、読者が私と同じくフロントエンドやクライアント開発に無知な人々を対象にしています。後でより深い理解が得られた場合、詳細を修正することを試みます。読者も注意してください。
コードはどこから来るのですか?#
以前は公式ドキュメントを素早く読んで、概要を把握した後にテストや練習を行うことをお勧めしていました。しかし、AI が登場したことで、AI に尋ねる方がより適しています。例えば、
UIKit を使用して現在の電池残量を取得する方法を教えてください。関数を作成し、その結果を print で呼び出すことができるようにしたいです。
コードの取得方法を知ったら、どのようにテストを行いますか?現時点では Xcode の使用方法を体系的に習得する必要はありません。これに関連する話題が次に出てきます。
UIKit の素早いテスト方法は?#
UIKit と Swift を素早く学ぶ方法はありますか?
私の探求の結果、テストするために 2 つの方法を見つけました:通常のプロジェクトの作成とプレイグラウンドの使用です。それぞれについて説明します。
以下の手順は、Xcode 15.4 を基にしたスクリーンショットで説明します。バージョンの進化に伴い、一部のスクリーンショットは変更される可能性がありますが、大きな変更は予想されません。
1. 通常のプロジェクトの作成#
基本テンプレートの作成#
Xcode を開き、新しいプロジェクトを作成するために次のダイアログが表示されます。
注意:上部のプラットフォームは iOS を選択し、デフォルトのマルチプラットフォームを選択しないでください。
次をクリックすると、次のダイアログが表示されます。
ヒント:
- Product Name は適当な名前を付けてください
- Team は適当に選択してください。私は None を選択しました。
- Org ID はデフォルトのまま、または a.b.c の形式で適当な値を入力してください。
- Interface は試してみましたが、Storyboard を選択し、SwiftUI を選択しないでください。
- Language は Swift を選択してください。
- Storage は None を選択してください。
- Include Tests のチェックを外してください。
次をクリックすると、コードの保存場所を選択するためのポップアップが表示されます。
最後に Create を選択すると、通常のプロジェクトの作成が完了します。
デモコードのテスト#
プロジェクトができたので、Swift のコードをテストできます。
上記のスクリーンショットの指示に従って、ViewController.swift
を開き、すべて削除し、提供されたコードを貼り付けます。
import UIKit
class ViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
// 電池残量を取得してプリントする
let currentBatteryLevel = getBatteryLevel()
print("現在の電池残量: \(currentBatteryLevel)%")
}
func getBatteryLevel() -> Float {
// 電池監視を有効にする
UIDevice.current.isBatteryMonitoringEnabled = true
// 現在の電池残量を取得する
let batteryLevel = UIDevice.current.batteryLevel
// パーセンテージに変換する
return batteryLevel * 100
}
}
このコードはアプリが起動した後にgetBatteryLevel()
メソッドを呼び出し、結果をコンソールに表示します。
このコードは電池残量を取得し、データを返します。
貼り付けが完了したら、トップバーでシミュレータを選択し、実行をクリックします。しばらく待つと、コンソールに結果が表示されます。
以上が通常のプロジェクトのテスト手順です。この手順はやや複雑かもしれませんが、比較的整然としており、最も一般的なテンプレートです。
次に、AI に尋ねた簡単な手順を紹介します。
2. Playground プロジェクトの作成#
Xcode で Playground を作成するためには、次の手順を使用する必要があります。
基本テンプレートの作成#
次の手順を使用する必要があります。
Xcode を開き、この起動画面を表示します。
左上の File - New - Playground... を選択します。
次のスクリーンショットが表示され、デフォルトの iOS - Blank を選択します。
次をクリックすると、コードの保存場所が表示されます。プロジェクトの拡張子は.playground
です。
デモコードのテスト#
画像の実行をクリックすると、このコードの実行結果が表示されます。
提供されたコードをコピーして検証できます。
import UIKit
func getBatteryLevel() -> Float {
// 電池監視を有効にする
UIDevice.current.isBatteryMonitoringEnabled = true
// 現在の電池残量を取得する
let batteryLevel = UIDevice.current.batteryLevel
// パーセンテージに変換する
return batteryLevel * 100
}
// 電池残量を取得してプリントする
let currentBatteryLevel = getBatteryLevel()
print("現在の電池残量: \(currentBatteryLevel)%")
次に何をすればいいですか?#
公式ドキュメントを学ぶ#
公式ウェブサイトのドキュメントでは、UIDevice.current.batteryLevel
について説明しています。
パスは:App and environment - UIDevice - Getting the device battery state - batteryLevel
。
batteryLevel | Apple Developer Documentation
AI にダークモードなどの他の質問をする#
AI に尋ねる
Swift と UIKit を使用して、現在のシステムのテーマ(ライトまたはダーク)を取得し、fun としてラップし、現在のテーマが light か dark か、その他の値があるかを返す方法はありますか?
私のテストでは問題ありませんでした。ここで読者は自分でテストしてみることができます。意識的にコードを蓄積して、後で使うことができます。
UTS プラグインのラッピングを学ぶ#
[[新人向け:UTS プラグインのラッピング]]
Android のコードを素早くテストする方法を学ぶ#
[[Android Kotlin コードを素早く学習およびテストする方法]]