অ্যান্ড্রয়েডের জন্য স্থানীয় চিত্রের ক্যাশিং সমাধান: স্কোয়ার পিকাসো, ইউনিভার্সাল চিত্র লোডার, গ্লাইড, ফ্রেস্কো?


89

আমি অ্যান্ড্রয়েডে একটি অ্যাসিনক্রোনাস চিত্র লোডিং এবং ক্যাচিং লাইব্রেরি খুঁজছি। আমি পিকাসো ব্যবহার করতে যাচ্ছিলাম তবে আমি পেলাম ইউনিভার্সাল ইমেজ লোডার গিটহাবের চেয়ে বেশি জনপ্রিয়। এই দুটি গ্রন্থাগার সম্পর্কে কেউ কি জানেন? ভাল এবং কন্দের একটি সংক্ষিপ্তসার দুর্দান্ত হবে।

(আমার সমস্ত চিত্র স্থানীয়ভাবে ডিস্কে রয়েছে, সুতরাং আমার নেটওয়ার্কিংয়ের দরকার নেই, তাই ভলি ভেবে ফিট নেই)

উত্তর:


80

আপডেট সেপ্টেম্বর 2018: বেশ কয়েক বছর পরে, স্থানীয় চিত্রের ক্যাশিং সমাধানের জন্য আমার প্রায় একই জিনিসটির প্রয়োজন ছিল। এবার প্রায়, ইউআইএল সক্রিয় বিকাশে হয়নি। আমি জনপ্রিয় লাইব্রেরিগুলির সাথে তুলনা করেছি এবং উপসংহারটি বেশ নন-ব্রেইনার: কেবল গ্লাইড ব্যবহার করুন। এটি অনেক বেশি শক্তিশালী এবং কনফিগারযোগ্য। কয়েক বছর আগে আমাকে কাঁটাচামচ করে ইউআইএল-এ পরিবর্তন করতে হয়েছিল। গ্লাইড ক্যাশে কৌশল এবং কাস্টম কীগুলির সাহায্যে একাধিক স্তরের রেজোলিউশন ক্যাশিংয়ের ক্ষেত্রে আমার ব্যবহারের সমস্ত ক্ষেত্রে সমর্থন করে। শুধু গ্লাইড ব্যবহার করুন!

কৌশিক দত্তের তুলনা বেশিরভাগ গতির বেঞ্চমার্কের জন্য। তার পোস্টটি কেবলমাত্র খুব প্রাথমিক জিনিসগুলিকে স্পর্শ করেছে এবং এটি স্থানীয় চিত্রগুলির জন্য নির্দিষ্ট নয়। আমি প্রশ্ন জিজ্ঞাসা করার পরে আমি পিকাসো এবং ইউআইএল এর সাথে আমার অভিজ্ঞতাগুলি ভাগ করে নিতে চাই। পিকাসো এবং ইউআইএল উভয়ই স্থানীয় চিত্রগুলি লোড করতে পারে। আমি প্রথমে পিকাসোর চেষ্টা করেছিলাম এবং খুশি হয়েছিলাম, তবে পরে আরও কাস্টমাইজেশন বিকল্পের জন্য ইউআইএল-এ স্যুইচ করার সিদ্ধান্ত নিয়েছি।

