জাভা 11+ এপিআই ন্যূনতম স্পেসিফিকেশন সহ ডিসুগারিংয়ের মাধ্যমে উপলব্ধ

অ্যান্ড্রয়েড স্টুডিওতে আপনার অ্যাপের জন্য ন্যূনতম API স্তরের প্রয়োজন ছাড়াই বেশ কয়েকটি জাভা 11+ API ব্যবহার করার জন্য সমর্থন অন্তর্ভুক্ত রয়েছে। এর মানে হল যে আপনি যদি Android 13 (API স্তর 33) এ প্রবর্তিত একটি API ব্যবহার করেন তবে কোডটি পূর্ববর্তী সমস্ত সংস্করণেও কাজ করে। বছরের পর বছর ধরে অ্যান্ড্রয়েডে প্রবর্তিত বেশিরভাগ APIগুলি অ্যান্ড্রয়েড 13-এ সমর্থিত। API desugaring নামক একটি প্রক্রিয়ার মাধ্যমে, DEX কম্পাইলার (D8) আপনাকে Android এর পুরানো সংস্করণগুলিকে সমর্থন করে এমন অ্যাপগুলিতে আরও মানক ভাষা API অন্তর্ভুক্ত করতে দেয়।

Java 11 সমর্থন API desugaring তিনটি স্বাদে আসে:

  • ন্যূনতম সংস্করণে কেবলমাত্র java.util.function প্যাকেজ এবং কিছু অ্যান্ড্রয়েড ফ্রেমওয়ার্ক সমকালীন সংগ্রহের জন্য প্রতিস্থাপন ক্লাস অন্তর্ভুক্ত রয়েছে যেগুলি পুরানো ডিভাইসগুলিতে পরিচিত সমস্যা রয়েছে৷
  • ডিফল্ট সংস্করণ কার্যকরভাবে Java 8 API desugaring-এর একটি আপগ্রেড সংস্করণ যা Java 11-এ আপডেট করা হয়েছে। এতে ন্যূনতম সংস্করণের সবকিছু ছাড়াও java.time এবং java.util.stream প্যাকেজ অন্তর্ভুক্ত রয়েছে।
  • nio সংস্করণে ডিফল্ট সংস্করণের সবকিছু ছাড়াও java.nio প্যাকেজ অন্তর্ভুক্ত রয়েছে।

নিম্নলিখিত অনুসন্ধানযোগ্য সারণী দেখায় যে আপনি যখন com.android.tools:desugar_jdk_libs_minimal:2.0.1 এ সেট করা coreLibraryDesugaring নির্ভরতা সহ Android Gradle প্লাগইন-এর সর্বশেষ সংস্করণ ব্যবহার করেন তখন কোন Java 11+ লাইব্রেরিগুলি উপলব্ধ থাকে (আরো তথ্যের জন্য API desugaring দেখুন)। build.gradle বা build.gradle.kts ফাইলে এই প্রপার্টি সেট করুন।

প্যাকেজ +
ক্লাস,
এনাম,
বা ইন্টারফেস
নির্মাণকারী,
বৈশিষ্ট্য,
এবং পদ্ধতি
মন্তব্য
java.util.concurrent


সমবর্তী হ্যাশম্যাপ।
কীসেটভিউ


  • public boolean add(Object e)
  • public boolean addAll(Collection c)
  • public boolean contains(Object o)
  • public boolean equals(Object o)
  • public void forEach(Consumer action)
  • public Object getMappedValue()
  • public int hashCode()
  • public Iterator iterator()
  • public boolean remove(Object o)
  • public Spliterator spliterator()

Android T-এ উপস্থিত কিছু পদ্ধতি (8) সমর্থিত নয়।

java.util.concurrent


