• December 27, 2020
  • December 26, 2020

Introduction to Combine | Supporting Combine in a custom class

Combine is a framework to implement asynchronous operations. It is created by Apple, it is also used in Swift Data Binding. It is an important framework. If you new to Combine, see next article. If you want other samples, see following articles. This article explains how to support Combine in a custom class. Adopt to ObservableObject protocol. To make a class to support Combine, adopt to ObservableObject protocol. To notify a changes of properties with Combine, mark the property with @Published attribute. class PlayerStatus : ObservableObject { @Published var name: String = "" @Published var hitPoint: Int = 100 } […]

  • December 26, 2020
  • December 26, 2020

Configure the project with Xcode to support Apple Notarization Service

March 6, 2020  In “How confirm the program satisfied requirements”, --strict option was missing, added it. There are some way to support Apple Notarization Service. From February 3, 2020, if the app want to be notarized, the app need to meet the original notarization prerequisites. This article describe that how to configure the project with Xcode. Notarization Prerequisites Notarization Prerequisites are following: All Executables are need to be code signed. Enable Hardened Runtime of all of the applications and the command line tools (CLI). Use “Developer ID Application Certificate”, “Developer ID Kernel Extension Certificate” or “Developer ID Installer Certificate” to […]

  • December 25, 2020
  • December 26, 2020

Setup old macOS as guest on the Parallels Desktop

The version of the Parallels Desktop in this article is Parallels Desktop 15. Sometimes, long-lived product have been support too old macOS. Parallels Desktop is useful to test these product. It supports too old macOS such as OS X 10.5 Leopard Server as guest. There are some tips to setup OS X 10.15 Leopard Server as guest. If you want to set up old macOS as guest, this article will help you. The Problem The problem is that the Parallels Tools can’t be installed on the OS X 10.5.0 Leopard Server. The bad application icon was appeared. It seems that […]

  • December 7, 2020
  • December 26, 2020

How to configure the Nginx to support the HTTP POST method

How to configure the Nginx to support the HTTP POST method The docker is more useful to test and debug the code to communicate with the Web server rather than the real web server. The following post says that how to run the web server container with the docker. However, the docker can’t handle the HTTP method with the default configuration. This post explains that the Nginx in the container returns the contents of the file at URL same as GET method. Error Response The Nginx with the default configuration returns the response below when the client program connects with […]

  • December 7, 2020
  • December 26, 2020

Tips for combining Objective-C and Swift

The applications have been used long time can not be written with only Swift. They ofter contains C/C++ or Objective-C codes. My mac application is also written with C/C++ and Objective-C. This post says that tips for combining Objective-C and Swift. Declare the code supports ARC If your code expects that is compiled with ARC, you should declare it. The following code reports the error when you compile without the ARC. #if !__has_feature(objc_arc) #error This source file must be compiled with ARC. #endif If you write the warning “This source file must be compiled with ARC” with the comment only, […]

  • December 7, 2020
  • December 26, 2020

The Docker is useful to test and to debug the code to connect with HTTP/HTTPS

If you implement the code to communicate with HTTP or HTTPS, you may want to test it with fixed response. The docker is useful to do it. It can create and run the container which contains the Nginx, the web server. You can test your application with this container. How to create the container Create the docker image To create the docker image, create the file with name ‘Dockerfile’ and write below. FROM nginx:1.17 Create the Composer define file Create the docker-compose.yml file and write code below. version: "3" services: nginx: build: . ports: - 8080:80 volumes: - ./content_home:/usr/share/nginx/html Create […]

  • December 4, 2020
  • December 26, 2020

Which class we should use? WKWebView or SFSafariViewController

UIWebViewClass was deprecated and we need to replace it with WKWebView or SFSafariViewController. Which class we should use? I think we use WKWebView normally, but SFSafariViewController has enough functionality in some case. Requirements It is decided which class can be used by requirements. You want to do something just before or after loading pages. You want to know the URL of loading pages. You want to execute JavaScript on loaded pages. If you want to do above, you need to use WKWebView. SFSafariViewController can not do above. Requirements are really needed? “We want to do something just after loading pages.”. […]

  • December 3, 2020
  • December 26, 2020

Change the option of “Language Switcher” to fix the http status 302 redirect

This blog is written in two languages, Japanese and English. I am using Language Switcher which generates the hreflang and the language switch in the site. However, this cause that my web server reports the HTTP Status 302 with any pages. Problem Problem was below. Sometimes, the browser redirects to the top page when access to the sitemap.xml. The web server always reports HTTP Status 302 Redirect against any pages, even though it exists. I found this problem with the Google Search Console. It reported that the sitemap.xml was not found and received HTTP Status 302 error. Check the HTTP […]

  • December 2, 2020
  • January 28, 2021

[2021/1/28 Updated] System Requirements of Xcode

2021/1/28 : Added the Xcode 12.4. This post is a list of the system requirements of each versions of Xcode. System Requirements of Xcode Xcode 12 The system requirements of Xcode 12 is below. Xcode System Requirements Platform SDK On Device Debugging Xcode 12.4 macOS Big Sur 11 Apple Silicon or later,macOS Catalina 10.15.4 Intel or later iOS 14.4, iPadOS 14.4, tvOS 14.3, watchOS 7.2, macOS Big Sur 11.1 iOS 9 or later, tvOS 9 or later, watchOS 2 or later Xcode 12.3 macOS Big Sur 11.0.1 Apple Silicon or latermacOS Catalina 10.15.4 Intel or later iOS 14.3, iPadOS 14.3, […]

>Programming Tips From Software Engineer

Programming Tips From Software Engineer

Technical News, Documents and Tips.