Skip to content

Instantly share code, notes, and snippets.

👨‍💻

Hu Junfeng hujunfeng

👨‍💻
Block or report user

Report or block hujunfeng

Hide content and notifications from this user.

Learn more about blocking users

Contact Support about this user’s behavior.

Learn more about reporting abuse

Report abuse
View GitHub Profile
@hujunfeng
hujunfeng / wwdc2019_sessions.txt
Created Jun 24, 2019
The list of WWDC 2019 sessions
View wwdc2019_sessions.txt
101 Keynote
103 Platforms State of the Union
104 Apple Design Awards
202 Using Core Data With CloudKit
203 Introducing Desktop-class Browsing on iPad
204 Introducing SwiftUI: Building Your First App
205 Introducing iPad Apps for Mac
206 Introducing SF Symbols
207 Introducing SiriKit Media Intents
208 Creating Independent Watch Apps
@hujunfeng
hujunfeng / Hardware.swift
Last active Jan 9, 2019
A Swift struct to read the model names for iOS devices.
View Hardware.swift
import Darwin
/// A struct for reading device model names for iOS devices.
public struct Hardware {
public let machine: String
public init() {
machine = Hardware.getSystemInformation("hw.machine")
}
View wwdc2018_sessions_list.txt
101 WWDC 2018 Keynote
102 Platforms State of the Union
103 Apple Design Awards
201 Creating Apps for a Global Audience
202 What's New in Cocoa Touch
203 I Have This Idea For An App...
204 Automatic Strong Passwords and Security Code AutoFill
205 Advances in Research and Care Frameworks
206 What's New in watchOS
207 Strategies for Securing Web Content
View wwdc2017_sessions_list.txt
101 - WWDC 2017 Keynote
102 - Platforms State of the Union
201 - What's New in Cocoa Touch
202 - Advances in TVMLKit
203 - Introducing Drag and Drop
204 - Updating Your App for iOS 11
205 - What's New in watchOS
206 - Introducing Password AutoFill for Apps
207 - What's New in Cocoa
208 - Natural Language Processing and your Apps
View Reset local branch with remote banch (or force pull).fish
# Reset branch with remote branch (or force pull)
$ git fetch origin master
$ git reset --hard FETCH_HEAD
$ git clean -df
# Altering `master` to whatever branch you want to be following.
@hujunfeng
hujunfeng / Optional+SafeValue.swift
Last active Jul 8, 2016
A `safeValue` method for Optional type. It returns an empty value if the wrapped type of the Optional type has one, for example String and Array.
View Optional+SafeValue.swift
/// A type that supports an "empty value"
protocol EmptyValuable {
/// Returns the empty value of `Self`
static var emptyValue: Self { get }
}
extension String: EmptyValuable {
static var emptyValue: String {
return ""
}
@hujunfeng
hujunfeng / wwdc16_sessions_list
Last active Jun 20, 2016
WWDC16 Sessions List
View wwdc16_sessions_list
101 - Keynote
102 - Platforms State of the Union
103 - Apple Design Awards
201 - Internationalization Best Practices
202 - What's New in Accessibility
203 - What's New in Cocoa
204 - iMessage Apps and Stickers, Part 1
205 - What's New in Cocoa Touch
206 - What's New in tvOS
207 - What's New in Foundation for Swift
@hujunfeng
hujunfeng / Root.plist
Last active Oct 19, 2019
Add version in Settings.bundle for iOS apps
View Root.plist
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>PreferenceSpecifiers</key>
<array>
<dict>
<key>DefaultValue</key>
<string></string>
<key>Key</key>
View random.swift
import Darwin
extension Int {
static func random() -> Int {
return Int(arc4random_uniform(UInt32(Int.max)))
}
static func random(range: Range<Int>) -> Int {
return Int(arc4random_uniform(UInt32(range.endIndex - range.startIndex))) + range.startIndex
}
View YahooSearchKit.podspec
Pod::Spec.new do |spec|
spec.name = 'YahooSearchKit'
spec.platform = :ios, '7.0'
spec.version = '0.5.0'
spec.summary = "Yahoo Search SDK for iOS"
spec.license = { :type => 'Yahoo', :text => 'Yahoo Confidential' }
spec.homepage = 'https://github.com/yahoo/searchsdk-ios'
spec.author = {
'Mobile Search' => 'mobile-search-eng@yahoo-inc.com'
}
You can’t perform that action at this time.