সমবর্তী হ্যাশম্যাপ


  • public ConcurrentHashMap()
  • public ConcurrentHashMap(int initialCapacity)
  • public ConcurrentHashMap(
    int initialCapacity, float loadFactor)
  • public ConcurrentHashMap(
    int initialCapacity,
    float loadFactor,
    int concurrencyLevel)
  • public ConcurrentHashMap(Map m)
  • public void clear()
  • public Object compute(
    Object key, BiFunction remappingFunction)
  • public Object computeIfAbsent(
    Object key, Function mappingFunction)
  • public Object computeIfPresent(
    Object key, BiFunction remappingFunction)
  • public boolean contains(Object value)
  • public boolean containsKey(Object key)
  • public boolean containsValue(Object value)
  • public Enumeration elements()
  • public Set entrySet()
  • public boolean equals(Object o)
  • public void forEach(
    long parallelismThreshold, BiConsumer action)
  • public void forEach(
    long parallelismThreshold,
    BiFunction transformer,
    Consumer action)
  • public void forEach(BiConsumer action)
  • public void forEachEntry(
    long parallelismThreshold, Consumer action)
  • public void forEachEntry(
    long parallelismThreshold,
    Function transformer,
    Consumer action)
  • public void forEachKey(
    long parallelismThreshold, Consumer action)
  • public void forEachKey(
    long parallelismThreshold,
    Function transformer,
    Consumer action)
  • public void forEachValue(
    long parallelismThreshold, Consumer action)
  • public void forEachValue(
    long parallelismThreshold,
    Function transformer,
    Consumer action)
  • public Object get(Object key)
  • public Object getOrDefault(
    Object key, Object defaultValue)
  • public int hashCode()
  • public boolean isEmpty()
  • public Set keySet()
  • public ConcurrentHashMap.KeySetView keySet(
    Object mappedValue)
  • public Enumeration keys()
  • public long mappingCount()
  • public Object merge(
    Object key,
    Object value,
    BiFunction remappingFunction)
  • public static ConcurrentHashMap.KeySetView newKeySet()
  • public static ConcurrentHashMap.KeySetView newKeySet(
    int initialCapacity)
  • public Object put(Object key, Object value)
  • public void putAll(Map m)
  • public Object putIfAbsent(Object key, Object value)
  • public Object reduce(
    long parallelismThreshold,
    BiFunction transformer,
    BiFunction reducer)
  • public Object reduceEntries(
    long parallelismThreshold,
    Function transformer,
    BiFunction reducer)
  • public Map.Entry reduceEntries(
    long parallelismThreshold, BiFunction reducer)
  • public double reduceEntriesToDouble(
    long parallelismThreshold,
    ToDoubleFunction transformer,
    double basis,
    DoubleBinaryOperator reducer)
  • public int reduceEntriesToInt(
    long parallelismThreshold,
    ToIntFunction transformer,
    int basis,
    IntBinaryOperator reducer)
  • public long reduceEntriesToLong(
    long parallelismThreshold,
    ToLongFunction transformer,
    long basis,
    LongBinaryOperator reducer)
  • public Object reduceKeys(
    long parallelismThreshold, BiFunction reducer)
  • public Object reduceKeys(
    long parallelismThreshold,
    Function transformer,
    BiFunction reducer)
  • public double reduceKeysToDouble(
    long parallelismThreshold,
    ToDoubleFunction transformer,
    double basis,
    DoubleBinaryOperator reducer)
  • public int reduceKeysToInt(
    long parallelismThreshold,
    ToIntFunction transformer,
    int basis,
    IntBinaryOperator reducer)
  • public long reduceKeysToLong(
    long parallelismThreshold,
    ToLongFunction transformer,
    long basis,
    LongBinaryOperator reducer)
  • public double reduceToDouble(
    long parallelismThreshold,
    ToDoubleBiFunction transformer,
    double basis,
    DoubleBinaryOperator reducer)
  • public int reduceToInt(
    long parallelismThreshold,
    ToIntBiFunction transformer,
    int basis,
    IntBinaryOperator reducer)
  • public long reduceToLong(
    long parallelismThreshold,
    ToLongBiFunction transformer,
    long basis,
    LongBinaryOperator reducer)
  • public Object reduceValues(
    long parallelismThreshold, BiFunction reducer)
  • public Object reduceValues(
    long parallelismThreshold,
    Function transformer,
    BiFunction reducer)
  • public double reduceValuesToDouble(
    long parallelismThreshold,
    ToDoubleFunction transformer,
    double basis,
    DoubleBinaryOperator reducer)
  • public int reduceValuesToInt(
    long parallelismThreshold,
    ToIntFunction transformer,
    int basis,
    IntBinaryOperator reducer)
  • public long reduceValuesToLong(
    long parallelismThreshold,
    ToLongFunction transformer,
    long basis,
    LongBinaryOperator reducer)
  • public Object remove(Object key)
  • public boolean remove(Object key, Object value)
  • public Object replace(Object key, Object value)
  • public boolean replace(
    Object key, Object oldValue, Object newValue)
  • public void replaceAll(BiFunction function)
  • public Object search(
    long parallelismThreshold,
    BiFunction searchFunction)
  • public Object searchEntries(
    long parallelismThreshold,
    Function searchFunction)
  • public Object searchKeys(
    long parallelismThreshold,
    Function searchFunction)
  • public Object searchValues(
    long parallelismThreshold,
    Function searchFunction)
  • public int size()
  • public String toString()
  • public Collection values()

