Search categories, packages and repositories

GitHub repositoryarslanraza7/ar_core

ar_core

Complete AR Solution for Android And iOS

ar_core project cover
Stars
7
Forks
3
Last push (UTC)
Mar 16, 2022
Project status
Active

Original README

English project snapshot. Visit GitHub for the latest content.

ar_core Flutter Package for Augmented Reality

pub package

ar_core is an augmented reality mobile application kit for mobile devices that enables the creation of augmented reality applications.

Many thanks to Arslan Raza for the ar_core, he served as a great basis and starting point for this project.

Features

  • Display live camera preview in a widget.
  • Custom Camera, Place anywhere on the Screen.
  • Choose Asset, Network or 3d objects in png.
  • Drag, Resize, Rotate, Zoom in and out objects.
  • Add access to the image stream from Dart.

Getting Started

Installing

Add the Flutter package to your project by running:

flutter pub add ar_core

Or manually add this to your pubspec.yaml file (and run flutter pub get):

dependencies:
  ar_core: ^0.0.1
iOS

The camera plugin functionality works on iOS 10.0 or higher. If compiling for any version lower than 10.0, make sure to programmatically check the version of iOS running on the device before using any camera plugin features. The device_info_plus plugin, for example, can be used to check the iOS version.

Add two rows to the ios/Runner/Info.plist:

  • one with the key Privacy - Camera Usage Description and a usage description.
  • and one with the key Privacy - Microphone Usage Description and a usage description.

Or in text format add the key:

<key>NSCameraUsageDescription</key>
<string>Can I use the camera please?</string>
<key>NSMicrophoneUsageDescription</key>
<string>Can I use the mic please?</string>
Android

Change the minimum Android sdk version to 21 (or higher) in your android/app/build.gradle file.

minSdkVersion 21

It's important to note that the MediaRecorder class is not working properly on emulators, as stated in the documentation: https://developer.android.com/reference/android/media/MediaRecorder. Specifically, when recording a video with sound enabled and trying to play it back, the duration won't be correct and you will only see the first frame.

Importing

Add this to your code:

import 'package:ar_core/ar_core.dart';
Usage or How to Use

Replace your Scaffold to Augmented(), and it will handle all your view. if you want to pass an image just pass an image as a constructor.

#Write this code in main


import 'package:camera/camera.dart';
import 'package:flutter/material.dart';

List<CameraDescription> cameras = [];
Future<void> main() async {
  try {
    WidgetsFlutterBinding.ensureInitialized();
    cameras = await availableCameras();
  } on CameraException catch (e) {
    print(e.description);
  }
  runApp(const MyApp());
}
Add main class
class AugmentedReality extends StatefulWidget {
  const AugmentedReality({Key? key}) : super(key: key);

  @override
  _AugmentedRealityState createState() => _AugmentedRealityState();
}

class _AugmentedRealityState extends State<AugmentedReality> {
  @override
  Widget build(BuildContext context) {
    return Augmented(
     /// Provide Network Image Link to add your object
    image: 'https://freepngimg.com/static/img/cat/hair.png'
    );
  }
}
Sheikh Arslan Raza GitHub avatar
GitHub author

Sheikh Arslan Raza ↗

Mobile Application Developer | Flutter Developer

Paynest Fintech LTDPakistan
LanguagesDartSwiftKotlinObjective-C

Packages published by this repository

Dependencies used

Dependency list 3 items

  • flutter{"sdk":"flutter"}
  • camera^0.9.4+16
  • flutter_testDevelopment{"sdk":"flutter"}

How do I choose a repository?

Start with your use case, compare repository activity, and check the original project before adopting it.

  1. Search by repository name, owner or description, then narrow the results by topic.
  2. Compare stars, forks and recent pushes. Stars show community interest, not a guarantee of quality.
  3. Read the README, license and issues on GitHub before using a project.

Sources and maintenance

“A repository is the most basic element of GitHub.”

GitHub Docs — About repositories ↗