Wes Chua
Wes Chua
  • 17
  • 27 441
Xcode Cloud’s Environment Var and Change App Icon for Beta App (Build Scripts 3) | Xcode Cloud 10/12
In this tutorial, you'll learn how to use Xcode Cloud Environment Variable in your custom build scripts by changing app icon for your Beta App. Moreover, this script will only run in specific workflow and not all the workflow.
*💡Links:*
↳ Beta Icons: github.com/WesCSK/Xcode-cloud-part-1/blob/beta/ci_scripts/AppIcon.appiconset/Voice%20Guide%20App%20Icon.png
↳ Environment Variable Reference: developer.apple.com/documentation/xcode/environment-variable-reference
*📱Completed Project:*
↳ Repo: github.com/WesCSK/Xcode-cloud-part-1/tree/beta
↳ ci_pre_xcodebuild.sh: github.com/WesCSK/Xcode-cloud-part-1/blob/beta/ci_scripts/ci_pre_xcodebuild.sh
*🕛 Outline*
0:00 Intro
1:53 Change App Icon for Beta App
*🤗 Follow me on social media*
Instagram (Personal): sweekwang
Instagram (iOS Content): wescsk
Twitter: wescsk
Linkedin: www.linkedin.com/in/sweekwang/
#xcode #cloud #environment #variable #change #app #ic #tutorial #tutorials
มุมมอง: 188

วีดีโอ