সম্পূর্ণরূপে বাস্তবায়িত ক্লাস।

java.util.concurrent


ThreadLocalRandom


  • public static ThreadLocalRandom current()
  • public DoubleStream doubles()
  • public DoubleStream doubles(
    double randomNumberOrigin,
    double randomNumberBound)
  • public DoubleStream doubles(long streamSize)
  • public DoubleStream doubles(
    long streamSize,
    double randomNumberOrigin,
    double randomNumberBound)
  • public IntStream ints()
  • public IntStream ints(
    int randomNumberOrigin, int randomNumberBound)
  • public IntStream ints(long streamSize)
  • public IntStream ints(
    long streamSize,
    int randomNumberOrigin,
    int randomNumberBound)
  • public LongStream longs()
  • public LongStream longs(long streamSize)
  • public LongStream longs(
    long randomNumberOrigin, long randomNumberBound)
  • public LongStream longs(
    long streamSize,
    long randomNumberOrigin,
    long randomNumberBound)
  • protected int next(int bits)
  • public boolean nextBoolean()
  • public double nextDouble()
  • public double nextDouble(double bound)
  • public double nextDouble(
    double origin, double bound)
  • public float nextFloat()
  • public double nextGaussian()
  • public int nextInt()
  • public int nextInt(int bound)
  • public int nextInt(int origin, int bound)
  • public long nextLong()
  • public long nextLong(long bound)
  • public long nextLong(long origin, long bound)
  • public void setSeed(long seed)

সম্পূর্ণরূপে বাস্তবায়িত ক্লাস।

java.util.function


দ্বি-ভোক্তা


  • public abstract void accept(Object p0, Object p1)
  • public BiConsumer andThen(BiConsumer after)

সম্পূর্ণরূপে বাস্তবায়িত ক্লাস।

java.util.function


দ্বি-ফাংশন


  • public BiFunction andThen(Function after)
  • public abstract Object apply(Object p0, Object p1)

সম্পূর্ণরূপে বাস্তবায়িত ক্লাস।

java.util.function


দ্বি-প্রিডিকেট


  • public BiPredicate and(BiPredicate other)
  • public BiPredicate negate()
  • public BiPredicate or(BiPredicate other)
  • public abstract boolean test(Object p0, Object p1)

সম্পূর্ণরূপে বাস্তবায়িত ক্লাস।

java.util.function


বাইনারি অপারেটর


  • public static BinaryOperator maxBy(
    Comparator comparator)
  • public static BinaryOperator minBy(
    Comparator comparator)

সম্পূর্ণরূপে বাস্তবায়িত ক্লাস।

java.util.function


বুলিয়ান সরবরাহকারী


  • public abstract boolean getAsBoolean()

