ARWAY
Published in

ARWAY

Building AR Apps with Flutter and ARwayKit

ARwayKit + Flutter
ARwayKit + Flutter

Thanks to ARwayKit, developers can now build unique AR experiences in a single application, using Unity’s power, while benefiting from Flutter's native performance and battery life preservation!

How does it work?

Components of ARwayKit + Flutter:‌

  • Flutter Project: Your new/existing Flutter project used for the integration with ARWAY Unity SDK.
  • ARWAY Web Studio: included in ARwayKit, it’s a one-stop place for creating and editing maps, adding floor plans for navigation along with overlaying 3D assets, waypoints, destinations, text, and pictures over it.
  • ARWAY SDK: included in ARwayKit, it’s a Unity-based SDK for linking the AR experiences created in the Web Studio and adding them to the Flutter application as a page/scene.

How to develop using ARwayKit + Flutter?

1. Download the Flutter project‌

Download the project as ZIP
Download the project as a ZIP

2. Configure the Flutter project

Add Flutter Dependencies
Add Flutter Dependencies
import 'package:flutter_unity_widget/flutter_unity_widget.dart';

3. Configure the Unity Project

├── android
├── ios
├── lib
├── test
├── unity
│ └── <Your Unity Project> // Example: ARwayKit-SDK
├── pubspec.yml
├── README.md
Add project to Unity Hub
Add project to Unity Hub.
Add scenes to Unity Build Settings
Add scenes to Unity Build Settings.
Export to Flutter
Export to Flutter

4. How to use ARWAY SDK Scenes?

5. iOS Platform Only

#import "UnityUtils.h"
InitArgs(CommandLine.argc, CommandLine.unsafeArgv)
import UIKit
import Flutter
@UIApplicationMain
@objc class AppDelegate: FlutterAppDelegate {
override func application(
_ application: UIApplication,
didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?
) -> Bool {
InitArgs(CommandLine.argc, CommandLine.unsafeArgv)
GeneratedPluginRegistrant.register(with: self)
return super.application(application, didFinishLaunchingWithOptions: launchOptions)
}
}
#import "UnityUtils.h"
int main(int argc, char * argv[]) {
@autoreleasepool {
InitArgs(argc, argv);
return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));
}
}

6. ‌Build And Run:‌

$ flutter run
Start Screen
Start Screen
Unity Screen
Unity Screen

Try ARwayKit — Sign Up Now!

--

--

Through Unity, optimized for Google and Apple, ARWAY grants you an Augmented Reality Software Kit to frame the digital world in a few minutes!

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store