/DroidKaigi2018iOS

(Unofficial) iOS conference app for DroidKaigi 2018

Primary LanguageObjective-C

DroidKaigi 2018 unofficial iOS app

This project is Kotlin/Native iOS app of DroidKaigi2018.

Official Android app project

Official is here.

Features

List of sessions Map List of contributors

  • Check all of sessions.
  • Find the place of DroidKaigi will be held.
  • See contributors of this app. (Please encourage us!)

Contributing

We are always welcome your contribution!

You can find open isssues here, welcome contribute or easy tagged issues are good for first contribute.

Making new issues is welcome too!

Before senfing PullRequest

Please, don't include your team in project.pbxproj when commiting. 🙏

Development Environment

requirement

  • machine running macOS installed Xcode 9.2
  • Apple developer program account
  • iOS devices for running binary (iOS Simulator is unavailable for Kotlin/Native)
  • CLion (optional)

Kotlin/Native

To compile Kotlin/Native use following steps:

git clone https://github.com/JetBrains/kotlin-native.git
cd kotlin-native
./gradlew dependencies:update
# this may take around a hour
./gradlew dist distPlatformLibs
export PATH=./dist/bin:$PATH

You can find Kotlin/Native introduction in here.

The instance of Kotlin/Native iOS app is KotlinConf 2017 app. We reference it to write codes.

How to build iOS app

  1. (optional) Open ios/ directory with CLion.
  2. (optional) Write your code. Put your code under ios/src/main/kotlin/.
  3. Open ios/DroidKaigi2018.xcodeproj with Xcode.
  4. Connect your iOS device to your mac.
  5. Choose your iOS device as running target.
  6. In Xcode, select your Team at DroidKaigi2018 > General Tab > (in left pain TARGET) DroidKaigi2018 > Signing Section > Team pull down menu.
    • If you have no team options, choose Add an Acount... and add your Apple ID.
    • Maybe you can find your Personal Team.
  7. Run and you can find DroidKaigi2018 app in your home screen!
    • If you using Personal Team, in first time, you have to accept your Signing Certificate from Settings.app > General > Device Management .

How to add new pod

It's little confusing for me (and maybe you).

  1. Add new pod into Podfile normally.
  2. Archive pod as framework. (Select that scheme in Xcode and Product > Archive)
  3. Copy framework from DerivedData into Frameworks directory.
  4. Add header files we want to use in Kotlin, linker/compiler options into src/main/c_interop/libs.def.
  5. Run compileKonanLibs gradle task.

Credit

This project uses some modern libraries and source codes.

License

TBD