পিকাসো:

  • পিকাসোর সাবলীল ইন্টারফেসটি দুর্দান্ত। কিন্তু "সাথে", "মধ্যে", "লোড" দিয়ে চারপাশে ঝাঁপিয়ে পড়ে আপনি আসলে জানেন না যে দৃশ্যের পিছনে কী রয়েছে। ফিরে আসার বিষয়টি বিভ্রান্তিকর।

  • পিকাসো আপনাকে সঠিক টার্গেটের আকার নির্দিষ্ট করতে দেয়। এটি কার্যকর যখন আপনার মেমরি চাপ এবং পারফরম্যান্সের সমস্যা থাকে আপনি গতির জন্য কিছু চিত্রের মানের বাণিজ্য করতে পারেন।

  • চিত্রগুলি এর কী আকারে ক্যাশে করা হয়, আপনি যখন বিভিন্ন আকারের চিত্রগুলি প্রদর্শন করেন এটি কার্যকর।

  • আপনি মেমরি ক্যাশের আকার কাস্টমাইজ করতে পারেন। তবে এর ডিস্ক ক্যাশে কেবলমাত্র http অনুরোধের জন্য। স্থানীয় চিত্রগুলির জন্য, যদি আপনি লোডিং গতির বিষয়ে চিন্তা করেন তবে থাম্বনেইল ডিস্ক ক্যাশে রাখা ভাল তাই আপনাকে প্রতিবারের জন্য বেশ কয়েকটি এমবি পড়তে হবে না। পিকাসোর এই ডিস্কে থাম্বনেলগুলি পুনরায় আকার দেওয়ার ও সংরক্ষণ করার পদ্ধতি নেই।

  • পিকাসো এর ক্যাশে উদাহরণটিতে অ্যাক্সেস প্রকাশ করে না। (আপনি যখন প্রথম পিকাসো কনফিগার করেন এবং এটিকে চারপাশে রাখেন তখন আপনি এটিকে ধরে রাখতে পারবেন))।

  • কখনও কখনও আপনি একটি শ্রোতার দ্বারা ফিরে বিটম্যাপে অবিচ্ছিন্নভাবে চিত্রটি পড়তে চান। আশ্চর্যজনকভাবে পিকাসোর তা নেই। "আনুন ()" ডোজ কিছুতেই ফিরে আসে না। "গেট ()" সমকালীনভাবে পড়ার জন্য এবং "লোড ()" হ'ল সংশ্লেষপূর্ণভাবে একটি দৃষ্টিভঙ্গি আঁকার জন্য।

  • হোমপেজে পিকাসোর কয়েকটি সাধারণ উদাহরণ রয়েছে এবং উন্নত ব্যবহারের জন্য আপনাকে আনর্ডারড জাভাদোকের মাধ্যমে পড়তে হবে।

ইউআইএল:

  • ইউআইএল কাস্টমাইজেশনের জন্য বিল্ডার ব্যবহার করে। প্রায় সবকিছু কনফিগার করা যায়।

  • ইউআইএল আপনাকে একটি দৃশ্যে লোড করতে চায় এমন আকার নির্দিষ্ট করার অনুমতি দেয় না। এটি দেখার আকারের উপর ভিত্তি করে কিছু নিয়ম ব্যবহার করে। এটি পিকাসোর মতো নমনীয় নয়। মেমরির পদচিহ্নগুলি হ্রাস করতে আমার কাছে কম রেজোলিউশন চিত্র লোড করার কোনও উপায় নেই। (সম্পাদনা করুন: সোর্স কোডে ইমেজসাইজ যুক্তি যুক্ত করে এবং ভিউ আকারের চেকিং বাইপাস করে এই আচরণটি সহজেই সংশোধন করা যেতে পারে)

  • ইউআইএল কাস্টমাইজেবল ডিস্ক ক্যাশে সরবরাহ করে, আপনি এটি নির্দিষ্ট আকারের থাম্বনেইলগুলি ক্যাশে করতে ব্যবহার করতে পারেন। তবে এটি নিখুঁত নয়। বিস্তারিত এখানে । (সম্পাদনা করুন: আপনি যদি গতির প্রতি যত্নশীল হন এবং আমার স্তরের মতো একাধিক স্তরের থাম্বনেইল ক্যাশে চান তবে আপনি উত্স কোডটি সংশোধন করতে পারেন, ডিস্ক ক্যাশে "মেমরিকি" ব্যবহার করতে দিন এবং এটি আকারকে সংবেদনশীলও বানাতে পারেন)

  • ইউআইএল ডিফল্টরূপে মেমরির বিভিন্ন আকারের চিত্রগুলি ক্যাশে করে এবং এটি কনফিগারেশনে বন্ধ করা যায়।

  • ইউআইএল আপনি অ্যাক্সেস করতে পারেন এমন ব্যাকিং মেমরি এবং ডিস্ক ক্যাশে প্রকাশ করে।

  • ইউআইএল নমনীয় উপায়গুলি সরবরাহ করে যাতে আপনি কোনও দৃশ্যে বিটম্যাপ বা লোড পেতে পারেন।

  • ডকুমেন্টেশনে ইউআইএল আরও ভাল। ইউআইএল গিথুব পৃষ্ঠায় বিস্তারিত ব্যবহারগুলি দেয় এবং এর সাথে একটি লিঙ্কযুক্ত টিউটোরিয়াল থাকে।