সম্পূর্ণরূপে বাস্তবায়িত ক্লাস।

java.util.function


ভোক্তা


  • public abstract void accept(Object p0)
  • public Consumer andThen(Consumer after)

সম্পূর্ণরূপে বাস্তবায়িত ক্লাস।

java.util.function


ডাবল বাইনারি অপারেটর


  • public abstract double applyAsDouble(
    double p0, double p1)

সম্পূর্ণরূপে বাস্তবায়িত ক্লাস।

java.util.function


ডাবল কনজিউমার


  • public abstract void accept(double p0)
  • public DoubleConsumer andThen(DoubleConsumer after)

সম্পূর্ণরূপে বাস্তবায়িত ক্লাস।

java.util.function


ডাবল ফাংশন


  • public abstract Object apply(double p0)

সম্পূর্ণরূপে বাস্তবায়িত ক্লাস।

java.util.function


ডাবল প্রিডিকেট


  • public DoublePredicate and(DoublePredicate other)
  • public DoublePredicate negate()
  • public DoublePredicate or(DoublePredicate other)
  • public abstract boolean test(double p0)

সম্পূর্ণরূপে বাস্তবায়িত ক্লাস।

java.util.function


ডাবল সরবরাহকারী


  • public abstract double getAsDouble()

সম্পূর্ণরূপে বাস্তবায়িত ক্লাস।

java.util.function


DoubleToIntFunction


  • public abstract int applyAsInt(double p0)

সম্পূর্ণরূপে বাস্তবায়িত ক্লাস।

java.util.function


ডাবলটোলং ফাংশন


  • public abstract long applyAsLong(double p0)

সম্পূর্ণরূপে বাস্তবায়িত ক্লাস।

java.util.function


DoubleUnaryOperator


  • public DoubleUnaryOperator andThen(
    DoubleUnaryOperator after)
  • public abstract double applyAsDouble(double p0)
  • public DoubleUnaryOperator compose(
    DoubleUnaryOperator before)
  • public static DoubleUnaryOperator identity()

সম্পূর্ণরূপে বাস্তবায়িত ক্লাস।

java.util.function


ফাংশন


  • public Function andThen(Function after)
  • public abstract Object apply(Object p0)
  • public Function compose(Function before)
  • public static Function identity()

সম্পূর্ণরূপে বাস্তবায়িত ক্লাস।

java.util.function


IntBinaryOperator


  • public abstract int applyAsInt(int p0, int p1)

সম্পূর্ণরূপে বাস্তবায়িত ক্লাস।

java.util.function


Int Consumer


  • public abstract void accept(int p0)
  • public IntConsumer andThen(IntConsumer after)

সম্পূর্ণরূপে বাস্তবায়িত ক্লাস।

java.util.function


IntFunction


  • public abstract Object apply(int p0)

সম্পূর্ণরূপে বাস্তবায়িত ক্লাস।

java.util.function


IntPredicate


  • public IntPredicate and(IntPredicate other)
  • public IntPredicate negate()
  • public IntPredicate or(IntPredicate other)
  • public abstract boolean test(int p0)

সম্পূর্ণরূপে বাস্তবায়িত ক্লাস।

java.util.function


IntSupplier


  • public abstract int getAsInt()

সম্পূর্ণরূপে বাস্তবায়িত ক্লাস।

java.util.function


IntToDoubleFunction


  • public abstract double applyAsDouble(int p0)

সম্পূর্ণরূপে বাস্তবায়িত ক্লাস।

java.util.function


IntToLongFunction


  • public abstract long applyAsLong(int p0)

সম্পূর্ণরূপে বাস্তবায়িত ক্লাস।

java.util.function


IntUnaryOperator


  • public IntUnaryOperator andThen(
    IntUnaryOperator after)
  • public abstract int applyAsInt(int p0)
  • public IntUnaryOperator compose(
    IntUnaryOperator before)
  • public static IntUnaryOperator identity()

সম্পূর্ণরূপে বাস্তবায়িত ক্লাস।

java.util.function


