Repo Created

This commit is contained in:
Fr4nz D13trich 2025-11-15 17:44:12 +01:00
parent eb305e2886
commit a8c22c65db
4784 changed files with 329907 additions and 2 deletions

View file

@ -0,0 +1,54 @@
/*
* SPDX-FileCopyrightText: 2023 microG Project Team
* SPDX-License-Identifier: Apache-2.0
*/
apply plugin: 'com.android.library'
apply plugin: 'maven-publish'
apply plugin: 'signing'
android {
namespace "com.google.mlkit.vision.barcode"
compileSdkVersion androidCompileSdk
buildToolsVersion "$androidBuildVersionTools"
buildFeatures {
aidl = true
}
defaultConfig {
versionName version
minSdkVersion androidMinSdk
targetSdkVersion androidTargetSdk
}
compileOptions {
sourceCompatibility = 1.8
targetCompatibility = 1.8
}
}
apply from: '../../gradle/publish-android.gradle'
description = 'microG implementation of play-services-mlkit-barcode-scanning'
dependencies {
// Dependencies from play-services-mlkit-barcode-scanning:18.3.0
//api "com.google.android.datatransport:transport-api:2.2.1"
//api "com.google.android.datatransport:transport-backend-cct:2.3.3"
//api "com.google.android.datatransport:transport-runtime:2.2.6"
api project(':play-services-base')
api project(':play-services-basement')
api project(':play-services-tasks')
//api "com.google.android.odml:image:1.0.0-beta1"
//api "com.google.firebase:firebase-components:16.1.0"
//api "com.google.firebase:firebase-encoders:16.1.0"
//api "com.google.firebase:firebase-encoders-json:17.1.0"
//api "com.google.mlkit:barcode-scanning-common:17.0.0"
//api "com.google.mlkit:common:18.9.0"
//api "com.google.mlkit:vision-common:17.3.0"
//api "com.google.mlkit:vision-interfaces:16.2.0"
annotationProcessor project(":safe-parcel-processor")
}

View file

@ -0,0 +1,9 @@
<?xml version="1.0" encoding="utf-8"?>
<!--
~ SPDX-FileCopyrightText: 2023 microG Project Team
~ SPDX-License-Identifier: Apache-2.0
-->
<manifest xmlns:android="http://schemas.android.com/apk/res/android">
<application />
</manifest>

View file

@ -0,0 +1,11 @@
package com.google.mlkit.vision.barcode.aidls;
import com.google.android.gms.dynamic.IObjectWrapper;
import com.google.mlkit.vision.barcode.internal.Barcode;
import com.google.mlkit.vision.barcode.internal.ImageMetadata;
interface IBarcodeScanner {
void init() = 0;
void close() = 1;
List<Barcode> detect(IObjectWrapper image, in ImageMetadata metadata) = 2;
}

View file

@ -0,0 +1,9 @@
package com.google.mlkit.vision.barcode.aidls;
import com.google.android.gms.dynamic.IObjectWrapper;
import com.google.mlkit.vision.barcode.aidls.IBarcodeScanner;
import com.google.mlkit.vision.barcode.internal.BarcodeScannerOptions;
interface IBarcodeScannerCreator {
IBarcodeScanner create(IObjectWrapper wrappedContext, in BarcodeScannerOptions options) = 0;
}

View file

@ -0,0 +1,3 @@
package com.google.mlkit.vision.barcode.internal;
parcelable Barcode;

View file

@ -0,0 +1,3 @@
package com.google.mlkit.vision.barcode.internal;
parcelable BarcodeScannerOptions;

View file

@ -0,0 +1,3 @@
package com.google.mlkit.vision.barcode.internal;
parcelable ImageMetadata;

View file

@ -0,0 +1,32 @@
/*
* SPDX-FileCopyrightText: 2023 microG Project Team
* SPDX-License-Identifier: Apache-2.0
*/
package com.google.mlkit.vision.barcode.internal;
import android.os.Parcel;
import androidx.annotation.NonNull;
import com.google.android.gms.common.internal.safeparcel.AbstractSafeParcelable;
import com.google.android.gms.common.internal.safeparcel.SafeParcelable;
import com.google.android.gms.common.internal.safeparcel.SafeParcelableCreatorAndWriter;
@SafeParcelable.Class
public class Address extends AbstractSafeParcelable {
@Field(1)
public int type;
@Field(2)
public String[] addressLines;
// TODO: Copied from com.google.mlkit.vision.barcode.common.Barcode.Address
public static final int UNKNOWN = 0;
public static final int WORK = 1;
public static final int HOME = 2;
@Override
public void writeToParcel(@NonNull Parcel dest, int flags) {
CREATOR.writeToParcel(this, dest, flags);
}
public static final SafeParcelableCreatorAndWriter<Address> CREATOR = findCreator(Address.class);
}