আমি পিকাসো দিয়ে শুরু করার পরামর্শ দিচ্ছি, যদি আপনার আরও নিয়ন্ত্রণ এবং কাস্টমাইজেশন প্রয়োজন হয় তবে ইউআইএল যান।


আমি আসলে তাদের দুজনের মধ্যেই আটকে আছি ... আমি মূলত সেখানে একটি ডিরেক্টরিতে সঞ্চিত আমার সার্ভার থেকে চিত্রগুলি ফিরিয়ে আনতে চলেছি ... সুতরাং HTTP কলগুলির মাধ্যমে এবং পরে এটি ক্যাশিংয়ের জন্য সঞ্চয় করব (থাম্বনেইল এবং নিয়মিত আকার, আমি সম্ভবত সঞ্চয় করব) আমার ডিরেক্টরিতে উভয় মাপ) ... পিকাসো কি তখন যেতে হবে?
সিংহ 789

@ লায়ন 9৮৯ পিকাসো কেবল স্থানীয় ফাইলগুলির জন্য স্থানীয় মেমরি ক্যাশে করে এবং এটি নেটওয়ার্কিং ডিস্ক ক্যাশে HTTPResponseCache ব্যবহার করে, আপনাকে এটি সন্ধান করতে হবে। ইউআইএল-এর ডিস্ক ক্যাশে কনফিগারযোগ্য রয়েছে, এটি বিভিন্ন আকারের চিত্র / থাম্বনেইস গ্রহণ করতে আপনি কিছু ছোট পরিবর্তন করতে পারেন। প্রথমে পিকাসোর চেষ্টা করুন, যদি আপনি এটি খুব সীমাবদ্ধ দেখতে পান তবে ইউআইএল এর জন্য যান এবং কাস্টমাইজ করুন
এক্সওয়াই

তাই পিকাসো আরও ছোট ছবি লোড করতে পারে! তাহলে আমাকে 8 মেগাপিক্সেল লোড করতে হবে না! ধন্যবাদ, আপনি আমাকে সাহায্য করেছেন!
অ্যারন লরিনক্জ

আপনি কি এই প্রশ্নের উত্তর দিতে পারেন? stackoverflow.com/questions/35433895/…
উসমান রানা

UIL does not allow you to specify the size you want to load into a view100% ঠিক নয় .. ইউআইএল সহ আপনি ব্যবহার করতে পারেনpublic void displayImage(String uri, ImageAware imageAware, DisplayImageOptions options, ImageSize targetSize, ImageLoadingListener listener, ImageLoadingProgressListener progressListener)
মার্টিন ম্লোস্টেক

72