লংবাইনারি অপারেটর


  • public abstract long applyAsLong(long p0, long p1)

সম্পূর্ণরূপে বাস্তবায়িত ক্লাস।

java.util.function


দীর্ঘ উপভোক্তা


  • public abstract void accept(long p0)
  • public LongConsumer andThen(LongConsumer after)

সম্পূর্ণরূপে বাস্তবায়িত ক্লাস।

java.util.function


লং ফাংশন


  • public abstract Object apply(long p0)

সম্পূর্ণরূপে বাস্তবায়িত ক্লাস।

java.util.function


লংপ্রিডিকেট


  • public LongPredicate and(LongPredicate other)
  • public LongPredicate negate()
  • public LongPredicate or(LongPredicate other)
  • public abstract boolean test(long p0)

সম্পূর্ণরূপে বাস্তবায়িত ক্লাস।

java.util.function


দীর্ঘ সরবরাহকারী


  • public abstract long getAsLong()

সম্পূর্ণরূপে বাস্তবায়িত ক্লাস।

java.util.function


LongToDoubleFunction


  • public abstract double applyAsDouble(long p0)

সম্পূর্ণরূপে বাস্তবায়িত ক্লাস।

java.util.function


LongToIntFunction


  • public abstract int applyAsInt(long p0)

সম্পূর্ণরূপে বাস্তবায়িত ক্লাস।

java.util.function


লংইউনারি অপারেটর


  • public LongUnaryOperator andThen(
    LongUnaryOperator after)
  • public abstract long applyAsLong(long p0)
  • public LongUnaryOperator compose(
    LongUnaryOperator before)
  • public static LongUnaryOperator identity()

সম্পূর্ণরূপে বাস্তবায়িত ক্লাস।

java.util.function


ObjDoubleConsumer


  • public abstract void accept(Object p0, double p1)

সম্পূর্ণরূপে বাস্তবায়িত ক্লাস।

java.util.function


ObjIntConsumer


  • public abstract void accept(Object p0, int p1)

সম্পূর্ণরূপে বাস্তবায়িত ক্লাস।

java.util.function


অবজেলং কনজিউমার


  • public abstract void accept(Object p0, long p1)

সম্পূর্ণরূপে বাস্তবায়িত ক্লাস।

java.util.function


প্রিডিকেট


  • public Predicate and(Predicate other)
  • public static Predicate isEqual(Object targetRef)
  • public Predicate negate()
  • public static Predicate not(Predicate target)
  • public Predicate or(Predicate other)
  • public abstract boolean test(Object p0)

সম্পূর্ণরূপে বাস্তবায়িত ক্লাস।

java.util.function


সরবরাহকারী


  • public abstract Object get()

সম্পূর্ণরূপে বাস্তবায়িত ক্লাস।

java.util.function


ToDoubleBiFunction


  • public abstract double applyAsDouble(
    Object p0, Object p1)

সম্পূর্ণরূপে বাস্তবায়িত ক্লাস।

java.util.function


ToDoubleFunction


  • public abstract double applyAsDouble(Object p0)

সম্পূর্ণরূপে বাস্তবায়িত ক্লাস।

java.util.function


ToIntBiFunction


  • public abstract int applyAsInt(Object p0, Object p1)

সম্পূর্ণরূপে বাস্তবায়িত ক্লাস।

java.util.function


ToIntFunction


  • public abstract int applyAsInt(Object p0)

সম্পূর্ণরূপে বাস্তবায়িত ক্লাস।

java.util.function


ToLongBiFunction


  • public abstract long applyAsLong(
    Object p0, Object p1)

সম্পূর্ণরূপে বাস্তবায়িত ক্লাস।

java.util.function


টলং ফাংশন


  • public abstract long applyAsLong(Object p0)

সম্পূর্ণরূপে বাস্তবায়িত ক্লাস।

java.util.function


ইউনারি অপারেটর


  • public static UnaryOperator identity()

সম্পূর্ণরূপে বাস্তবায়িত ক্লাস।