View file

@ -0,0 +1,85 @@
/*
* SPDX-FileCopyrightText: 2023 microG Project Team
* SPDX-License-Identifier: Apache-2.0
*/
package com.google.mlkit.vision.barcode.internal;
import android.graphics.Point;
import android.os.Parcel;
import androidx.annotation.NonNull;
import com.google.android.gms.common.internal.safeparcel.AbstractSafeParcelable;
import com.google.android.gms.common.internal.safeparcel.SafeParcelable;
import com.google.android.gms.common.internal.safeparcel.SafeParcelableCreatorAndWriter;
@SafeParcelable.Class
public class Barcode extends AbstractSafeParcelable {
@Field(1)
public int format;
@Field(2)
public String displayValue;
@Field(3)
public String rawValue;
@Field(4)
public byte[] rawBytes;
@Field(5)
public Point[] cornerPoints;
@Field(6)
public int valueType;
@Field(7)
public Email email;
@Field(8)
public Phone phone;
@Field(9)
public Sms sms;
@Field(10)
public WiFi wifi;
@Field(11)
public UrlBookmark urlBookmark;
@Field(12)
public GeoPoint geoPoint;
@Field(13)
public CalendarEvent calendarEvent;
@Field(14)
public ContactInfo contactInfo;
@Field(15)
public DriverLicense driverLicense;
// TODO: Copied from com.google.mlkit.vision.barcode.common.Barcode
public static final int UNKNOWN_FORMAT = -1;
public static final int ALL_FORMATS = 0;
public static final int CODE_128 = 1;
public static final int CODE_39 = 2;
public static final int CODE_93 = 4;
public static final int CODABAR = 8;
public static final int DATA_MATRIX = 16;
public static final int EAN_13 = 32;
public static final int EAN_8 = 64;
public static final int ITF = 128;
public static final int QR_CODE = 256;
public static final int UPC_A = 512;
public static final int UPC_E = 1024;
public static final int PDF417 = 2048;
public static final int AZTEC = 4096;
public static final int UNKNOWN_TYPE = 0;
public static final int CONTACT_INFO = 1;
public static final int EMAIL = 2;
public static final int ISBN = 3;
public static final int PHONE = 4;
public static final int PRODUCT = 5;
public static final int SMS = 6;
public static final int TEXT = 7;
public static final int URL = 8;
public static final int WIFI = 9;
public static final int GEO = 10;
public static final int CALENDAR_EVENT = 11;
public static final int DRIVER_LICENSE = 12;
@Override
public void writeToParcel(@NonNull Parcel dest, int flags) {
CREATOR.writeToParcel(this, dest, flags);
}
public static final SafeParcelableCreatorAndWriter<Barcode> CREATOR = findCreator(Barcode.class);
}

View file

@ -0,0 +1,27 @@
/*
* SPDX-FileCopyrightText: 2023 microG Project Team
* SPDX-License-Identifier: Apache-2.0
*/
package com.google.mlkit.vision.barcode.internal;
import android.os.Parcel;
import androidx.annotation.NonNull;
import com.google.android.gms.common.internal.safeparcel.AbstractSafeParcelable;
import com.google.android.gms.common.internal.safeparcel.SafeParcelable;
import com.google.android.gms.common.internal.safeparcel.SafeParcelableCreatorAndWriter;
@SafeParcelable.Class
public class BarcodeScannerOptions extends AbstractSafeParcelable {
@Field(1)
public int supportedFormats;
@Field(2)
public boolean allPotentialBarcodesEnabled;
@Override
public void writeToParcel(@NonNull Parcel dest, int flags) {
CREATOR.writeToParcel(this, dest, flags);
}
public static final SafeParcelableCreatorAndWriter<BarcodeScannerOptions> CREATOR = findCreator(BarcodeScannerOptions.class);
}

View file

