android - লপম - এন্ড্রয়েড প্রোগ্রামিং টিউটোরিয়াল




অ্যান্ড্রয়েড স্টুডিও: লাইব্রেরী হিসাবে জার যোগ করুন? (20)

আমি নতুন অ্যান্ড্রয়েড স্টুডিও ব্যবহার করার চেষ্টা করছি কিন্তু আমি সঠিকভাবে কাজ করতে পারছি না।

আমি JSON- Objects serialize / deserialize করতে Gson লাইব্রেরি ব্যবহার করছি। কিন্তু লাইব্রেরী একরকম বিল্ড অন্তর্ভুক্ত করা হয় না।

আমি শুধু একটি MainActivity সঙ্গে একটি নতুন প্রকল্প তৈরি করেছিলাম। Gps-2.2.3.jar অনুলিপি করুন / libs ফোল্ডারে এবং এটি লাইব্রেরী নির্ভরতা হিসাবে যুক্ত করুন (ডান ক্লিক করুন-> লাইব্রেরী হিসাবে যোগ করুন)। এতে অ্যান্ড্রয়েড স্টুডিওতে জার অন্তর্ভুক্ত রয়েছে যাতে এটি উৎস ফাইলগুলির থেকে উল্লেখ করা যেতে পারে।

যখন আমি প্রকল্পটি চালানোর চেষ্টা করি তখন এটি সংকলন করতে পারে না তাই আমি যোগ করি:

compile files('libs/gson-2.2.3.jar')

ডি। গ্রেড ফাইলের নির্ভরতাগুলিতে। তারপরে এটি সঠিকভাবে কম্পাইল করে তবে অ্যাপ্লিকেশনটি চালানোর সময় আমি একটি ClassDefNotFoundException

যে কেউ ভুল করছেন কি জানেন?


1. gson-2.2.4.jar ফোল্ডারে জার (আমার ক্ষেত্রে, gson-2.2.4.jar ) gson-2.2.4.jar

2. কম্পাইল ফাইলগুলি ( libs/gson-2.2.4.jar ) আপনার Build.gradle ফাইলে রয়েছে তা নিশ্চিত করুন।

3. এখন "গ্র্যাডেল ফাইলগুলির সাথে সিঙ্ক প্রকল্প" তে ক্লিক করুন (উপরের বারে AVD পরিচালক বোতামে বামে)।

আমি উপরের তিনটি করার পর, এটা জরিমানা কাজ শুরু।


Android স্টুডিওতে বাহ্যিক লাইব্রেরি যোগ করার সহজ পদক্ষেপ

  1. আপনি যদি প্রকল্প এক্সপ্লোরারে Android দৃশ্যে থাকেন তবে নীচের হিসাবে প্রকল্প দৃশ্যতে এটি পরিবর্তন করুন

  1. পছন্দসই মডিউলটিতে রাইট ক্লিক করুন যেখানে আপনি বাহ্যিক লাইব্রেরি যোগ করতে চান, তারপরে নতুন> ডাইরেক্টরি নির্বাচন করুন এবং এটি ' libs ' হিসাবে নাম দিন।
  2. এখন blah_blah.jar কে ' libs ' ফোল্ডারে কপি করুন
  3. ব্লাহ_blah.jar রাইট ক্লিক করুন, তারপরে ' Library হিসাবে যুক্ত করুন' নির্বাচন করুন । এটি স্বয়ংক্রিয়ভাবে build.gradle এ যোগ এবং এন্ট্রি স্বয়ংক্রিয়ভাবে সংকলন ফাইল ('libs / blah_blah.jar') হিসাবে প্রবেশ করবে এবং ধীরে ধীরে সিঙ্ক করবে। এবং আপনি সম্পন্ন করা হয়

অনুগ্রহ করে নোট করুন: আপনি তৃতীয় পক্ষের লাইব্রেরিগুলি ব্যবহার করেন তবে ধাপে স্ক্রিপ্ট চালানোর সময় গ্র্যাডেল স্ক্রিপ্ট স্বয়ংক্রিয়ভাবে JAR এবং নির্ভরতা JAR ডাউনলোড করে যেখানে নির্ভরতাগুলি ব্যবহার করা ভাল।

প্রাক্তন: com.google.android.gms: play-services-ads compile: 9.4.0 '