Automatically generate notes for testers with build script | Xcode Cloud 8/12
มุมมอง 2143 หลายเดือนก่อน
In this video, I'll show you how to create a custom build script to generate dynamic content during your Xcode Cloud builds. Specifically, we'll generate tester notes automatically by fetching the last three commit messages from your Git repository. *📱 CI_Post_Xcodebuild.sh:* ↳ github.com/WesCSK/Xcode-cloud-part-1/blob/release-note-2/ci_scripts/ci_post_xcodebuild.sh *🕛 Outline* 0:00 Intro 0:57 ...
Including notes for testers within test app | Xcode Cloud 8/12
มุมมอง 1463 หลายเดือนก่อน
In this tutorial, you'll learn how to include test notes for testers for your beta or UAT build. Embedding tester notes directly into your Xcode Cloud CI/CD pipeline. This integration is not just about automating tasks; it’s about enhancing quality and collaboration without extra effort. *🧾 References* LOCALE Code: developer.apple.com/documentation/appstoreconnectapi/betabuildlocalizationcreate...
Xcode Cloud to Notify via Email or Slack for Successes and Failures | Xcode Cloud 7/12
มุมมอง 1014 หลายเดือนก่อน
In this tutorial, you'll learn how to change the build number and also find out what you can and cannot do when changing the build number for Xcode cloud. *🕛 Outline* 0:00 Introduction 0:25 Change build number 1:05 Reset the build number? *🤗 Follow me on social media* Instagram (Personal): sweekwang Instagram (iOS Content): wescsk Twitter: wescsk Linked...
Xcode Cloud to Notify via Email or Slack for Successes and Failures | Xcode Cloud 6/12
มุมมอง 1484 หลายเดือนก่อน
In this tutorial, you'll learn how to notify you via email or slack when a build is success or fail. *Documentation* developer.apple.com/documentation/xcode/connecting-xcode-cloud-to-slack *🕛 Outline* 0:00 Introduction 0:29 Setup Post Action Notify *🤗 Follow me on social media* Instagram (Personal): sweekwang Instagram (iOS Content): wescsk Twitter: wes...
Trigger workflow when tag is created | Xcode Cloud 5/12
มุมมอง 2187 หลายเดือนก่อน
In this tutorial, we will explore how to configure Xcode Cloud to trigger tests, builds, or deployment processes upon the creation of a new tag. This step-by-step tutorial will cover the necessary settings and procedures to enable this automation in Xcode Cloud, ensuring a streamlined workflow for your development projects. Complete XCode Cloud Tutorials: th-cam.com/play/PLVauIwpFOVbCi4ZRVH38Pm...
Sending Your App to Testers & Deploying on TestFlight with Xcode Cloud | Xcode Cloud 4/12
มุมมอง 5898 หลายเดือนก่อน
Welcome to Part 4 of our Xcode Cloud tutorial series! In this episode, we dive into the crucial steps of sending your app to internal or external testers and deploying it on TestFlight. Perfect for developers at any level, this video will guide you through the process with ease and efficiency. Add the following key to your plist and it will resolve the missing encryption compliance declaration ...
Trigger Build, test or deploy when Pull Request (PR) is created | Xcode Cloud 3/12
มุมมอง 3978 หลายเดือนก่อน
In this tutorial, you'll learn how to create trigger builds, tests, and deployments when a Pull Request is created. If you missed out other topics, check out the playlist: th-cam.com/play/PLVauIwpFOVbCi4ZRVH38PmmMdsg1RmODD.html *💡Starting Project:* ↳ github.com/WesCSK/Xcode-cloud-part-1 *🕛 Outline* 0:00 Introduction 0:14 Why trigger when PR is created? 1:50 Git Setup 3:00 Setup workflow to trig...
Create Build Scripts to Manage Dependencies with CI Post Clone Script | Xcode Cloud 2/12
มุมมอง 7919 หลายเดือนก่อน
Dive into the essentials of making external dependencies like CocoaPods and SwiftFormat work seamlessly with Xcode Cloud. We'll tackle common pitfalls and walk you through a step-by-step guide on setting up your environment right after cloning the project. Learn about the importance of post-clone scripts, the role of Swift Package Manager, and how to effectively navigate and resolve build failu...
Basic of CICD and setting up Xcode cloud | Xcode Cloud 1/12
มุมมอง 4.5K9 หลายเดือนก่อน
In this tutorial, you'll learn how to create a continuous integration and continuous delivery (CI/CD) pipeline for your iOS app using Xcode Cloud. Xcode Cloud is a cloud-based service that automates the build, test, and deployment process for iOS, iPadOS, macOS, watchOS, and tvOS apps. Learn now as it is free through December 2023. *💡Starting Project:* ↳ github.com/WesCSK/Xcode-cloud-part-1 *🕛 ...
Create a Dynamic and Auto Scaling Fonts Custom Font in SwiftUI | Accessibility
มุมมอง 892ปีที่แล้ว
In this tutorial, you'll learn how to dynamic and scalable custom font in SwiftUI. It will increase the font size accordingly to the setting set by the user device which can helps users who need larger text for better readability. It also accomodates those who can read smaller text, allowing more information to appear on the screen. Apps that support Dynamic Type also provide a more consistent ...
OTP Textfield in SwiftUI | OTP Pin Fields
มุมมอง 6Kปีที่แล้ว
In this tutorial, you'll learn how to create an OTP Textfield! In this video, we will cover the step-by-step process of building a custom OTP text field that can be used in your SwiftUI projects. *💡Starting Project:* ↳ github.com/WesCSK/OTPEnteries *📱Completed Project:* ↳ github.com/WesCSK/OTPEnteries *🕛 Outline* 0:00 What you will be creating 1:11 Introduction to the starting project 2:20 Crea...
SF Symbols 4 with Variable Value and Multiple Color - SwiftUI
มุมมอง 365ปีที่แล้ว
In this tutorial, you'll learn how to make full use of SF Symbols 4 using different rendering mode and using variable value. *🔗Links* ↳ developer.apple.com/sf-symbols/ *💡Starting Project:* ↳ There is no starting code in this project *🕛 Outline* 0:00 Intro 0:40 Download 1:08 SF Symbols Application 4:24 Project Setup 5:27 Create a SF Symbols and using Font to change size 6:30 Changing size using ...
Create an Animated Launch Screen like Twitter - SwiftUI
มุมมอง 1.3Kปีที่แล้ว
In this tutorial, you'll learn how to create an animated splash screen like Twitter's in SwiftUI. We'll use an image which is Twitter logo and animate it by making it smaller and enlarging it. *💡Starting Project:* ↳ github.com/WesCSK/Animated-splash-screen-with-SwiftUI-Twitter-splash-screen *📱Completed Project:* ↳ github.com/WesCSK/Animated-splash-screen-with-SwiftUI-Twitter-splash-screen/tree/...
Drag and Drop Floating button like AssistiveTouch SwiftUI
มุมมอง 1.3Kปีที่แล้ว
Learn how to create a draggable and movable floating button like AssistiveTouch in SwiftUI. In this video, you will create a DraggableButton view which is draggable and movable by using the DragGesture() and then, we will use position modifier to change the position and bring it back to the correct position. Starting Project: github.com/WesCSK/Drag-and-Stick-Floating-Button-SwiftUI Completed Pr...
Create a Shimmer or Loading Effect in SwiftUI
มุมมอง 6Kปีที่แล้ว
Create a Shimmer or Loading Effect in SwiftUI
Login using Firebase Google Sign In with SwiftUI
มุมมอง 5Kปีที่แล้ว
Login using Firebase Google Sign In with SwiftUI