@ -0,0 +1,41 @@
/*
* SPDX-FileCopyrightText: 2023 microG Project Team
* SPDX-License-Identifier: Apache-2.0
*/
package com.google.mlkit.vision.barcode.internal;
import android.os.Parcel;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import com.google.android.gms.common.internal.safeparcel.AbstractSafeParcelable;
import com.google.android.gms.common.internal.safeparcel.SafeParcelable;
import com.google.android.gms.common.internal.safeparcel.SafeParcelableCreatorAndWriter;
@SafeParcelable.Class
public class CalendarDateTime extends AbstractSafeParcelable {
@Field(1)
public int year;
@Field(2)
public int month;
@Field(3)
public int day;
@Field(4)
public int hours;
@Field(5)
public int minutes;
@Field(6)
public int seconds;
@Field(7)
public boolean isUtc;
@Field(8)
@Nullable
public String rawValue;
@Override
public void writeToParcel(@NonNull Parcel dest, int flags) {
CREATOR.writeToParcel(this, dest, flags);
}
public static final SafeParcelableCreatorAndWriter<CalendarDateTime> CREATOR = findCreator(CalendarDateTime.class);
}

View file

@ -0,0 +1,37 @@
/*
* SPDX-FileCopyrightText: 2023 microG Project Team
* SPDX-License-Identifier: Apache-2.0
*/
package com.google.mlkit.vision.barcode.internal;
import android.os.Parcel;
import androidx.annotation.NonNull;
import com.google.android.gms.common.internal.safeparcel.AbstractSafeParcelable;
import com.google.android.gms.common.internal.safeparcel.SafeParcelable;
import com.google.android.gms.common.internal.safeparcel.SafeParcelableCreatorAndWriter;
@SafeParcelable.Class
public class CalendarEvent extends AbstractSafeParcelable {
@Field(1)
public String summary;
@Field(2)
public String description;
@Field(3)
public String location;
@Field(4)
public String organizer;
@Field(5)
public String status;
@Field(6)
public CalendarDateTime start;
@Field(7)
public CalendarDateTime end;
@Override
public void writeToParcel(@NonNull Parcel dest, int flags) {
CREATOR.writeToParcel(this, dest, flags);
}
public static final SafeParcelableCreatorAndWriter<CalendarEvent> CREATOR = findCreator(CalendarEvent.class);
}

View file

@ -0,0 +1,45 @@
/*
* SPDX-FileCopyrightText: 2023 microG Project Team
* SPDX-License-Identifier: Apache-2.0
*/
package com.google.mlkit.vision.barcode.internal;
import android.os.Parcel;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import com.google.android.gms.common.internal.safeparcel.AbstractSafeParcelable;
import com.google.android.gms.common.internal.safeparcel.SafeParcelable;
import com.google.android.gms.common.internal.safeparcel.SafeParcelableCreatorAndWriter;
@SafeParcelable.Class
public class ContactInfo extends AbstractSafeParcelable {
@Field(1)
@Nullable
public PersonName name;
@Field(2)
@Nullable
public String organization;
@Field(3)
@Nullable
public String title;
@Field(4)
@Nullable
public Phone[] phones;
@Field(5)
@Nullable
public Email[] emails;
@Field(6)
@Nullable
public String[] urls;
@Field(7)
@Nullable
public Address[] addresses;
@Override
public void writeToParcel(@NonNull Parcel dest, int flags) {
CREATOR.writeToParcel(this, dest, flags);
}
public static final SafeParcelableCreatorAndWriter<ContactInfo> CREATOR = findCreator(ContactInfo.class);
}

View file

@ -0,0 +1,66 @@
/*
* SPDX-FileCopyrightText: 2023 microG Project Team
* SPDX-License-Identifier: Apache-2.0
*/
package com.google.mlkit.vision.barcode.internal;
import android.os.Parcel;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import com.google.android.gms.common.internal.safeparcel.AbstractSafeParcelable;
import com.google.android.gms.common.internal.safeparcel.SafeParcelable;
import com.google.android.gms.common.internal.safeparcel.SafeParcelableCreatorAndWriter;
@SafeParcelable.Class
public class DriverLicense extends AbstractSafeParcelable {
@Field(1)
@Nullable
public String documentType;
@Field(2)
@Nullable
public String firstName;
@Field(3)
@Nullable
public String middleName;
@Field(4)
@Nullable
public String listName;
@Field(5)
@Nullable
public String gender;
@Field(6)
@Nullable
public String addressStreet;
@Field(7)
@Nullable
public String addressCity;
@Field(8)
@Nullable
public String addressState;
@Field(9)
@Nullable
public String addressZip;
@Field(10)
@Nullable
public String licenseNumber;
@Field(11)
@Nullable
public String issueDate;
@Field(12)
@Nullable
public String expiryDate;
@Field(13)
@Nullable
public String birthDate;
@Field(14)
@Nullable
public String issuingCountry;
@Override
public void writeToParcel(@NonNull Parcel dest, int flags) {
CREATOR.writeToParcel(this, dest, flags);
}
public static final SafeParcelableCreatorAndWriter<DriverLicense> CREATOR = findCreator(DriverLicense.class);
}