আপনি যদি কুশের বাই জি + তে এই পোস্টটি পড়েন তবে আপনি আপনার বিভ্রান্তির জন্য পরিষ্কার সমাধান পেয়ে যাবেন, আমি এর সংক্ষিপ্তসারটি রেখেছি, যে অ্যান্ড্রয়েড-ইউনিভার্সাল-ইমেজ-লোডার আপনার প্রয়োজনীয়তার জন্য বিজয়ী!

  • আপনি যদি নেটওয়ার্ক ব্যবহার করে থাকেন তবে পিকাসোর নিকটতম চিত্রের এপিআই রয়েছে!

  • UrlImageViewHelper + AndroidAsync সবচেয়ে দ্রুত sy এই অন্য দুটি দুর্দান্ত লাইব্রেরির সাথে বাজানো সত্যই হাইলাইট করেছে যে চিত্রের এপিআই অবশ্য বেশ তারিখের।

  • ভলি চতুর; আমি সত্যিই তাদের প্লাগেবল ব্যাকএন্ড ট্রান্সপোর্টগুলি উপভোগ করেছি
    এবং এখান থেকে AndroidAncnc এড়িয়ে যেতে পারে। অনুরোধের অগ্রাধিকার
    এবং বাতিলকরণ পরিচালনা দুর্দান্ত (যদি আপনি নেটওয়ার্ক ব্যবহার করছেন)

  • অ্যান্ড্রয়েড-ইউনিভার্সাল-চিত্র-লোডার
    বর্তমানেসেখানে সর্বাধিক জনপ্রিয়। অত্যন্ত কাস্টমাইজযোগ্য।

এই প্রকল্পটির লক্ষ্য অ্যাসিনক্রোনাস চিত্র লোডিং, ক্যাশিং এবং প্রদর্শনের জন্য পুনরায় ব্যবহারযোগ্য উপকরণ সরবরাহ করা। এটি মূলত ফেদর ভ্লাসভের প্রকল্পের উপর ভিত্তি করে এবং তখন থেকে ব্যাপকভাবে রিফ্যাক্টর এবং উন্নত হয়েছে।

নতুন ইউআইএল সংস্করণে আগত পরিবর্তনগুলি (1.9.2):

ইউআই থ্রেড থেকে নতুন ডিস্ক ক্যাশে এপিআই (আরও নমনীয়) এর বাইরে ইমেজলোডারকে কল করার সম্ভাবনা। জ্যাক ওয়ার্টনের ডিসক্ল্রুচ্যাচে ভিত্তিক নতুন লরুডিশকচে

এই সমস্ত অ্যান্ড্রয়েড-ইউনিভার্সাল-ইমেজ-লোডার স্যুটগুলি বিবেচনা করে আপনার প্রয়োজনীয় প্রয়োজন ( স্থানীয়ভাবে চিত্রগুলি লোড করা হচ্ছে )!


আমি পিকাসো দিয়ে শুরু করেছি এবং সবকিছুকে পুরোপুরি বাস্তবায়ন করা সত্ত্বেও ইউনিভার্সালটিতে স্যুইচ করা শেষ করেছি। পিকাসোর আরও ভাল এপিআই ইন্টারফেস রয়েছে তবে এতে অনেকগুলি সমস্যা রয়েছে। এই এক ছিল কফিনের চূড়ান্ত পেরেক।
লিসান্দ্রো

45

আমি এই 3 টি গ্রন্থাগারের সাথে আমার অভিজ্ঞতাটি ভাগ করতে চাই: ইউআইএল, পিকাসো এবং ভল্লি। আমি আগে ইউআইএল ব্যবহার করেছি তবে তারপরে আমি এই সিদ্ধান্তে পৌঁছেছি যে আমি এটির সুপারিশ করতে পারি না এবং আমি ভল্লি বা পিকাসো ব্যবহার করার পরামর্শ দেব যা উভয়ই অত্যন্ত প্রতিভাবান দল দ্বারা বিকাশিত। ইউআইএল মোটেও খারাপ নয় তবে এতে অন্য দুটি গ্রন্থাগারের বিবরণে মনোযোগের অভাব রয়েছে।

আমি ইউআইআই পারফরম্যান্সের সাথে ইউআইএল কম সুন্দর হতে দেখলাম; এটি ভল্লি বা পিকাসোর চেয়ে বেশি পরিমাণে ইউআই থ্রেড লক করতে পারে। পিকাসো এবং ভলি ডিফল্টরূপে এটি করার সময় ইউআইএল চিত্রের প্রতিক্রিয়াগুলিতে ব্যাচিং সমর্থন করে না এমন কারণে এই অংশটি হতে পারে।