ความคิดเห็น

  • @dingtakcoding
    @dingtakcoding 14 วันที่ผ่านมา

    I just wanna say thank you for created this tutorial ✨what an amazing explanation, can't wait for the next part!

  • @SowrirajanS_7
    @SowrirajanS_7 2 หลายเดือนก่อน

    Thank you! It saved my time.

  • @abdussametkaya4306
    @abdussametkaya4306 2 หลายเดือนก่อน

    thank you

  • @create-mern-app
    @create-mern-app 2 หลายเดือนก่อน

    Thank you so much for the incredibly helpful video!

  • @AhmadKhawaja-ws9kj
    @AhmadKhawaja-ws9kj 2 หลายเดือนก่อน

    Great series, Thank you 🙏

  • @Spectraevil
    @Spectraevil 2 หลายเดือนก่อน

    Absolutely Love the video series! Eagerly waiting for the next part.

    • @weschua
      @weschua 2 หลายเดือนก่อน

      Your comments make me motivated to create the next part. However, I was busy this few days and the next part will be up soon.

  • @ayojaydeee8910
    @ayojaydeee8910 2 หลายเดือนก่อน

    THANK YOU!

  • @user-ib4wj9nf2c
    @user-ib4wj9nf2c 2 หลายเดือนก่อน

    @weschua , i have one doubt i want to archive the build and upload on the test-flight only when the all test cases pass so how can we achieve this thing. Because i have create the work flow named Distribute App and in this workflow i have uses three actions 1. Build, 2. Test and 3. Archive but in my code i have hardcoded failed the test and i am configure this workflow on when developer push on development branch but in this case the test cases failed but new archive build uploaded on testflight this is wrong.

    • @weschua
      @weschua 2 หลายเดือนก่อน

      Hi, thank for watching. Under your test action there is a radio button which you can select “Required To Pass”. If your test failed, the build will fail and I believe that it shoudn't run the Archive step.

  • @tarindau
    @tarindau 3 หลายเดือนก่อน

    Brilliant video mate, thanks. Just to add on - Now you can straight away access the old value and new value from .onChange as - .onChange(of: enteredOtp[index]) { oldValue, newValue in if enteredOtp[index].count > 1 { let currentValue = Array(enteredOtp[index]) if currentValue[0] == Character(oldValue) { enteredOtp[index] = String(enteredOtp[index].suffix(1)) } else { enteredOtp[index] = String(enteredOtp[index].prefix(1)) } } API method - public func onChange<V>(of value: V, initial: Bool = false, _ action: @escaping (_ oldValue: V, _ newValue: V) -> Void) -> some View where V : Equatable

  • @Flakemonkey
    @Flakemonkey 3 หลายเดือนก่อน

    Nice , is it possible to have same effect using archiv6 for test flight

    • @weschua
      @weschua 3 หลายเดือนก่อน

      When using archive, you need to manually go to Apple Connect and edit the tester note there. Can’t “automate” this process without any CD pipeline.

    • @Flakemonkey
      @Flakemonkey 3 หลายเดือนก่อน

      Thank you for your response 🙏

  • @user-dd3zf1dr9k
    @user-dd3zf1dr9k 3 หลายเดือนก่อน

    What is SwiftRUI?

    • @weschua
      @weschua 3 หลายเดือนก่อน

      Is an UI Library that I'm trying to create :) github.com/Sweekwang/SwiftRUI

  • @a7x8f3
    @a7x8f3 4 หลายเดือนก่อน

    Great lesson, this video deserves way more likes

    • @weschua
      @weschua 4 หลายเดือนก่อน

      Thank you! Your comments are a great source of motivation for me.

  • @Dissident.Dissidentovich
    @Dissident.Dissidentovich 4 หลายเดือนก่อน

    Thank my friend! SUi new for me (2,5y UIKit). Very interesting framework and good lessons, good luck irl

  • @zaptainzi8893
    @zaptainzi8893 5 หลายเดือนก่อน

    So great!

  • @vivekindra9860
    @vivekindra9860 5 หลายเดือนก่อน

    Helpful. thanks!

  • @user-ee8yr7pl1d
    @user-ee8yr7pl1d 5 หลายเดือนก่อน

    but if the box is empty and we try to press cross button, it didn't go back to previous box. how to manage this?

  • @yoelcera243
    @yoelcera243 5 หลายเดือนก่อน

    I'm pretty new on coding and this video help me understand all that happens so the code does what it has to and how

  • @josejaimefelixgarciagarcia8884
    @josejaimefelixgarciagarcia8884 6 หลายเดือนก่อน

    If I receive the text, will it automatically fill out the fields?

    • @weschua
      @weschua 4 หลายเดือนก่อน

      No, we didn’t implement the logic here. We only created the UI for that.

  • @Ratipat332
    @Ratipat332 7 หลายเดือนก่อน

    We would like to deplopy our app using Microsoft Intune. However, we need our app to be signed with an enterprise account. Is there a way to achieve this? maybe resigning the app?`Im not sure we have access in xcode cloud to that certificate

  • @ChillPokePulls
    @ChillPokePulls 7 หลายเดือนก่อน

    Your English is very good! And this video is great. Ty!

  • @andrespaladines1
    @andrespaladines1 7 หลายเดือนก่อน

    Thanks Wes, it helped me a lot to familiarize with Xcode cloud. Maybe we can go more in deep with ci_scripts. This is nuts!

    • @weschua
      @weschua 7 หลายเดือนก่อน

      I will go more deep into ci_scripts. Was busy in work in the past few week and I will be creating the other parts soon

    • @weschua
      @weschua 3 หลายเดือนก่อน

      Hello, sorry for waiting. I had create the video for build scripts. 1. Create Build Scripts to Manage Dependencies with CI Post Clone Script: th-cam.com/video/D9ypui7zSyg/w-d-xo.html 2. Automatically generate notes for testers with build script: th-cam.com/video/ZBoBCCV5VQ8/w-d-xo.html 3. Xcode Cloud’s Environment Var and Change App Icon for Beta App: th-cam.com/video/6muziL6I_kQ/w-d-xo.html

  • @weschua
    @weschua 8 หลายเดือนก่อน

    There is an changes in 0:27. Previously, I mentioned that it is free till end of 2023. But good news for all! it is free now for the first 25 compute hours/month! developer.apple.com/news/?id=ik9z4ll6 Checkout the complete Xcode cloud lessons: th-cam.com/play/PLVauIwpFOVbCi4ZRVH38PmmMdsg1RmODD.html

  • @weschua
    @weschua 8 หลายเดือนก่อน

    Checkout the complete Xcode cloud lessons: th-cam.com/play/PLVauIwpFOVbCi4ZRVH38PmmMdsg1RmODD.html

  • @vatanachhorn9534
    @vatanachhorn9534 8 หลายเดือนก่อน

    Thank you!

    • @weschua
      @weschua 8 หลายเดือนก่อน

      You're Welcome and thank you for watching :)

  • @vatanachhorn9534
    @vatanachhorn9534 8 หลายเดือนก่อน

    Thank you :D

    • @weschua
      @weschua 8 หลายเดือนก่อน

      You're welcome and thank you for watching :)

  • @weschua
    @weschua 8 หลายเดือนก่อน

    Checkout the complete Xcode cloud lessons: th-cam.com/play/PLVauIwpFOVbCi4ZRVH38PmmMdsg1RmODD.html

  • @weschua
    @weschua 8 หลายเดือนก่อน

    Checkout the complete Xcode cloud lessons: th-cam.com/play/PLVauIwpFOVbCi4ZRVH38PmmMdsg1RmODD.html

  • @weschua
    @weschua 8 หลายเดือนก่อน

    Checkout the complete Xcode cloud lessons: th-cam.com/play/PLVauIwpFOVbCi4ZRVH38PmmMdsg1RmODD.html

  • @NIXO3D
    @NIXO3D 9 หลายเดือนก่อน

    This video is Gold, thank you for sharing 🙌🏽 I subscribed 🍻 keep up the good work 👏🏽

    • @weschua
      @weschua 9 หลายเดือนก่อน

      Thank you! Will do!

  • @pakaponwiwat2405
    @pakaponwiwat2405 9 หลายเดือนก่อน

    Thank you very much, sir! This is awesome!

    • @weschua
      @weschua 8 หลายเดือนก่อน

      You're welcome and thank you for watching :)

  • @qolani3938
    @qolani3938 9 หลายเดือนก่อน

    Well done sir👌.... your work here is exceptional. I like your approach of first solving the problem and later adding more tips for code reliability. Keep up the good work

    • @weschua
      @weschua 8 หลายเดือนก่อน

      You're welcome and thank you for watching :)

  • @andrejkling3886
    @andrejkling3886 9 หลายเดือนก่อน

    Keep going 🎉

    • @weschua
      @weschua 9 หลายเดือนก่อน

      Thank you for watching. I will! Higher quality version is still processing and it will be out in a few minutes.

  • @user-tj5dr3ws1y
    @user-tj5dr3ws1y 11 หลายเดือนก่อน

    Hello, Thanks for the tutorial. It's amazing work. 🙏 Will please suggest, how can i 1. Avoid entering special characters? 2. Enable/Disable copy/past options to the TextFiled? Thanks :)

  • @devkunjadia
    @devkunjadia ปีที่แล้ว

    Thank you so much for this video!!! I will be sharing this on all the platforms I know of!!!

    • @weschua
      @weschua ปีที่แล้ว

      Thanks for the sharing. Your message motivate me to create more of these contents

  • @stephanieceline3605
    @stephanieceline3605 ปีที่แล้ว

    Thank you! Amazing

  • @TimothyCairns
    @TimothyCairns ปีที่แล้ว

    Thanks! Is there a way to stop the button disappearing when you rotate from portrait to landscape (on iPad), when the button is near the bottom?

  • @ItsIan.
    @ItsIan. ปีที่แล้ว

    Great video Wes! Easy to follow along and very helpful! For anyone having trouble with 12:21 just add return to the empty spaces. (For context, Firebase updated their syntax)

  • @Sivasli-58
    @Sivasli-58 ปีที่แล้ว

    Hello Wes Chua, thanks for this Tutorial this helps me a lot. I have a Question, For example we have put in these Numbers: 1 2 3 4 5 6 If we delete the Number 3 and go into 4 like 1 2 (4) 5 6 and try do delete it will be stuck at index 3 and do not delete 1 and 2 I hope u have understand what i mean 😅

  • @ecemozturk1507
    @ecemozturk1507 ปีที่แล้ว

    I've been watching launch screen tutorials all day and this is the best and the easiest way! Thanks a lot

  • @jlambert12013
    @jlambert12013 ปีที่แล้ว

    Has anyone else had problems with Firebase Syntax Highlighting not working correctly on Xcode?

  • @jlambert12013
    @jlambert12013 ปีที่แล้ว

    I''ve been stuck on this for about a month, no joke. Mainly becuase I couldn't figure out how to use UIViewController in SwiftUI. There are so many overly complicated answer online. I don't know how I did not find you video until today, but thank you so much for making this simple.

    • @weschua
      @weschua ปีที่แล้ว

      Thank you for your comment. This will make me motivated to more content.

  • @angelcamacho9009
    @angelcamacho9009 ปีที่แล้ว

    amazing video man! thank you so so much!!!

  • @joelamarh2910
    @joelamarh2910 ปีที่แล้ว

    is it possible to get the first name and surname from the gmail account?

    • @weschua
      @weschua ปีที่แล้ว

      Yes. If you look at the user object we get after GIDSignIn.sharedInstance.signIn, the user is a GIDGoogleUser, and you can get the full name by calling user.profile?.name.

    • @joelamarh2910
      @joelamarh2910 ปีที่แล้ว

      ​@@weschua Thanks you so much. I have a other question it possible to only allow specific google emails to enter the content view.

    • @weschua
      @weschua ปีที่แล้ว

      @@joelamarh2910 What do you mean by specific google emails? can you give some example?

  • @kelidev9605
    @kelidev9605 ปีที่แล้ว

    🎉🎉🎉🎉

    • @weschua
      @weschua ปีที่แล้ว

      Thank you for watching. Appreciated

  • @sidneyokine3371
    @sidneyokine3371 ปีที่แล้ว

    Great Tutorial 🙏🏾🔥

    • @weschua
      @weschua ปีที่แล้ว

      Thank you for watching

  • @weschua
    @weschua ปีที่แล้ว

    I would like to extend my sincerest apologies for any inconvenience or confusion caused by my bad pronunciation. I will improve for the next few videos. 😃

    • @themilkyguey
      @themilkyguey 7 หลายเดือนก่อน

      Native English speaker here, you spoke great! Thank you for this video and your hard work!

  • @singinintherainChern
    @singinintherainChern ปีที่แล้ว

    thank you very much👍

    • @weschua
      @weschua ปีที่แล้ว

      Thank you for spending time to watch the video

  • @singinintherainChern
    @singinintherainChern ปีที่แล้ว

    这英语我也是醉了😵‍💫

    • @weschua
      @weschua ปีที่แล้ว

      对不起。我会改进的

  • @apurvsingh5541
    @apurvsingh5541 ปีที่แล้ว

    import SwiftUI struct ShimmerEffectBox: View { private var gradientColors = [ Color(uiColor: UIColor.systemGray5), Color(uiColor: UIColor.systemGray6), Color(uiColor: UIColor.systemGray5) ] @State var startPoint: UnitPoint = .init(x: -1.8, y: -1.2) @State var endPoint: UnitPoint = .init(x: 0, y: -0.2) var body: some View { LinearGradient (colors: gradientColors, startPoint: startPoint, endPoint: endPoint) .onAppear { withAnimation (.easeInOut (duration: 1) .repeatForever (autoreverses: false)) { startPoint = .init(x: 1, y: 1) endPoint = .init(x: 2.2, y: 2.2) } } } } struct ShimmerEffectBox_Previews: PreviewProvider { static var previews : some View { ShimmerEffectBox() } }

  • @daisensei5391
    @daisensei5391 ปีที่แล้ว

    I followed the guide of the 7.0.0 update and got an "Extra trailing closure passed in call" error on my GoogleSignInButton. Any thoughts on that? Thanks!

    • @weschua
      @weschua ปีที่แล้ว

      Thank you for watching. Can you state which code you meant and the error message?

    • @sushmasingh8171
      @sushmasingh8171 ปีที่แล้ว

      Same i also got that