View file

@ -0,0 +1,36 @@
/*
* SPDX-FileCopyrightText: 2023 microG Project Team
* SPDX-License-Identifier: Apache-2.0
*/
package com.google.mlkit.vision.barcode.internal;
import android.os.Parcel;
import androidx.annotation.NonNull;
import com.google.android.gms.common.internal.safeparcel.AbstractSafeParcelable;
import com.google.android.gms.common.internal.safeparcel.SafeParcelable;
import com.google.android.gms.common.internal.safeparcel.SafeParcelableCreatorAndWriter;
@SafeParcelable.Class
public class Email extends AbstractSafeParcelable {
@Field(1)
public int type;
@Field(2)
public String address;
@Field(3)
public String subject;
@Field(4)
public String body;
// TODO: Copied from com.google.mlkit.vision.barcode.common.Barcode.Email
public static final int UNKNOWN = 0;
public static final int WORK = 1;
public static final int HOME = 2;
@Override
public void writeToParcel(@NonNull Parcel dest, int flags) {
CREATOR.writeToParcel(this, dest, flags);
}
public static final SafeParcelableCreatorAndWriter<Email> CREATOR = findCreator(Email.class);
}

View file

@ -0,0 +1,27 @@
/*
* SPDX-FileCopyrightText: 2023 microG Project Team
* SPDX-License-Identifier: Apache-2.0
*/
package com.google.mlkit.vision.barcode.internal;
import android.os.Parcel;
import androidx.annotation.NonNull;
import com.google.android.gms.common.internal.safeparcel.AbstractSafeParcelable;
import com.google.android.gms.common.internal.safeparcel.SafeParcelable;
import com.google.android.gms.common.internal.safeparcel.SafeParcelableCreatorAndWriter;
@SafeParcelable.Class
public class GeoPoint extends AbstractSafeParcelable {
@Field(1)
public double lat;
@Field(2)
public double lng;
@Override
public void writeToParcel(@NonNull Parcel dest, int flags) {
CREATOR.writeToParcel(this, dest, flags);
}
public static final SafeParcelableCreatorAndWriter<GeoPoint> CREATOR = findCreator(GeoPoint.class);
}

View file

@ -0,0 +1,46 @@
/*
* SPDX-FileCopyrightText: 2023 microG Project Team
* SPDX-License-Identifier: Apache-2.0
*/
package com.google.mlkit.vision.barcode.internal;
import android.os.Parcel;
import androidx.annotation.NonNull;
import com.google.android.gms.common.internal.safeparcel.AbstractSafeParcelable;
import com.google.android.gms.common.internal.safeparcel.SafeParcelable;
import com.google.android.gms.common.internal.safeparcel.SafeParcelableCreatorAndWriter;
import org.microg.gms.utils.ToStringHelper;
@SafeParcelable.Class
public class ImageMetadata extends AbstractSafeParcelable {
@Field(1)
public int format;
@Field(2)
public int width;
@Field(3)
public int height;
@Field(4)
public int rotation;
@Field(5)
public long timestamp;
@NonNull
@Override
public String toString() {
return ToStringHelper.name("ImageMetadata")
.field("format", format)
.field("width", width)
.field("height", height)
.field("rotation", rotation)
.field("timestamp", timestamp)
.end();
}
@Override
public void writeToParcel(@NonNull Parcel dest, int flags) {
CREATOR.writeToParcel(this, dest, flags);
}
public static final SafeParcelableCreatorAndWriter<ImageMetadata> CREATOR = findCreator(ImageMetadata.class);
}

View file

@ -0,0 +1,45 @@
/*
* SPDX-FileCopyrightText: 2023 microG Project Team
* SPDX-License-Identifier: Apache-2.0
*/
package com.google.mlkit.vision.barcode.internal;
import android.os.Parcel;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import com.google.android.gms.common.internal.safeparcel.AbstractSafeParcelable;
import com.google.android.gms.common.internal.safeparcel.SafeParcelable;
import com.google.android.gms.common.internal.safeparcel.SafeParcelableCreatorAndWriter;
@SafeParcelable.Class
public class PersonName extends AbstractSafeParcelable {
@Field(1)
@Nullable
public String formattedName;
@Field(2)
@Nullable
public String pronunciation;
@Field(3)
@Nullable
public String prefix;
@Field(4)
@Nullable
public String first;
@Field(5)
@Nullable
public String middle;
@Field(6)
@Nullable
public String last;
@Field(7)
@Nullable
public String suffix;
@Override
public void writeToParcel(@NonNull Parcel dest, int flags) {
CREATOR.writeToParcel(this, dest, flags);
}
public static final SafeParcelableCreatorAndWriter<PersonName> CREATOR = findCreator(PersonName.class);
}