Gradle নির্ভরতা Mangement সম্পর্কে আরও পড়ুন


  1. app স্তর এ libs ফোল্ডার যোগ করা হয়েছে।
  2. এই প্রকল্পের সব jars যোগ করা হয়েছে।
  3. পরবর্তী, libs ফোল্ডারে সব জার্স নির্বাচন করে,
  4. ডান আইটেম নির্বাচিত ক্লিক করুন, এবং add library
  5. তারপর আপনি প্রকল্প এক্সপ্লোরার নিজেই মধ্যে, jars সম্প্রসারণ বিকল্প খুঁজে পাবেন।

আমি সিটিআরএল + ALT + SHIFT + S -> প্রকল্প গঠন -> অ্যাপ্লিকেশন-মডিউল -> নির্ভরতা " compile-option অধীনে ইতিমধ্যে (dir: 'libs', include: '*.jar') হিসাবে একটি এন্ট্রি ছিল। প্রাথমিকভাবে এবং উপরে বর্ণিত পদক্ষেপ অনুযায়ী জার যোগ করার পরে build.gradle নতুন যোগ করা জারের জন্য এন্ট্রি পেয়েছে।


'ফাইল কম্পাইল করুন ...' আমার জন্য কাজ করার জন্য ব্যবহৃত, কিন্তু আরো কিছু। অনেক ব্যথা পরে, আমি দেখেছি যে এর পরিবর্তে এটি ব্যবহার করে:

compile fileTree(dir: 'libs', include: '*.jar')

আমার কোন ধারণা নেই যে কেন এটি একটি পার্থক্য তৈরি করেছে, কিন্তু, অন্তত এই দুষ্ট জিনিস এখন কাজ করছে।


Eclipse এর বিপরীতে আমরা জার ডাউনলোড এবং / libs ফোল্ডারে রাখতে হবে না। Gradle এই জিনিসগুলিকে পরিচালনা করে আমাদের কেবল গ্র্যাডেল নির্ভরতা যুক্ত করতে হবে, গ্র্যাডল এটি ডাউনলোড করে এবং ধীরে ধীরে ক্যাশে রাখে।

আমাদের নির্ভরতাগুলি এইভাবে জুড়তে হবে:

নির্ভরশীলতা {বাস্তবায়ন 'com.google.code.gson: gson: 2.2.4'}

তবে এটি আমরা জার ডাউনলোড করতে পারি এবং লাইব্রেরি হিসাবে যুক্ত করতে পারি তবে সর্বোত্তম অনুশীলন হল গ্র্যাডেল নির্ভরতাগুলি যুক্ত করা।


অ্যান্ড্রয়েড প্রকল্পের libs ফোল্ডারে .jar ফাইল রাখুন।

তারপরে অ্যাপ্লিকেশনের ধীরে ধীরে ফাইলের কোডটি যুক্ত করুন:

    compile fileTree(dir: 'libs', include: ['*.jar'])

অ্যান্ড্রয়েড ধীরে ধীরে প্লাগইন 3.0 এবং তারপরে, এর পরিবর্তে এটি ব্যবহার করা ভাল:

    implementation fileTree(dir: 'libs', include: ['*.jar'])

অ্যান্ড্রয়েড স্টুডিও 3+ দিয়ে:

আপনি কেবল অ্যাপ্লিকেশন ফোল্ডারের অধীনে কেবল জার ফাইলটিকে libs ফোল্ডারে অনুলিপি করতে সক্ষম হবেন।

... myproject \ app \ libs \ myfile.jar

তারপরে প্রজেক্ট উইন্ডোতে ড্রপ-ডাউন থেকে প্রকল্প ফাইলগুলি নির্বাচন করুন, প্রকল্পটিতে ডান ক্লিক করুন, প্রকল্প ফাইলগুলিতে ফাইল দেখতে সিঙ্ক্রোনাইজ নির্বাচন করুন। এটি স্বয়ংক্রিয়ভাবে ধীরে ধীরে ফাইল (মডিউল: অ্যাপ্লিকেশন) নির্ভরতা যুক্ত করবে।