এছাড়াও, আমি ইউআইএল এর ডিস্ক ক্যাশে সিস্টেম পছন্দ করি না। আপনি বিভিন্ন প্রয়োগের মধ্যে চয়ন করতে গেলে, আমার এটি উল্লেখ করতে হবে যে এই মুহুর্তে ইউআইএল ডিস্ক ক্যাশে মোট আকার এবং সত্তার মেয়াদ শেষ হওয়ার সময় উভয়ই সীমাবদ্ধ করার উপায় নেই । ভলি এবং পিকাসো তা করেন এবং ইউআইএল এটি উপেক্ষা করার সময় তারা ডিফল্টরূপে সার্ভারের দ্বারা ফিরে আসা মেয়াদোত্তীর্ণ সময়টি ব্যবহার করে।

শেষ অবধি, ইউআইএল আপনাকে একটি বিশ্বব্যাপী চিত্র লোডার কনফিগারেশন সেট করার অনুমতি দেয় যা নির্বাচিত ডিস্ক ক্যাশে এবং মেমরি ক্যাশে বাস্তবায়ন এবং সেটিংস এবং অন্যান্য বিবরণ অন্তর্ভুক্ত করে তবে এই অ্যাপ্লিকেশনটি আপনার অ্যাপ্লিকেশানের সর্বত্র প্রয়োগ করা হবে। সুতরাং আপনার যদি দুটি পৃথক ডিস্ক ক্যাশের মতো আরও নমনীয়তার প্রয়োজন হয় তবে এটি ইউআইএল-এর কোনও দরকার নেই। অন্যদিকে ভলি আপনাকে নিজের কনফিগারেশন সহ যতগুলি ইচ্ছেমতো পৃথক চিত্র লোডার রাখতে দেয় allows পিকাসো ডিফল্টরূপে একটি বিশ্বব্যাপী উদাহরণ ব্যবহার করে তবে আপনাকে পৃথকভাবে কনফিগারযোগ্য দৃষ্টান্তগুলিও তৈরি করতে দেয়।

এর সংক্ষিপ্তসার হিসাবে: পিকাসোর সেরা এপিআই রয়েছে তবে এটি সমস্ত HttpURLConnectionদাবির মধ্যে ভাগ করা বিশ্বব্যাপী এইচটিটিপি ডিস্ক ক্যাশে ব্যবহার করে , যা কিছু ক্ষেত্রে খুব সীমাবদ্ধ হতে পারে। ভলির সেরা পারফরম্যান্স এবং মডুলারালিটি রয়েছে তবে এটি ব্যবহারকারী বান্ধব কম এবং আপনার নিজের মতো করে একটি মডিউল বা দুটি লিখতে হবে। সামগ্রিকভাবে আমি উভয়কেই ইউআইএল-এর বিরুদ্ধে সুপারিশ করব।

সম্পাদনা (ডিসেম্বর 18 2014): আমি এই প্রাথমিক উত্তরটি লেখার পর থেকে বিষয়গুলি পরিবর্তিত হয়েছে এবং আমি এটির উন্নতি করা প্রয়োজন বলে মনে করেছি:

পিকাসো ২.৪ পুরানো রিলিজের চেয়ে আরও কনফিগারযোগ্য এবং OkHttp (যা অত্যন্ত প্রস্তাবিত) এর সাথে ব্যবহার করার সময় এটি প্রতিটি উদাহরণের জন্য পৃথক ডিস্ক ক্যাশে ব্যবহার করতে সক্ষম হয় যাতে আপনি যা করতে পারেন তাতে সত্যিই কোনও বাধা নেই। আরও গুরুত্বপূর্ণ বিষয়, আমি লক্ষ্য করেছি যে পিকাসো এবং ওকে এইচটিপি-র পারফরম্যান্স অনেক উন্নতি করেছে এবং আমার মতে এটি এখন অ্যান্ড্রয়েড, সময়ের জন্য দ্রুততম ইমেজ লোডার সমাধান। দয়া করে নোট করুন যে আমার কোডে আমি সর্বদা মেমরির ব্যবহারের .fit()সাথে .centerCrop()বা .centerInside()কম ব্যবহার করে এবং ইউআই থ্রেডের বিটম্যাপের আকার পরিবর্তন এড়াতে। পিকাসো সক্রিয়ভাবে বিকাশিত এবং সমর্থিত এবং এটি অবশ্যই একটি বড় প্লাস।