View file

@ -0,0 +1,34 @@
/*
* SPDX-FileCopyrightText: 2023 microG Project Team
* SPDX-License-Identifier: Apache-2.0
*/
package com.google.mlkit.vision.barcode.internal;
import android.os.Parcel;
import androidx.annotation.NonNull;
import com.google.android.gms.common.internal.safeparcel.AbstractSafeParcelable;
import com.google.android.gms.common.internal.safeparcel.SafeParcelable;
import com.google.android.gms.common.internal.safeparcel.SafeParcelableCreatorAndWriter;
@SafeParcelable.Class
public class Phone extends AbstractSafeParcelable {
@Field(1)
public int type;
@Field(2)
public String number;
// TODO: Copied from com.google.mlkit.vision.barcode.common.Barcode.Phone
public static final int UNKNOWN = 0;
public static final int WORK = 1;
public static final int HOME = 2;
public static final int FAX = 3;
public static final int MOBILE = 4;
@Override
public void writeToParcel(@NonNull Parcel dest, int flags) {
CREATOR.writeToParcel(this, dest, flags);
}
public static final SafeParcelableCreatorAndWriter<Phone> CREATOR = findCreator(Phone.class);
}

View file

@ -0,0 +1,27 @@
/*
* SPDX-FileCopyrightText: 2023 microG Project Team
* SPDX-License-Identifier: Apache-2.0
*/
package com.google.mlkit.vision.barcode.internal;
import android.os.Parcel;
import androidx.annotation.NonNull;
import com.google.android.gms.common.internal.safeparcel.AbstractSafeParcelable;
import com.google.android.gms.common.internal.safeparcel.SafeParcelable;
import com.google.android.gms.common.internal.safeparcel.SafeParcelableCreatorAndWriter;
@SafeParcelable.Class
public class Sms extends AbstractSafeParcelable {
@Field(1)
public String message;
@Field(2)
public String phoneNumber;
@Override
public void writeToParcel(@NonNull Parcel dest, int flags) {
CREATOR.writeToParcel(this, dest, flags);
}
public static final SafeParcelableCreatorAndWriter<Sms> CREATOR = findCreator(Sms.class);
}

View file

@ -0,0 +1,27 @@
/*
* SPDX-FileCopyrightText: 2023 microG Project Team
* SPDX-License-Identifier: Apache-2.0
*/
package com.google.mlkit.vision.barcode.internal;
import android.os.Parcel;
import androidx.annotation.NonNull;
import com.google.android.gms.common.internal.safeparcel.AbstractSafeParcelable;
import com.google.android.gms.common.internal.safeparcel.SafeParcelable;
import com.google.android.gms.common.internal.safeparcel.SafeParcelableCreatorAndWriter;
@SafeParcelable.Class
public class UrlBookmark extends AbstractSafeParcelable {
@Field(1)
public String title;
@Field(2)
public String url;
@Override
public void writeToParcel(@NonNull Parcel dest, int flags) {
CREATOR.writeToParcel(this, dest, flags);
}
public static final SafeParcelableCreatorAndWriter<UrlBookmark> CREATOR = findCreator(UrlBookmark.class);
}

View file

@ -0,0 +1,34 @@
/*
* SPDX-FileCopyrightText: 2023 microG Project Team
* SPDX-License-Identifier: Apache-2.0
*/
package com.google.mlkit.vision.barcode.internal;
import android.os.Parcel;
import androidx.annotation.NonNull;
import com.google.android.gms.common.internal.safeparcel.AbstractSafeParcelable;
import com.google.android.gms.common.internal.safeparcel.SafeParcelable;
import com.google.android.gms.common.internal.safeparcel.SafeParcelableCreatorAndWriter;
@SafeParcelable.Class
public class WiFi extends AbstractSafeParcelable {
@Field(1)
public String ssid;
@Field(2)
public String password;
@Field(3)
public int encryptionType;
// TODO: Copied from com.google.mlkit.vision.barcode.common.Barcode.WiFi
public static final int OPEN = 1;
public static final int WPA = 2;
public static final int WEP = 3;
@Override
public void writeToParcel(@NonNull Parcel dest, int flags) {
CREATOR.writeToParcel(this, dest, flags);
}
public static final SafeParcelableCreatorAndWriter<WiFi> CREATOR = findCreator(WiFi.class);
}