V1.0.0(1)
18
.gitignore
vendored
Normal file
@ -0,0 +1,18 @@
|
||||
*.iml
|
||||
.gradle
|
||||
/local.properties
|
||||
/.idea/caches
|
||||
/.idea/libraries
|
||||
/.idea/modules.xml
|
||||
/.idea/workspace.xml
|
||||
/.idea/navEditor.xml
|
||||
/.idea/assetWizardSettings.xml
|
||||
.DS_Store
|
||||
/build
|
||||
/captures
|
||||
.externalNativeBuild
|
||||
.cxx
|
||||
local.properties
|
||||
app/src/test/java/com/draw/painting/test/ExampleUnitTest.java
|
||||
.idea/
|
||||
.safedk/
|
||||
1
app/.gitignore
vendored
Normal file
@ -0,0 +1 @@
|
||||
/build
|
||||
BIN
app/ARDrawing(com.ar.photo.drawing.paint).jks
Normal file
74
app/build.gradle.kts
Normal file
@ -0,0 +1,74 @@
|
||||
import java.util.Date
|
||||
import java.text.SimpleDateFormat
|
||||
|
||||
plugins {
|
||||
id("com.android.application")
|
||||
id("org.jetbrains.kotlin.android")
|
||||
// id("com.google.firebase.crashlytics")
|
||||
// id("com.google.gms.google-services")
|
||||
id("io.objectbox")
|
||||
}
|
||||
val timestamp = SimpleDateFormat("MM_dd_HH_mm").format(Date())
|
||||
android {
|
||||
namespace = "com.ar.drawing"
|
||||
compileSdk = 34
|
||||
|
||||
defaultConfig {
|
||||
//com.ar.photo.drawing.paint
|
||||
applicationId = "com.ar.photo.drawing.paint"
|
||||
minSdk = 23
|
||||
targetSdk = 34
|
||||
versionCode = 1
|
||||
versionName = "1.0.0"
|
||||
setProperty(
|
||||
"archivesBaseName",
|
||||
"AR Drawing_V" + versionName + "(${versionCode})_$timestamp"
|
||||
)
|
||||
testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
|
||||
}
|
||||
|
||||
buildTypes {
|
||||
release {
|
||||
isMinifyEnabled = true
|
||||
proguardFiles(
|
||||
getDefaultProguardFile("proguard-android-optimize.txt"),
|
||||
"proguard-rules.pro"
|
||||
)
|
||||
}
|
||||
}
|
||||
compileOptions {
|
||||
sourceCompatibility = JavaVersion.VERSION_17
|
||||
targetCompatibility = JavaVersion.VERSION_17
|
||||
}
|
||||
// kotlinOptions {
|
||||
// jvmTarget = "1.8"
|
||||
// }
|
||||
buildFeatures {
|
||||
viewBinding = true
|
||||
}
|
||||
}
|
||||
|
||||
dependencies {
|
||||
|
||||
implementation("androidx.appcompat:appcompat:1.7.0")
|
||||
implementation("com.google.android.material:material:1.12.0")
|
||||
implementation("androidx.constraintlayout:constraintlayout:2.1.4")
|
||||
testImplementation("junit:junit:4.13.2")
|
||||
androidTestImplementation("androidx.test.ext:junit:1.1.5")
|
||||
androidTestImplementation("androidx.test.espresso:espresso-core:3.5.1")
|
||||
|
||||
val camerax_version = "1.1.0-beta01"
|
||||
//noinspection GradleDependency
|
||||
implementation("androidx.camera:camera-core:${camerax_version}")
|
||||
//noinspection GradleDependency
|
||||
implementation("androidx.camera:camera-camera2:${camerax_version}")
|
||||
//noinspection GradleDependency
|
||||
implementation("androidx.camera:camera-lifecycle:${camerax_version}")
|
||||
//noinspection GradleDependency
|
||||
// implementation("androidx.camera:camera-video:${camerax_version}")
|
||||
//noinspection GradleDependency
|
||||
implementation("androidx.camera:camera-view:${camerax_version}")
|
||||
//noinspection GradleDependency
|
||||
implementation("androidx.camera:camera-extensions:${camerax_version}")
|
||||
|
||||
}
|
||||
74
app/objectbox-models/default.json
Normal file
@ -0,0 +1,74 @@
|
||||
{
|
||||
"_note1": "KEEP THIS FILE! Check it into a version control system (VCS) like git.",
|
||||
"_note2": "ObjectBox manages crucial IDs for your object model. See docs for details.",
|
||||
"_note3": "If you have VCS merge conflicts, you must resolve them according to ObjectBox docs.",
|
||||
"entities": [
|
||||
{
|
||||
"id": "6:7538851138417121743",
|
||||
"lastPropertyId": "2:9141214615690805226",
|
||||
"name": "DataLocal",
|
||||
"properties": [
|
||||
{
|
||||
"id": "1:3359943781002877658",
|
||||
"name": "id",
|
||||
"type": 6,
|
||||
"flags": 1
|
||||
},
|
||||
{
|
||||
"id": "2:9141214615690805226",
|
||||
"name": "path",
|
||||
"type": 9
|
||||
}
|
||||
],
|
||||
"relations": []
|
||||
},
|
||||
{
|
||||
"id": "7:463965928465774918",
|
||||
"lastPropertyId": "2:5181380632390917246",
|
||||
"name": "BeanImport",
|
||||
"properties": [
|
||||
{
|
||||
"id": "1:6460664315532313231",
|
||||
"name": "id",
|
||||
"type": 6,
|
||||
"flags": 1
|
||||
},
|
||||
{
|
||||
"id": "2:5181380632390917246",
|
||||
"name": "uri",
|
||||
"type": 9
|
||||
}
|
||||
],
|
||||
"relations": []
|
||||
}
|
||||
],
|
||||
"lastEntityId": "7:463965928465774918",
|
||||
"lastIndexId": "0:0",
|
||||
"lastRelationId": "0:0",
|
||||
"lastSequenceId": "0:0",
|
||||
"modelVersion": 5,
|
||||
"modelVersionParserMinimum": 5,
|
||||
"retiredEntityUids": [
|
||||
4752690921563405782,
|
||||
3683195988363348208,
|
||||
3825568787982449740,
|
||||
6657683755955689878,
|
||||
407850772463518772
|
||||
],
|
||||
"retiredIndexUids": [],
|
||||
"retiredPropertyUids": [
|
||||
8935738795063358965,
|
||||
6634881448055585465,
|
||||
5221624129603754986,
|
||||
5984527578734576412,
|
||||
804363456560139643,
|
||||
1837531769919373488,
|
||||
5348030114980625145,
|
||||
243415540686520025,
|
||||
7391488554923755890,
|
||||
481535799621363836,
|
||||
8358790201098602109
|
||||
],
|
||||
"retiredRelationUids": [],
|
||||
"version": 1
|
||||
}
|
||||
22
app/proguard-rules.pro
vendored
Normal file
@ -0,0 +1,22 @@
|
||||
# Add project specific ProGuard rules here.
|
||||
# You can control the set of applied configuration files using the
|
||||
# proguardFiles setting in build.gradle.
|
||||
#
|
||||
# For more details, see
|
||||
# http://developer.android.com/guide/developing/tools/proguard.html
|
||||
|
||||
# If your project uses WebView with JS, uncomment the following
|
||||
# and specify the fully qualified class name to the JavaScript interface
|
||||
# class:
|
||||
#-keepclassmembers class fqcn.of.javascript.interface.for.webview {
|
||||
# public *;
|
||||
#}
|
||||
|
||||
# Uncomment this to preserve the line number information for
|
||||
# debugging stack traces.
|
||||
#-keepattributes SourceFile,LineNumberTable
|
||||
|
||||
# If you keep the line number information, uncomment this to
|
||||
# hide the original source file name.
|
||||
#-renamesourcefileattribute SourceFile
|
||||
|
||||
@ -0,0 +1,26 @@
|
||||
package com.ar.drawing;
|
||||
|
||||
import android.content.Context;
|
||||
|
||||
import androidx.test.platform.app.InstrumentationRegistry;
|
||||
import androidx.test.ext.junit.runners.AndroidJUnit4;
|
||||
|
||||
import org.junit.Test;
|
||||
import org.junit.runner.RunWith;
|
||||
|
||||
import static org.junit.Assert.*;
|
||||
|
||||
/**
|
||||
* Instrumented test, which will execute on an Android device.
|
||||
*
|
||||
* @see <a href="http://d.android.com/tools/testing">Testing documentation</a>
|
||||
*/
|
||||
@RunWith(AndroidJUnit4.class)
|
||||
public class ExampleInstrumentedTest {
|
||||
@Test
|
||||
public void useAppContext() {
|
||||
// Context of the app under test.
|
||||
Context appContext = InstrumentationRegistry.getInstrumentation().getTargetContext();
|
||||
assertEquals("com.draw.painting.test", appContext.getPackageName());
|
||||
}
|
||||
}
|
||||
58
app/src/main/AndroidManifest.xml
Normal file
@ -0,0 +1,58 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:tools="http://schemas.android.com/tools">
|
||||
|
||||
<uses-feature
|
||||
android:name="android.hardware.camera"
|
||||
android:required="false" />
|
||||
|
||||
<uses-permission android:name="android.permission.CAMERA" />
|
||||
<uses-permission android:name="android.permission.INTERNET" />
|
||||
<uses-permission
|
||||
android:name="android.permission.READ_EXTERNAL_STORAGE"
|
||||
android:maxSdkVersion="32" />
|
||||
<uses-permission
|
||||
android:name="android.permission.WRITE_EXTERNAL_STORAGE"
|
||||
android:maxSdkVersion="32"
|
||||
tools:ignore="ScopedStorage" />
|
||||
<uses-permission android:name="android.permission.READ_MEDIA_IMAGES" />
|
||||
|
||||
<application
|
||||
android:name="com.ar.drawing.MyDraw"
|
||||
android:allowBackup="true"
|
||||
android:dataExtractionRules="@xml/data_extraction_rules"
|
||||
android:fullBackupContent="@xml/backup_rules"
|
||||
android:icon="@mipmap/im_logo"
|
||||
android:label="@string/app_name"
|
||||
android:roundIcon="@mipmap/im_logo"
|
||||
android:supportsRtl="true"
|
||||
android:theme="@style/Theme.PaintingHelper"
|
||||
tools:targetApi="31">
|
||||
<activity
|
||||
android:name="com.ar.drawing.ui.LocalActivity"
|
||||
android:exported="false" />
|
||||
<activity
|
||||
android:name="com.ar.drawing.ui.ItemActivity"
|
||||
android:exported="false"
|
||||
android:screenOrientation="portrait" />
|
||||
<activity
|
||||
android:name="com.ar.drawing.ui.HomeActivity"
|
||||
android:exported="false"
|
||||
android:screenOrientation="portrait" />
|
||||
<activity
|
||||
android:name="com.ar.drawing.ui.WelActivity"
|
||||
android:exported="true"
|
||||
android:screenOrientation="portrait">
|
||||
<intent-filter>
|
||||
<action android:name="android.intent.action.MAIN" />
|
||||
|
||||
<category android:name="android.intent.category.LAUNCHER" />
|
||||
</intent-filter>
|
||||
</activity>
|
||||
<activity
|
||||
android:name="com.ar.drawing.ui.PreActivity"
|
||||
android:exported="false"
|
||||
android:screenOrientation="portrait" />
|
||||
</application>
|
||||
|
||||
</manifest>
|
||||
BIN
app/src/main/assets/Animals/1.jpg
Normal file
|
After Width: | Height: | Size: 89 KiB |
BIN
app/src/main/assets/Animals/10.jpg
Normal file
|
After Width: | Height: | Size: 29 KiB |
BIN
app/src/main/assets/Animals/11.jpg
Normal file
|
After Width: | Height: | Size: 55 KiB |
BIN
app/src/main/assets/Animals/12.jpg
Normal file
|
After Width: | Height: | Size: 44 KiB |
BIN
app/src/main/assets/Animals/13.jpg
Normal file
|
After Width: | Height: | Size: 37 KiB |
BIN
app/src/main/assets/Animals/14.jpg
Normal file
|
After Width: | Height: | Size: 12 KiB |
BIN
app/src/main/assets/Animals/15.jpg
Normal file
|
After Width: | Height: | Size: 87 KiB |
BIN
app/src/main/assets/Animals/16.jpg
Normal file
|
After Width: | Height: | Size: 21 KiB |
BIN
app/src/main/assets/Animals/17.jpg
Normal file
|
After Width: | Height: | Size: 14 KiB |
BIN
app/src/main/assets/Animals/18.jpg
Normal file
|
After Width: | Height: | Size: 19 KiB |
BIN
app/src/main/assets/Animals/19.jpg
Normal file
|
After Width: | Height: | Size: 18 KiB |
BIN
app/src/main/assets/Animals/2.jpg
Normal file
|
After Width: | Height: | Size: 108 KiB |
BIN
app/src/main/assets/Animals/20.jpg
Normal file
|
After Width: | Height: | Size: 13 KiB |
BIN
app/src/main/assets/Animals/21.jpg
Normal file
|
After Width: | Height: | Size: 12 KiB |
BIN
app/src/main/assets/Animals/22.jpg
Normal file
|
After Width: | Height: | Size: 17 KiB |
BIN
app/src/main/assets/Animals/23.jpg
Normal file
|
After Width: | Height: | Size: 18 KiB |
BIN
app/src/main/assets/Animals/24.jpg
Normal file
|
After Width: | Height: | Size: 16 KiB |
BIN
app/src/main/assets/Animals/25.jpg
Normal file
|
After Width: | Height: | Size: 9.0 KiB |
BIN
app/src/main/assets/Animals/26.jpg
Normal file
|
After Width: | Height: | Size: 13 KiB |
BIN
app/src/main/assets/Animals/27.jpg
Normal file
|
After Width: | Height: | Size: 21 KiB |
BIN
app/src/main/assets/Animals/28.jpg
Normal file
|
After Width: | Height: | Size: 22 KiB |
BIN
app/src/main/assets/Animals/29.jpg
Normal file
|
After Width: | Height: | Size: 29 KiB |
BIN
app/src/main/assets/Animals/3.jpg
Normal file
|
After Width: | Height: | Size: 15 KiB |
BIN
app/src/main/assets/Animals/30.jpg
Normal file
|
After Width: | Height: | Size: 33 KiB |
BIN
app/src/main/assets/Animals/31.jpg
Normal file
|
After Width: | Height: | Size: 36 KiB |
BIN
app/src/main/assets/Animals/4.jpg
Normal file
|
After Width: | Height: | Size: 26 KiB |
BIN
app/src/main/assets/Animals/5.jpg
Normal file
|
After Width: | Height: | Size: 16 KiB |
BIN
app/src/main/assets/Animals/6.jpg
Normal file
|
After Width: | Height: | Size: 18 KiB |
BIN
app/src/main/assets/Animals/7.jpg
Normal file
|
After Width: | Height: | Size: 19 KiB |
BIN
app/src/main/assets/Animals/8.jpg
Normal file
|
After Width: | Height: | Size: 17 KiB |
BIN
app/src/main/assets/Animals/9.jpg
Normal file
|
After Width: | Height: | Size: 22 KiB |
BIN
app/src/main/assets/Birds/1.jpg
Normal file
|
After Width: | Height: | Size: 13 KiB |
BIN
app/src/main/assets/Birds/10.jpg
Normal file
|
After Width: | Height: | Size: 18 KiB |
BIN
app/src/main/assets/Birds/11.jpg
Normal file
|
After Width: | Height: | Size: 21 KiB |
BIN
app/src/main/assets/Birds/12.jpg
Normal file
|
After Width: | Height: | Size: 20 KiB |
BIN
app/src/main/assets/Birds/13.jpg
Normal file
|
After Width: | Height: | Size: 21 KiB |
BIN
app/src/main/assets/Birds/14.jpg
Normal file
|
After Width: | Height: | Size: 41 KiB |
BIN
app/src/main/assets/Birds/15.jpg
Normal file
|
After Width: | Height: | Size: 21 KiB |
BIN
app/src/main/assets/Birds/16.jpg
Normal file
|
After Width: | Height: | Size: 22 KiB |
BIN
app/src/main/assets/Birds/17.jpg
Normal file
|
After Width: | Height: | Size: 33 KiB |
BIN
app/src/main/assets/Birds/18.jpg
Normal file
|
After Width: | Height: | Size: 20 KiB |
BIN
app/src/main/assets/Birds/19.jpg
Normal file
|
After Width: | Height: | Size: 18 KiB |
BIN
app/src/main/assets/Birds/2.jpg
Normal file
|
After Width: | Height: | Size: 17 KiB |
BIN
app/src/main/assets/Birds/3.jpg
Normal file
|
After Width: | Height: | Size: 22 KiB |
BIN
app/src/main/assets/Birds/4.jpg
Normal file
|
After Width: | Height: | Size: 22 KiB |
BIN
app/src/main/assets/Birds/5.jpg
Normal file
|
After Width: | Height: | Size: 17 KiB |
BIN
app/src/main/assets/Birds/6.jpg
Normal file
|
After Width: | Height: | Size: 14 KiB |
BIN
app/src/main/assets/Birds/7.jpg
Normal file
|
After Width: | Height: | Size: 22 KiB |
BIN
app/src/main/assets/Birds/8.jpg
Normal file
|
After Width: | Height: | Size: 16 KiB |
BIN
app/src/main/assets/Birds/9.jpg
Normal file
|
After Width: | Height: | Size: 16 KiB |
BIN
app/src/main/assets/Butterfly/1.jpg
Normal file
|
After Width: | Height: | Size: 44 KiB |
BIN
app/src/main/assets/Butterfly/10.jpg
Normal file
|
After Width: | Height: | Size: 19 KiB |
BIN
app/src/main/assets/Butterfly/11.jpg
Normal file
|
After Width: | Height: | Size: 46 KiB |
BIN
app/src/main/assets/Butterfly/12.jpg
Normal file
|
After Width: | Height: | Size: 19 KiB |
BIN
app/src/main/assets/Butterfly/13.jpg
Normal file
|
After Width: | Height: | Size: 20 KiB |
BIN
app/src/main/assets/Butterfly/14.jpg
Normal file
|
After Width: | Height: | Size: 37 KiB |
BIN
app/src/main/assets/Butterfly/15.jpg
Normal file
|
After Width: | Height: | Size: 24 KiB |
BIN
app/src/main/assets/Butterfly/16.jpg
Normal file
|
After Width: | Height: | Size: 39 KiB |
BIN
app/src/main/assets/Butterfly/17.jpg
Normal file
|
After Width: | Height: | Size: 37 KiB |
BIN
app/src/main/assets/Butterfly/18.jpg
Normal file
|
After Width: | Height: | Size: 59 KiB |
BIN
app/src/main/assets/Butterfly/19.jpg
Normal file
|
After Width: | Height: | Size: 41 KiB |
BIN
app/src/main/assets/Butterfly/2.jpg
Normal file
|
After Width: | Height: | Size: 53 KiB |
BIN
app/src/main/assets/Butterfly/20.jpg
Normal file
|
After Width: | Height: | Size: 63 KiB |
BIN
app/src/main/assets/Butterfly/21.jpg
Normal file
|
After Width: | Height: | Size: 33 KiB |
BIN
app/src/main/assets/Butterfly/3.jpg
Normal file
|
After Width: | Height: | Size: 30 KiB |
BIN
app/src/main/assets/Butterfly/4.jpg
Normal file
|
After Width: | Height: | Size: 20 KiB |
BIN
app/src/main/assets/Butterfly/5.jpg
Normal file
|
After Width: | Height: | Size: 17 KiB |
BIN
app/src/main/assets/Butterfly/6.jpg
Normal file
|
After Width: | Height: | Size: 22 KiB |
BIN
app/src/main/assets/Butterfly/7.jpg
Normal file
|
After Width: | Height: | Size: 26 KiB |
BIN
app/src/main/assets/Butterfly/8.jpg
Normal file
|
After Width: | Height: | Size: 18 KiB |
BIN
app/src/main/assets/Butterfly/9.jpg
Normal file
|
After Width: | Height: | Size: 23 KiB |
BIN
app/src/main/assets/Cafe/1.jpg
Normal file
|
After Width: | Height: | Size: 22 KiB |
BIN
app/src/main/assets/Cafe/10.jpg
Normal file
|
After Width: | Height: | Size: 18 KiB |
BIN
app/src/main/assets/Cafe/11.jpg
Normal file
|
After Width: | Height: | Size: 20 KiB |
BIN
app/src/main/assets/Cafe/12.jpg
Normal file
|
After Width: | Height: | Size: 26 KiB |
BIN
app/src/main/assets/Cafe/13.jpg
Normal file
|
After Width: | Height: | Size: 26 KiB |
BIN
app/src/main/assets/Cafe/14.jpg
Normal file
|
After Width: | Height: | Size: 25 KiB |
BIN
app/src/main/assets/Cafe/15.jpg
Normal file
|
After Width: | Height: | Size: 20 KiB |
BIN
app/src/main/assets/Cafe/16.jpg
Normal file
|
After Width: | Height: | Size: 23 KiB |
BIN
app/src/main/assets/Cafe/17.jpg
Normal file
|
After Width: | Height: | Size: 21 KiB |
BIN
app/src/main/assets/Cafe/18.jpg
Normal file
|
After Width: | Height: | Size: 18 KiB |
BIN
app/src/main/assets/Cafe/19.jpg
Normal file
|
After Width: | Height: | Size: 19 KiB |
BIN
app/src/main/assets/Cafe/2.jpg
Normal file
|
After Width: | Height: | Size: 18 KiB |
BIN
app/src/main/assets/Cafe/20.jpg
Normal file
|
After Width: | Height: | Size: 18 KiB |
BIN
app/src/main/assets/Cafe/21.jpg
Normal file
|
After Width: | Height: | Size: 11 KiB |
BIN
app/src/main/assets/Cafe/22.jpg
Normal file
|
After Width: | Height: | Size: 20 KiB |
BIN
app/src/main/assets/Cafe/23.jpg
Normal file
|
After Width: | Height: | Size: 16 KiB |
BIN
app/src/main/assets/Cafe/24.jpg
Normal file
|
After Width: | Height: | Size: 14 KiB |
BIN
app/src/main/assets/Cafe/25.jpg
Normal file
|
After Width: | Height: | Size: 14 KiB |
BIN
app/src/main/assets/Cafe/26.jpg
Normal file
|
After Width: | Height: | Size: 16 KiB |
BIN
app/src/main/assets/Cafe/27.jpg
Normal file
|
After Width: | Height: | Size: 12 KiB |
BIN
app/src/main/assets/Cafe/28.jpg
Normal file
|
After Width: | Height: | Size: 14 KiB |