ভলির তেমন কোনও পরিবর্তন হয়নি তবে আমি এর মধ্যে দুটি বিষয় লক্ষ্য করেছি:

  • কখনও কখনও ভারী বোঝার অধীনে কিছু ডিস্ক ক্যাশে দুর্নীতির কারণে কিছু চিত্র আর লোড হয় না।
  • একটি নেটওয়ার্কআইমেজভিউতে প্রদর্শিত থাম্বনেলগুলি (এর স্কেল প্রকারের সাথে কেন্দ্রক্রপ সেট করা আছে) আপনি অন্যান্য লাইব্রেরির সাথে যা পান তার তুলনায় বেশ ঝাপসা।

এই কারণে ভলির ব্যবহার বন্ধ করার সিদ্ধান্ত নিয়েছি।

ইউআইএল এখনও ধীর (বিশেষত ডিস্ক ক্যাশে) এবং এর এপিআই এর প্রায়শই প্রায়শই পরিবর্তনের প্রবণতা রয়েছে।

আমি গ্লাইড 3 নামে এই নতুন লাইব্রেরিটিও পরীক্ষা করেছিলাম যা পিকাসোর মতো এপিআই দিয়ে পিকাসোর চেয়ে আরও অনুকূলিত হওয়ার দাবি করে। আমার ব্যক্তিগত অভিজ্ঞতা অনুসারে এটি ভারী লোডের অধীনে নেটওয়ার্ক অনুরোধের সময় পিকাসো এবং ভলির তুলনায় আসলে ধীরে ধীরে, এমনকি যখন OkHttp এর সংমিশ্রণে ব্যবহৃত হয়। সবচেয়ে খারাপ, কোনও ক্রিয়াকলাপ ছাড়ার সময় এটি ললিপপের অধীনে আমার অ্যাপ্লিকেশনগুলির সাথে কয়েকটি ক্র্যাশ করেছিল। এটির এর প্রতিযোগীদের তুলনায় এটির 2 সুবিধা রয়েছে:

  • এটি অ্যানিমেটেড জিআইএফস ডিকোডিং সমর্থন করে
  • এটি ডিস্ক ক্যাশে চূড়ান্ত ডাউনস্কেল বিটম্যাপস রাখে যার অর্থ ডিস্ক ক্যাশে থেকে ফিরে পড়া অত্যন্ত দ্রুত।

উপসংহার: আমি এখন পিকাসো + OkHttp ব্যবহার করার পরামর্শ দিচ্ছি কারণ এটি সর্বোত্তম নমনীয়তা, এপিআই, কার্য সম্পাদন এবং স্থিতিশীলতা একত্রিত করে। আপনার যদি জিআইএফ সমর্থন প্রয়োজন হয় তবে আপনি গ্লাইডকে বিবেচনা করতে পারেন।


4
ইউআইএল-এ আপনার শেষ পয়েন্টটি সম্বোধন করার জন্য, আপনি নিজের ইচ্ছে মতো বিভিন্ন শ্রেণি এবং কনফিগারেশন তৈরি করতে পারেনImageLoader । আপনার কেবল ImageLoaderক্লাসটি সাবক্লাস করা দরকার । এখানে দেখুন: github.com/nostra13/Android-Universal-
ইমেজ-

হ্যাকের মতো মনে হচ্ছে তবে টিপটির জন্য আপনাকে ধন্যবাদ জানার জন্য এটি ভাল।
ব্লেডকডার