dependencies {
...
    implementation files('libs/myfile.jar')

এখানে আরেকটি সমাধান:

প্রকল্প ফাইল দেখুন (ড্রপডাউন থেকে প্রকল্প ফাইল নির্বাচন করুন) যান।

নতুন নির্বাচন করুন ... ডিরেক্টরি, অ্যাপ্লিকেশন অধীনে অধিকার libs নামে একটি ফোল্ডার তৈরি করুন।

ফাইল এক্সপ্লোরার খুলুন, কপি এবং আপনার জার ফাইলটি libs ফোল্ডারে পেস্ট করুন।

অ্যান্ড্রয়েড স্টুডিওতে, জার ফাইলটিতে ডান ক্লিক করুন এবং পপআপ মেনু থেকে লাইব্রেরী হিসাবে যোগ করুন নির্বাচন করুন।

আপনি ধীরে ধীরে ফাইলের মধ্যে নির্ভরতা তালিকাতে তালিকাভুক্ত ফাইলটি দেখতে পাবেন:

dependencies {
...
    implementation files('libs/myfile.jar')
}

আপনার জাভা ফাইল খুলুন, এবং সেখানে আমদানি বিবৃতি যুক্ত করুন:

import com.xxx.xxx;

অ্যান্ড্রয়েড স্টুডিওতে, আমি গসন লিব পরিচালনা করতে গ্র্যাডেল ব্যবহার করি।

আপনার build.gradle ফাইলে নির্ভরতা নীচে যোগ করুন।

repositories {mavenCentral()}

dependencies {compile 'com.google.code.gson:gson:2.2.4'}

সবকিছু ঠিক আছে.

আপনি এই পোস্টটি দেখতে পারেন। Android স্টুডিওতে তৃতীয় পক্ষের লাইব্রেরি সংহত করার সেরা উপায়


আপনি আগে যোগ করা হবে নির্দিষ্ট কিছু আগে লাইক

compile files('libs/gson-2.2.3.jar') 

আপনার build.gradle ফাইল থেকে।

যাইহোক আমার কাছে অ্যান্ড্রয়েড স্টুডিওতে একটি প্রকল্প রয়েছে যা Eclipse থেকে স্থানান্তরিত হয়েছিল এবং এই ক্ষেত্রে "libs" ফোল্ডারটি "lib" নামে অভিহিত করা হয়েছে যাতে আমার "সমস্যা" সমস্যার সমাধান করা হয়।


আপনি দুটি বিকল্প দিয়ে এটি করতে পারেন।

প্রথম সহজ উপায়।

.Jar ফাইলটি ক্লিপবোর্ডে অনুলিপি করুন এবং এটি libs ফোল্ডারে যুক্ত করুন। প্রকল্পের Libbs ফোল্ডার দেখতে, ফোল্ডার উপরে combobox থেকে প্রকল্প নির্বাচন করুন।

তারপর ডান .jar ফাইলটিতে ক্লিক করুন এবং লাইব্রেরি হিসাবে যোগ ক্লিক করুন তারপর একটি মডিউল তারপর ঠিক আছে। আপনি build.gradle ফাইলের মধ্যে .jar ফাইলটি নির্ভরতা ব্লকের মধ্যে দেখতে পারেন।

 dependencies {
        implementation fileTree(dir: 'libs', include: ['*.jar'])
        implementation 'com.android.support:appcompat-v7:21.0.3'
        implementation project(':okhttp-2.0.0')
        implementation 'com.google.code.gson:gson:2.3.1'
    }

দ্বিতীয় উপায় হল: আমরা .jar ফাইলটি এই .jar মডিউল হিসাবে আমদানি করে একটি মডিউলে একটি .jar ফাইল যোগ করতে পারি, তারপর এই মডিউলটি যে কোনও মডিউলে যুক্ত করতে পারেন।

আমদানি মডিউল ---> আপনার .jar ফাইল নির্বাচন করুন -> .jar হিসাবে আমদানি করার চেয়ে -

তারপর CTRL + ALT + SHIFT + S -> প্রকল্প স্টুয়ার -> আপনি যে মডিউলটি চান তা নির্বাচন করুন একটি জার যোগ করুন -> নির্ভরশীল -> মডিউল নির্ভরতা। মডিউল build.gradle স্বয়ংক্রিয়ভাবে আপডেট করা হবে।


আমি 3 পদক্ষেপ উপরে এবং আমার কাজের কাজ কবজ সম্পন্ন।

(আমি অ্যান্ড্রয়েড স্টুডিও 2.1.2 ব্যবহার করছি)

ধাপ 1

  • আপনার jar প্যাকেজ নাম যুক্ত করুন (উদাহরণস্বরূপ compile 'com.squareup.okhttp3:okhttp:3.3.1' ) build.gradle (মডিউল: অ্যাপ্লিকেশন) এর অধীনে ধাপে বিল্ড স্ক্রিপ্টে।

পদক্ষেপ 2: অ্যাপ্লিকেশন ফোল্ডারে ডান ক্লিক করুন -> নতুন -> মডিউল

ধাপ 3: জার / এএআর প্যাকেজ আমদানি করুন ক্লিক করুন তারপর আপনার প্যাকেজ ব্রাউজ করুন। একটি উদাহরণ হিসাবে: OkHttp.jar


আমি অনেক ঘন্টার জন্য একই জিনিস সঙ্গে সংগ্রাম করা হয়েছে, Gson জার কম কাজ করতে চেষ্টা। আমি অবশেষে এটি ক্র্যাক - আমি এখানে গ্রহণ পদক্ষেপ হয়:

  1. Gsson জার (আমার ক্ষেত্রে, gson-2.2.4.jar ) libs ফোল্ডারে রাখুন
  2. ডান ক্লিক করুন এবং 'লাইব্রেরি হিসাবে যোগ করুন' আঘাত
  3. আপনার compile files('libs/gson-2.2.4.jar') আপনার build.gradle ফাইলে রয়েছে build.gradle করুন (অথবা ফাইলটি টি compile fileTree(dir: 'libs', include: '*.jar') যদি আপনি অনেক জার ফাইল ব্যবহার করেন )

    সম্পাদনা করুন: implementation files('libs/gson-2.2.4.jar') ব্যবহার করুন implementation files('libs/gson-2.2.4.jar') (অথবা implementation fileTree(dir: 'libs', include: '*.jar') ) Android Studio 3.0+ এ

  4. একটি পরিষ্কার বিল্ড করুন (আপনি সম্ভবত Android স্টুডিওতে এটি ভাল করতে পারেন তবে নিশ্চিত করুন যে আমি আমার অ্যাপ্লিকেশানের রুট ফোল্ডারে একটি টার্মিনালে নেভিগেট করেছি এবং gradlew clean টাইপ gradlew clean । আমি ম্যাক ওএস এক্স এ আছি, কমান্ডটি ভিন্ন হতে পারে আপনার সিস্টেম

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

[সম্পাদনা - build.gradle ধাপ যোগ করা হয়েছে যা অন্যদের কাছে নির্দিষ্ট করে দেওয়া দরকার)


আমি এখানে সব উত্তর পড়েছি এবং তারা সবাই অ্যান্ড্রয়েড স্টুডিওর পুরানো সংস্করণগুলি ঢেকে ফেলছে!

অ্যান্ড্রয়েড স্টুডিও 2.2.3 দিয়ে তৈরি একটি প্রকল্পের সাথে আমি শুধু app অধীনে একটি libs ডিরেক্টরি তৈরি করতে এবং সেখানে আমার জার স্থাপন করতে হবে। আমি আমার ফাইল ম্যানেজারের সাথে এটি করেছি, Android স্টুডিওতে কিছু ক্লিক বা সম্পাদনা করার দরকার নেই।

কেন এটা কাজ করে? খুলুন / লাইব্রেরি এবং নির্ভরতা সম্পাদনা করুন এবং আপনি দেখতে পাবেন:

{include=[*.jar], dir=libs}

আমি এটি build.gradle এক লাইন যোগ করে কাজ করেছেন:

 dependencies {
    implementation fileTree(dir: 'libs', include: ['*.jar']) ----> AS creates this
    implementation 'com.google.code.gson:gson:2.3.1'   ----------> I added this one
    }

উপরের ডান কোণে "এখন সিঙ্ক করুন" ক্লিক করতে ভুলবেন না।

আমি অ্যান্ড্রয়েড স্টুডিও 1.0.1 ব্যবহার করছি।


একটি ফোল্ডার libs তৈরি করুন। আপনার .jar ফাইল যোগ করুন। ডান উপর ক্লিক করুন এবং আপনি নির্ভরতা হিসাবে জার যোগ করা হবে। এটি ক্লিক করুন। এটা আপনি সব করতে হবে। আপনি আপনার build.gradle ফাইলে যুক্ত নির্ভরতা খুঁজে পেতে পারেন।


একটি মডিউলে লাইব্রেরী হিসাবে একটি স্থানীয় জার ফাইল যোগ করার নির্দেশাবলী এখানে দেওয়া হয়েছে:

  1. মডিউল ডিরেক্টরি শীর্ষ স্তরের একটি 'libs' ফোল্ডার তৈরি করুন (একই ডিরেক্টরি যা 'src' ডিরেক্টরি ধারণ করে)

  2. build.gradle file নিম্নলিখিতগুলি যোগ করুন যাতে আপনার নির্ভরতা বন্ধ থাকে:

    dependencies {
        // ... other dependencies
        compile files('libs/<your jar's name here>')
    }
  3. অ্যান্ড্রয়েড স্টুডিও ইতিমধ্যে একটি gradlew মোড়ানো সেটআপ করা উচিত। কমান্ড লাইন থেকে, আপনার প্রোজেক্টের শীর্ষ স্তরে নেভিগেট করুন (ডিরেক্টরিটি যা একটি gradlew ফাইল রয়েছে)।

    রান ./gradlew assemble । এই লাইব্রেরী সঙ্গে প্রকল্প কম্পাইল করা উচিত। আপনার build.gradle ফাইলটিতে প্রয়োজনীয় হিসাবে ত্রুটিগুলি সমাধান করতে হবে।

  4. আইডিই-তে কোডিং করার সময় অ্যান্ড্রয়েড স্টুডিও স্থানীয় জার ফাইলগুলি লাইব্রেরি হিসাবে সমর্থনের জন্য আপনাকে আরও কয়েকটি পদক্ষেপ নিতে হবে:

    4.1। বাম হাত প্যানেলে মডিউলে ডান ক্লিক করুন এবং Open Library Settings

    4.2। ডায়ালগের বাম প্যানেলে Libraries নির্বাচন করুন।

    4.3। বাম দিক থেকে দ্বিতীয় প্যানেলে + চিহ্নটি ক্লিক করুন -> Java

    4.4। আপনার স্থানীয় জার নির্বাচন করুন এবং প্রকল্পে যোগ করুন।

  5. আপনাকে আরো একবার / ./gradlew কমান্ড চালানোর প্রয়োজন হতে পারে


ধাপ 1: এখন আপনার app folder অধীনে আপনি libs দেখতে পাবেন, যদি আপনি এটি দেখতে না পান তবে এটি তৈরি করুন

ধাপ 2: Drag & Drop the .jar file here , আপনি একটি প্রম্পট পেতে পারেন "This file does not belong to the project" , ঠিক OK বাটনে ক্লিক করুন।

ধাপ 3: এখন আপনি libs ফোল্ডারের অধীনে জার ফাইলটি দেখতে পাবেন, জার ফাইলটিতে ডান ক্লিক করুন এবং "Add as library", Click OK for prompt "Create Library" করুন "Add as library", Click OK for prompt "Create Library" নির্বাচন "Add as library", Click OK for prompt "Create Library"

ধাপ 4: এখন এই জার যোগ করা হয়েছে।


প্রকল্পের ডান ক্লিক করুন

-> new -> module
-> import jar/AAR package
-> import select the jar file to import
-> click ok -> done

নীচের স্ক্রিনশট অনুসরণ করুন:

1:

2:

3:

আপনি এই দেখতে পাবেন:


compile fileTree(dir: 'libs', include: '*.jar') কাজ করে তবে compile files(...) না compile files(...) স্টুডিও বিটা দিয়ে পরীক্ষা করেছে 0.8.1


অ্যান্ড্রয়েড স্টুডিও 2.1 এ আমি এইভাবে অনুসরণ করি,

গোটা অ্যাপ্লিকেশন -> src-> প্রধান -> সম্পদ ফোল্ডার (যদি এটি উপলব্ধ না হয়) -> আপনার জার ফাইলগুলি রাখুন

আপনার build.gradle এ নির্ভরতা যোগ করুন,

implementation files('src/main/assets/jsoup.jar')
implementation files('src/main/assets/org-apache-xmlrpc.jar')
implementation files('src/main/assets/org.apache.commons.httpclient.jar')
implementation files('src/main/assets/ws-commons-util-1.0.2.jar')

এখন সিঙ্ক করুন। এখন আপনার জার ফাইল ব্যবহার করতে প্রস্তুত।








dependency-management