4
আমি অনুভূতির সাথে একমত হয়ে বলতে পারি না, আমরা এখানে পিকাসো ব্যবহার করি, আমার 500+ উচ্চ রেজোলিউশন চিত্র সহ একটি অ্যালবাম রয়েছে এবং আমি পারফরম্যান্স এবং মেমরির সমস্যাগুলিতে চলেছি, ইউআইএল চেষ্টা করেছি এবং তাত্ক্ষণিকভাবে সমাধান হয়ে গেছে। এটি এমন একটি ন্যূনতম নমুনায় ছিল যা আমাদের দেখা সমস্যাগুলি বিচ্ছিন্ন করে।
এএইচএমআরইডি

আপনি যদি চিত্রগুলি প্রদর্শন করছেন যা পর্দার তুলনায় অনেক বেশি রেজোলিউশনযুক্ত রয়েছে বা উচ্চ রেজোলিউশন চিত্রগুলির অনেকগুলি থাম্বনেইল, আপনি অবশ্যই সেগুলি নিচে নমুনা দেখান। আমি মনে করি ইউআইএল এটি স্বয়ংক্রিয়ভাবে করে এবং আপনি যথাযথ বিকল্পগুলি নির্দিষ্ট না করে পিকাসো তা না করে, তাই মেমরির সমস্যা। আমি ব্যক্তিগতভাবে ভলিতে নেটওয়ার্কআইমেজভিউ ব্যবহার করতে পছন্দ করি, এটি এমন একটি উইজেট যা লোড হওয়া চিত্রটিকে তার নিজের আকারের চেয়ে কম করে।
ব্লেডকডার

ইউআইএল-তে, ক্লাস ডিসপ্লেআইমেজঅ্যাপশনগুলি ব্যবহার করা যেতে পারে যদি আমরা কোনও নির্দিষ্ট চিত্রটিতে কিছু অন্য প্রসেসিং পরিবর্তন করতে বা প্রয়োগ করতে না চাই।
রাহুল রাস্তোগি

7

আমি এমন একটি অ্যাপ্লিকেশন বাস্তবায়ন করেছি যা ইন্টারনেট থেকে ক্রমাগত চিত্র পাওয়া উচিত। আমি একটি চিত্র ক্যাশে মেকানিজম প্রোগ্রাম করতে চলেছি, তার আগে কোনও বন্ধু আমাকে সর্বজনীন চিত্র লোডার প্রস্তাব দেয়।

ইউআইএল খুব ভাল কাস্টমাইজযোগ্য। এটি এতটাই অনুকূলিতযোগ্য যে কোনও নবাগত সহজেই কিছু ভুল করতে পারে। যাইহোক, ইউআইএল আমার অ্যাপ্লিকেশনটিতে ধীর ছিল এবং এটি কিছুটা ধীর হয়ে গেছে। আমার ব্যবহারের ক্ষেত্রে চিত্রগুলির সাথে তালিকার ভিউ ছিল।

গতকাল আমি ইউআইএল-এর বিকল্পের সন্ধান করছিলাম এবং আমি পিকাসো আবিষ্কার করলাম। পিকাসো একীভূত করা এবং ব্যবহার করা সহজ ছিল: কেবল Picasso.context(context).load(url).into(imageview)এবং চিত্রটি দ্রুত এবং সুচারুভাবে সংহত হতে পারে।

আমার জন্য, পিকাসো অবশ্যই ব্যবহারের জন্য এপিআই। ইউআইএল-এর সাথে আমার অভিজ্ঞতা ভাল ছিল না।


ভবিষ্যতের পাঠকদের জন্য: পিকাসোর চেয়ে ভাল গ্লাইড। এক
নজরে

0

আমি মনে করি পিকাসো লাইব্রেরির তুলনায় ইমেজলয়েডার আরও স্বনির্ধারিত এবং নমনীয়।


8
কীভাবে? একটু ব্যাখ্যা সাহায্য করবে।
দর্পণ
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.