গ্র্যাডল এবং অ্যান্ড্রয়েড স্টুডিওর মাধ্যমে অ্যাপ্লিকেশন বিল্ডিং এবং চলমান গ্রহণের চেয়ে ধীর গতি


460

আমার একটি মাল্টি-প্রকল্প রয়েছে (~ 10 মডিউল) যার মধ্যে বিল্ডিং প্রতিবার প্রায় 20-30 সেকেন্ড সময় নেয়। আমি যখন অ্যান্ড্রয়েড স্টুডিওতে রান টিপবই, তখন অ্যাপটি পুনর্নির্মাণের জন্য আমাকে প্রতিবার অপেক্ষা করতে হবে, যা অত্যন্ত ধীর।

অ্যান্ড্রয়েড স্টুডিওতে বিল্ডিং প্রক্রিয়া স্বয়ংক্রিয় করা সম্ভব? অথবা কীভাবে এই প্রক্রিয়াটি আরও দ্রুত করা যায় সে সম্পর্কে আপনার কোনও পরামর্শ আছে?

ইক্লিপসে, স্বয়ংক্রিয় বিল্ডিংয়ের জন্য ধন্যবাদ, একটি এমুলেটরটিতে একই প্রকল্প চালানো প্রায় 3-5 সেকেন্ড সময় নেয়।

এটি আমার বিল্ড.gradle ফাইল (অ্যাপ মডিউল):

buildscript {
    repositories {
        maven { url 'http://repo1.maven.org/maven2' }
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:0.4'
    }
}
apply plugin: 'android'

dependencies {
    compile fileTree(dir: 'libs', include: '*.jar')
    compile project(':libraries:SharedLibs')
    compile project(':libraries:actionbarsherlock')
    compile project(':libraries:FacebookSDK')
    compile project(':libraries:GooglePlayServices')
    compile project(':libraries:HorizontalGridView')
    compile project(':libraries:ImageViewTouch')
    compile project(':libraries:SlidingMenu')
}

android {
    compileSdkVersion 17
    buildToolsVersion "17.0.0"

    defaultConfig {
        minSdkVersion 8
        targetSdkVersion 16
    }
}

23
দয়া করে মনে রাখবেন যে গ্রেডল ভিত্তিক বিল্ড সিস্টেম বা অ্যান্ড্রয়েড স্টুডিওগুলি এই মুহুর্তে উত্পাদন-গ্রেড নয়।
কমন্সওয়ের

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

3
ইতিমধ্যে, ডিফল্ট গ্রেডল কার্যগুলি পরিবর্তন করার কথা বলার কোনও সহজ উপায় কী যে তারা সবসময় পরিষ্কার পরিচ্ছন্ন করে না?
সিগমাবেতা

10
@ কমন্সওয়্যার ওয়েল, এখন আমরা কোনও 1.03 সংস্করণে থাকি না, তবে এটি এখনও একটি বড় বিষয়। অ্যান্ড্রয়েড স্টুডিওতে আমার 4 গিগাবাইট কোয়াড কোর ল্যাপটপটি চলতে চলতে প্রায় 3.75gb এর র‌্যাম ব্যবহার করে একটি হ্যালো ওয়ার্ল্ড প্রকল্পের একক দৃষ্টান্ত। এটি খুব আলস্য ফলাফল হিসাবে। আমার কাছে এটি গুরুতর এবং চলমান ডিজাইনের ত্রুটি নির্দেশ করে। আমি আশা করি বিষয়গুলি শীঘ্রই সমাধান হয়ে যাবে।
অ্যান্ড্রু এস

7
@ অ্যান্ড্রুস আমি এটি একটি মমতা অনুভব করি যে আমাদের পূর্ববর্তী সরঞ্জামগুলির তুলনায় একটি যুক্তিসঙ্গত গতিতে চলার জন্য গ্রেড পেতে কেবল আমাদের ওএস পরিবর্তন করা দরকার।
রিচার্ড লে ম্যাসুরিয়ার

উত্তর:


441

হার্ডওয়্যারের

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

সরঞ্জাম সংস্করণ

বর্ধনশীল পারফরম্যান্স বিকাশকারী দলের পক্ষে প্রধান অগ্রাধিকার রয়েছে, সুতরাং আপনি সর্বশেষ গ্র্যাডল এবং অ্যান্ড্রয়েড গ্রেডল প্লাগইন ব্যবহার করছেন তা নিশ্চিত করুন

কনফিগারেশন ফাইল

gradle.propertiesযে ডিরেক্টরিতে যা প্রয়োগ হয় তাতে নামযুক্ত একটি ফাইল তৈরি করুন :

  • /home/<username>/.gradle/ (লিনাক্স)
  • /Users/<username>/.gradle/ (ম্যাক)
  • C:\Users\<username>\.gradle (উইন্ডোজ)

সংযুক্ত করুন:

# IDE (e.g. Android Studio) users:
# Settings specified in this file will override any Gradle settings
# configured through the IDE.

# For more details on how to configure your build environment visit
# http://www.gradle.org/docs/current/userguide/build_environment.html

# The Gradle daemon aims to improve the startup and execution time of Gradle.
# When set to true the Gradle daemon is to run the build.
# TODO: disable daemon on CI, since builds should be clean and reliable on servers
org.gradle.daemon=true

# Specifies the JVM arguments used for the daemon process.
# The setting is particularly useful for tweaking memory settings.
# https://medium.com/google-developers/faster-android-studio-builds-with-dex-in-process-5988ed8aa37e#.krd1mm27v
org.gradle.jvmargs=-Xmx5120m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8

# When configured, Gradle will run in incubating parallel mode.
# This option should only be used with decoupled projects. More details, visit
# http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects
org.gradle.parallel=true

# Enables new incubating mode that makes Gradle selective when configuring projects. 
# Only relevant projects are configured which results in faster builds for large multi-projects.
# http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:configuration_on_demand
org.gradle.configureondemand=true

# Set to true or false to enable or disable the build cache. 
# If this parameter is not set, the build cache is disabled by default.
# http://tools.android.com/tech-docs/build-cache
android.enableBuildCache=true

গ্রেডেল বৈশিষ্ট্যগুলি স্থানীয়ভাবে কাজ করে যদি আপনি এগুলিকে স্থাপন করেন projectRoot\gradle.propertiesএবং বিশ্বব্যাপী আপনি যদি এটি স্থাপন করেন user_home\.gradle\gradle.properties। আপনি যদি কনসোল থেকে সরাসরি ধারণা থেকে সরাসরি গ্রেড টাস্ক পরিচালনা করেন তবে সম্পত্তি প্রয়োগ করা হবে:

আইডিই সেটিংস

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

আইডিই সেটিংস

নেটিভ মাল্টি-ডেক্স

APK বিল্ডের ধীরতম ধাপগুলির মধ্যে একটি হল জাভা বাইটকোডকে একক ডেক্স ফাইলে রূপান্তর করা। নেটিভ মাল্টিটেক্স সক্ষম করা (কেবলমাত্র ডিবাগ তৈরির জন্য minSdk 21) সরঞ্জামটি কাজের পরিমাণ হ্রাস করতে সহায়তা করবে ( নীচে আকসেল উইলগার্টের উত্তর চেক করুন )।

নির্ভরতা

@aarগ্রন্থাগার উপ-প্রকল্পগুলির উপর নির্ভরতা পছন্দ করে।

গিথুব থেকে কোনও লাইব্রেরি তৈরি করতে mavenCentral , jCenterjitpack.io ব্যবহার করুন বা আর প্যাকেজটি অনুসন্ধান করুন । আপনি যদি নির্ভরতা গ্রন্থাগারের উত্সগুলি সম্পাদনা না করে থাকেন তবে আপনার প্রকল্পের উত্স দিয়ে প্রতিবার এটি তৈরি করা উচিত নয়।

অ্যান্টিভাইরাস

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

একটি বিল্ড প্রোফাইলিং

গ্রেডল প্রোফিলিং প্রকল্পগুলির জন্য অন্তর্নির্মিত সমর্থন করেছে । বিভিন্ন প্রকল্প প্লাগইন এবং কাস্টম স্ক্রিপ্টগুলির একটি পৃথক সংমিশ্রণ ব্যবহার করছে। ব্যবহারে --profileবাধা খুঁজে পেতে সহায়তা করবে।


1
@আর অবক্ষয় সম্পর্কে: উদাহরণস্বরূপ ব্যবহার dependencies {compile 'com.android.support:support-v4:21.0.+'}করা একটি ধীর সমাধান? বোঝার জন্য নিশ্চিত নয়
younes0

1
ইমেজিং, আপনি এটির মতো লাইব্রেরি যুক্ত করেছেন: github.com/novak/numberpicker । এটির কোনও মূল্যবোধ রয়েছে যা সমস্যার জন্য কোড সমাধান সরবরাহ করে তবে লেখক এটি ম্যাভেন বা জেসেন্টারের মতো কোথাও প্রকাশ করেন না। এখন আপনি হয় সেই লাইব্রেরিটিকে আপনার প্রকল্পের উত্স হিসাবে নিয়ে আসছেন এবং এটি প্রতিটি সময় মূল প্রকল্পটি নির্মাণ করে বা এটি একবারে সংকলন করেন এবং কেবলমাত্র আপনার প্রকল্পের ভাণ্ডারগুলিতে @Aar প্রতিশ্রুতিবদ্ধ। সুতরাং এটি সত্যিই উত্স / বাইনারি নির্ভরতা পছন্দ is আপনি যদি উত্স সম্পাদনা না করে থাকেন তবে আপনার নির্ভরতা প্রাকম্পম্পাইল্ড বাইনারি হিসাবে আনতে হবে। প্লেইন জাভা লাইব্রেরি যে জার হয়, অ্যান্ড্রয়েড লাইব্রেরির জন্য যে .aar হয়
Sergii Pechenizkyi

1
এটি প্রকল্পের সেটিংস> গ্রেডল। : নীচের স্ক্রিনশট দেখতে i.stack.imgur.com/wrwgo.png
Sergii Pechenizkyi

2
আমি বর্ণিত সমস্ত অপ্টিমাইজেশন সেটআপ করেছি, তবে অ্যান্ড্রয়েড স্টুডিওতে আমার অ্যাপ্লিকেশনটি শুরু করতে 3 থেকে 4 মিনিট সময় লাগে, যখন এটি গ্রহণের প্রায় 30 সেকেন্ড ছিল। বিষ্ঠা। মাত্র 12 টি প্রকল্প, একটি একক অ্যাপ্লিকেশন চালানো! অ্যান্ড্রয়েড দেব এখন এত জটিল হয়ে উঠেছে, এবং এটি এক বছরেরও বেশি পরে।
3c71

1
আমি সমস্ত অপ্টিমাইজেশন প্রয়োগ করেছি এবং গ্রিপসে ২-৩ সেকেন্ডের তুলনায় হ্যালো ওয়ার্ল্ড এপিপি তৈরি করতে এখনও প্রায় 20 সেকেন্ড সময় লাগে।
পাভেল

148

আপনি গ্রেড আপডেট-টু-ডেট চেকগুলি উপেক্ষা করতে পারেন।

এখানে চিত্র বর্ণনা লিখুন

উইন্ডোজ চলমান অ্যান্ড্রয়েড স্টুডিও 1.5 এর জন্য: এ যান File -> Settings -> Build, Execution, Deployment -> Build tools -> Gradle -> Check Offline work (as shown in image)

~ 30 + সেকেন্ড থেকে ~ 3 সেকেন্ডে নেমে যান


24
যে বেশ শান্ত. এটি অনেক দ্রুত। কিন্তু এই কি ভাঙবে?
জন বলিঞ্জার

2
সবচেয়ে ভালো সমাধান. আমি কি এই সমাধানের পার্শ্ব প্রতিক্রিয়াগুলি জানতে পারি
কাভিন বর্ণন

26
@ জনব্যালিংগার অফলাইন কাজ - অফলাইন মোডে গ্রেডলের সাথে কাজ করতে এই চেক বাক্সটি ব্যবহার করুন। এই ক্ষেত্রে গ্রেডল ক্যাশে থেকে নির্ভরতা ব্যবহার করবে। গ্রেডল নির্ভরতা রেজোলিউশন সম্পাদন করতে নেটওয়ার্ক অ্যাক্সেস করার চেষ্টা করবে না। যদি নির্ভরতাগুলির ক্যাশে প্রয়োজনীয় নির্ভরতা উপস্থিত না হয় তবে একটি বিল্ড এক্সিকিউশন ব্যর্থ হবে। (উত্স: jetbrains.com/idea/help/gradle-2.html )
সিপ্রিসক্র্যাক

10
নেটওয়ার্কে যাওয়ার আগে ক্যাশেড নির্ভরতা ব্যবহার করা কি ডিফল্ট হয়? প্রতিবার আপডেট হওয়া নির্ভরতার জন্য এই চেকগুলি কল্পনা করতে পারি না gradle। উদ্ভট।
এহতেশ চৌধুরী

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

34

এর জন্য সর্বত্র সর্বত্র অনুসন্ধান করা এবং অবশেষে এমন একটি সমাধান খুঁজে পেল যা আমাদের পক্ষে কার্যকর। সমান্তরাল বিল্ডগুলি সক্ষম করা (ওএসএক্স preferences -> compiler -> gradle -> "Compile independent modules in parallel":) এবং 'মেক প্রজেক্টটি স্বয়ংক্রিয়ভাবে সক্ষম করা' এটিকে 1 মিনিট থেকে 20 ~ সেকেন্ডে নামিয়ে আনে। আপনাকে ধন্যবাদ / ইউ / কোভ্যালেন্স।

http://www.reddit.com/r/androiddev/comments/1k3nb3/gradle_and_android_studio_way_slower_to_build/


56
20 সেকেন্ড এখনও ভয়ঙ্কর ধীর।
জোহানেস ব্রডওয়াল

6
মনে রাখবেন এটি দৃশ্যত কেবল তখনই সহায়তা করে যখন আপনার একাধিক স্বতন্ত্র মডিউল / প্রকল্প থাকে। আমি এটি একটি একক মডিউল অ্যাপ্লিকেশনটিতে পরীক্ষা করে দেখেছি এবং এতে কোনও পার্থক্য হয়নি।
স্যাম

আমার একটি দুর্দান্ত প্রকল্প রয়েছে এবং এটি ম্যাকবুক প্রো 2012 কোর আই 7, 8 জিবি র‍্যামে 2 - 3 মিনিট সময় নেয়। ঠিক আছে?
28:57

25

আমি সম্প্রতি একটি নতুন এসএসডি কিনে উইন্ডোজ থেকে লিনাক্সে গিয়েছিলাম build

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


11
আমার দলের বিকাশকারীদের প্রচুর স্মৃতি সহ দ্রুত মেশিনে দ্রুত এসএসডি রয়েছে। একটি অ-তুচ্ছ অ্যাপ্লিকেশনটির জন্য, একটি ছোটখাটো কোড পরিবর্তনের পরে পুনরায় স্থাপনে অ্যালভিসে প্রায় তাত্ক্ষণিকভাবে পুনরায় স্থাপনের তুলনায় এখনও প্রায় ~ 45 সেকেন্ড সময় লাগে। এমনকি একটি সরল, অ-অ্যান্ড্রয়েড জাউনিট চালানোও নিষেধাত্মকভাবে ধীর। অ্যান্ড্রয়েড স্টুডিও এবং গ্রেডলে "আপগ্রেডিং" এ পর্যন্ত একটি বড় ডাউনগ্রেড হয়েছে। : - /
spaaarky21

@ লায়নলিফ উইন্ডোজ থেকে লিনাক্সে কত দ্রুত স্যুইচ করছেন?
younes0

@ younes0 আমি জানি না। আমি লিনাক্সে স্যুইচ করেছি একই সাথে আমি একটি এসএসডি এ চলেছি। আমি বলছি না এটির কোনও ইতিবাচক প্রভাব আছে, এটি ছিল কেবলমাত্র দুটি দুটি পরিবর্তনশীল আমি দ্রুতগতির জন্য পরিবর্তন করেছিলাম।
Andreas Løve Selvik

4
আমার ক্ষেত্রে উইন্ডোজ থেকে লিনাক্সে স্যুইচিংয়ের ফলে 40% দ্রুত অ্যান্ড্রয়েড তৈরি হয়েছিল ... সুতরাং অবশ্যই এটি মূল্যবান
কোসিয়ারা - বার্তোসক কোসারজিকি

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

20

অ্যান্ড্রয়েড স্টুডিওতে স্পিড আপ গ্রেডেল বিল্ড 3.2.1

কখনও কি মনে হয় আপনি বিল্ডিংগুলি কয়েক মিনিটের জন্য অ্যান্ড্রয়েড স্টুডিওতে সম্পূর্ণ হওয়ার জন্য অপেক্ষা করছেন? আমিও. এবং এটি একটি খুব বিরক্তিকর। ভাগ্যক্রমে, কয়েকটি উপায় রয়েছে যা আপনি এটি উন্নত করতে ব্যবহার করতে পারেন। অ্যান্ড্রয়েড বিল্ডিংয়ের জন্য গ্রেডল ব্যবহার করে। সর্বশেষতম সংস্করণটি 4.6 এর পূর্ববর্তী সংস্করণগুলির তুলনায় বিশাল পারফরম্যান্স বাড়িয়েছে (বিশদ বিবরণের জন্য রিলিজ নোট দেখুন)।

পদক্ষেপ 1: গ্রেডল সংস্করণ আপডেট করুন এটি সম্পাদন করার একটি সহজ উপায় এখানে যেতে হবে: মডিউল সেটিংস খুলুন (আপনার প্রকল্প)> প্রকল্পের কাঠামো

এখানে চিত্র বর্ণনা লিখুন

হালনাগাদ

গ্রেডল সংস্করণে পরিবর্তন করুন : 4.6 এবং অ্যান্ড্রয়েড প্লাগইন সংস্করণে পরিবর্তন করুন: 3.2.1

এখানে চিত্র বর্ণনা লিখুন

Https://services.gradle.org/distribitions/gradle-4.6-all.zip থেকে গ্রেডল রিলিজ বিতরণটি ডাউনলোড করুন এবং গ্রেডল ফোল্ডারে এটি অনুলিপি করুন:

এখানে চিত্র বর্ণনা লিখুন

শেষ পদক্ষেপটি সেটিংস> গ্রেডলে আপনার বিযুক্তিকে যুক্ত করা

এখানে চিত্র বর্ণনা লিখুন

পরিবর্তনগুলি সংরক্ষণ করতে প্রয়োগ করতে ক্লিক করতে ভুলবেন না।

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

এখানে চিত্র বর্ণনা লিখুন

  1. অ্যান্ড্রয়েড স্টুডিও সেটিং থেকে সংকলক যান এবং কমান্ড-লাইন বাক্সে "- অফলাইন" যুক্ত করুন এবং সমান্তরালে স্বতন্ত্র মডিউলগুলি কম্পাইল করুন ক্লিক করুন।

এখানে চিত্র বর্ণনা লিখুন

পরবর্তী পদক্ষেপটি আপনার প্রকল্পের জন্য গ্রেডল ডিমন সক্ষম এবং সমান্তরাল বিল্ড। সমান্তরাল বিল্ডগুলি আপনার প্রকল্পগুলিকে একাধিক মডিউল (গ্রেডলে মাল্টি-প্রজেক্ট বিল্ডস) সমান্তরালে নির্মিত হবে, যার ফলে বৃহত বা মডিউল প্রকল্পগুলি দ্রুত তৈরি করতে হবে।

এখানে চিত্র বর্ণনা লিখুন

গ্রেডল স্ক্রিপ্ট ডিরেক্টরিতে (যেমন, ~ / .gradle / গ্রেডেল.প্রোপার্টি) নামের গ্রেড.প্রপ্রেটিস নামের একটি ফাইলকে সংশোধন করে এই সেটিংস সক্ষম করা সম্ভব হয়েছিল these ডিফল্ট, তবে গ্রেড.প্রোপার্টি ফাইলগুলিতে স্থাপন করা টার্মিনাল থেকে বিল্ডিংয়ের সময় এবং আপনার সহকর্মীরা একই সেটিংস ব্যবহার করবে কিনা তা নিশ্চিত করে। তবে আপনি যদি একটি দলে কাজ করছেন তবে কখনও কখনও আপনি এই জিনিসগুলি প্রতিশ্রুতিবদ্ধ করতে পারবেন না।

# When configured, Gradle will run in incubating parallel mode.
# This option should only be used with decoupled projects. More details, visit org.gradle.parallel=true
# When set to true the Gradle daemon is used to run the build. For local developer builds this is our favorite property.
# The developer environment is optimized for speed and feedback so we nearly always run Gradle jobs with the daemon.
 org.gradle.daemon=true

ডিমনটি ব্যবহার করা আপনার বিল্ডগুলি দ্রুততর করে তুলবে কারণ প্রতিবারের মতো পুরো গ্রেডল অ্যাপ্লিকেশনটি আরম্ভ করতে হবে না। গ্রেডল ডিমন ডিফল্টরূপে সক্ষম হয় না তবে এটি বিকাশকারীদের মেশিনে সর্বদা এটি সক্ষম করার পরামর্শ দেয় (তবে এটিকে অবিচ্ছিন্ন ইন্টিগ্রেশন সার্ভারগুলির জন্য অক্ষম রেখে দেওয়া হয়)। এই মোড সম্পর্কে FAQ এখানে https://docs.gradle.org/current/userguide/gradle_daemon.html পাওয়া যাবে । সমান্তরাল বিল্ডস সেটিং কিছু প্রকল্পের জন্য অনিরাপদ হতে পারে। প্রয়োজনটি হ'ল আপনার সমস্ত মডিউল অবশ্যই ডিউপল করা উচিত বা আপনার বিল্ডটি ব্যর্থ হতে পারে (দেখুন http://gradle.org/docs/current/userguide/m বিশদের জন্য )।

পদক্ষেপ 3: ইনক্রিমেন্টাল ডেক্সিন সক্ষম করুন এবং মেমরি সেটিংসটিকে স্নাতক করুন আপনি ইনক্রিমেন্টাল ডেক্সিং চালু করে আপনার বিল্ডগুলি গতি বাড়িয়ে তুলতে পারেন। আপনার মডিউলটির বিল্ড ফাইলটিতে:

এখানে চিত্র বর্ণনা লিখুন

আপনার অ্যান্ড্রয়েড ব্লকে এই বিকল্পটি যুক্ত করুন:

dexOptions {
    incremental true
}

ডেক্সঅ্যাপশন ব্লকে আপনি ডেক্স প্রক্রিয়াটির জন্য হ্যাপের আকারটিও নির্দিষ্ট করতে পারেন, উদাহরণস্বরূপ:

dexOptions {
    incremental true
    javaMaxHeapSize "12g"
}

যেখানে “12 জি” 12 গিগাবাইট মেমরি। এ সম্পর্কে অতিরিক্ত তথ্য এখানে পাওয়া যাবে google.github.io/android-gradle-dsl/current/ আপনি সেটিংস ফাইলে গ্রেডল পরামিতিগুলিও কনফিগার করতে পারেন, উদাহরণস্বরূপ আপনার যদি কোনও বৃহত প্রকল্প রয়েছে তবে সর্বাধিক হ্যাপের আকার বাড়ান:

# Specifies the JVM arguments used for the daemon process.
# The setting is particularly useful for tweaking memory settings.
# Default value: -Xmx10248m -XX:MaxPermSize=256m
org.gradle.jvmargs=-Xmx2048m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8

সমস্ত প্যারামিটারের তালিকা এখানে দেখুন: https://docs.gradle.org/current/userguide/userguide_single.html#sec:gradle_configration_properties বিশদ জন্য।

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

সহায়ক লিঙ্ক


19

গুগল প্লে পরিষেবাগুলি ব্যবহার করে, পুরো ব্লবের পরিবর্তে আপনার প্রয়োজনীয় লাইব্রেরির উপর নির্ভর করে জিনিসগুলি দ্রুততর করতে পারে।

যদি আপনার একমাত্র প্রয়োজন হয় মানচিত্র, ব্যবহার করুন:

compile 'com.google.android.gms:play-services-maps:6.5.+'

পরিবর্তে:

compile 'com.google.android.gms:play-services:6.5.+'

আধুনিকটি ক্লাসপথে 20k পদ্ধতি (ব্লগ দেখুন) নিয়ে আসে , যা মোট পদ্ধতির গণনাটি 64k এর চেয়ে বেশি টিপতে পারে।

এটি ডিবাগ বিল্ডগুলির জন্য এমনকি প্রগুয়ার্ড বা মাল্টিডেক্সের ব্যবহারকে বাধ্য করবে । আমার এক প্রকল্পের জন্য আমার নিম্নলিখিত বিল্ড সময় ছিল

  • মাল্টিডেক্স বিল্ড (সাপোর্টলিবারি সহ) ~ 40 সিসি
  • অগ্রগতি বিল্ড ~ 20sec
  • পদ্ধতির সীমা <64 ক। 5 সেকেন্ড যখন তৈরি করুন

যদি এসডিকে 21+ তে বিকাশ করা হয় তবে অ্যান্ড্রয়েড ডকুমেন্টেশনে বর্ণিত মাল্টিডেক্স বিল্ডগুলি অনুকূল করে তোলা সম্ভব

android {
    productFlavors {
        // Define separate dev and prod product flavors.
        dev {
            // dev utilizes minSDKVersion = 21 to allow the Android gradle plugin
            // to pre-dex each module and produce an APK that can be tested on
            // Android Lollipop without time consuming dex merging processes.
            minSdkVersion 21
        }
        prod {
            // The actual minSdkVersion for the application.
            minSdkVersion 14
        }
    }
    ...
}

2
সব সংকলন পরিবর্তে play-serviceগ্রন্থাগার, আমি শুধু কম্পাইল mapsএবং locations এবং অক্ষম multidex। আমি বড় পার্থক্য অনুভব করছি। ধন্যবাদ +1
সামি এলটামাভি

16

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

  1. বিন ফোল্ডারে পরিবেশের কনফিগারেশন সেট করার জন্য একটি স্টুডিও.ভমোপশন ফাইল রয়েছে। আমার ক্ষেত্রে এটি স্টুডিও 64৪.vmoptions নিম্নলিখিত লাইনগুলি ইতিমধ্যে যুক্ত না করা থাকলে এবং ফাইলটি সংরক্ষণ করুন। আমার ক্ষেত্রে আমার 8 জিবি র‌্যাম রয়েছে।

    -Xms4096m
    -Xmx4096m
    -XX:MaxPermSize=2048m
    -XX:+CMSClassUnloadingEnabled
    -XX:+CMSPermGenSweepingEnabled 
    -XX:+HeapDumpOnOutOfMemoryError
    -Dfile.encoding=utf-8`
  2. অ্যান্ড্রয়েড স্টুডিও শুরু করুন। ফাইল-> সেটিংস-> বিল্ড, এক্সিকিউশন, ডিপ্লয়মেন্ট-> সংকলক যান Go

    • সমান্তরালভাবে স্বাধীন মডিউলগুলি কম্পাইল করে দেখুন
    • কমান্ড-লাইনে বিকল্পগুলিতে লিখুন: --ফাইন
    • প্রকল্পটি স্বয়ংক্রিয়ভাবে চেক করুন
    • চাহিদা অনুযায়ী কনফিগার পরীক্ষা করুন

ম্যাক ব্যবহারের ক্ষেত্রে প্রথমে আমি ভিএমপশনগুলি খুঁজে পেলাম না। যাইহোক, আমরা কীভাবে ম্যাক ওএসএক্সে ভিএমপশনগুলি পরিবর্তন করতে পারি সে সম্পর্কে একটি সুন্দর নিবন্ধ এখানে । এখানে এই নিবন্ধ থেকে উদ্ধৃতি।

আপনার টার্মিনালটি খুলুন এবং ম্যাক ওএসএক্সে ভিএমপশনগুলি খুলতে এই আদেশটি দিন:

open -e /Applications/Android\ Studio.app/Contents/bin/studio.vmoptions

1
২.৩.২ হিসাবে আপনি সাহায্যের সাহায্যে ভিএম বিকল্পগুলি পরিবর্তন করতে পারেন-> কাস্টম ভিএম বিকল্পগুলি সম্পাদনা করুন
স্যাম

15

কেবলমাত্র নিম্নলিখিত ডিরেক্টরিতে গ্রেডেল.প্রোপার্টি নামে একটি ফাইল তৈরি করুন:

/home/<username>/.gradle/ (Linux)
/Users/<username>/.gradle/ (Mac)
C:\Users\<username>\.gradle (Windows)

এই লাইনটি ফাইলটিতে যুক্ত করুন:

org.gradle.daemon=true

আমার জন্য গতি এখন গ্রহনের সমান।

সূত্র: https://www.timroes.de/2013/09/12/speed-up-gradle/


আমি ম্যাকের মধ্যে .gradle ফোল্ডারটি দেখতে সক্ষম নই। কীভাবে এটি খুলব?
ধর্মিক

@ ধর্মিক: সম্ভবত আপনি একটি পৃথক ব্যবহারকারীর নামে অ্যান্ড্রয়েড স্টুডিও ইনস্টল করেছেন। অন্যথায়, এটি সঠিকভাবে ইনস্টল করা হয়নি বলে আমার ধারণা।
ইয়াস্টার

1
না, এটা অন্যান্য সমস্যা হয়েছে .. ".gradle" সিস্টেম ফোল্ডারের লুকানো ছিল .. তাই আমি যান => যান ফোল্ডার এ যান এবং আমি .gradle ফোল্ডারের পাওয়া চেয়ে .. দ্রুত উত্তর দেওয়ার জন্য ধন্যবাদ ..
Dharmik

14

আপনি যদি কমান্ড লাইন থেকে গ্রেড ব্যবহার করেন তবে আপনি প্রক্রিয়াটি আরও দ্রুত তৈরি করতে পারেন। আইডিই বিকাশকারীদের জন্য অনেকগুলি অপ্টিমাইজেশন রয়েছে। তবে এটি কেবল একটি প্রাথমিক সংস্করণ।

আরও তথ্যের জন্য ডি + র সাথে কিছু জি + তে এই আলোচনাটি পড়ুন ।


3
এটি এখন পর্যন্ত 2016 সালে সত্য বলে মনে হচ্ছে
লিও মনিকা সেলিও

11

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

  • পছন্দগুলিতে সংস্করণ নিয়ন্ত্রণে যান এবং সাবভারশন থেকে কোনওটিতে সেট করুন।এখানে চিত্র বর্ণনা লিখুন

1
আপনি আমার দিনটি সংরক্ষণ করুন: 2/4 মিনিট -> 15 সেকেন্ড (আমি প্রকল্পের জন্য কচ্ছপ এইচজি অক্ষম করেছি)।
কাফতানাটি

3
যদি কেউ এখনও সাবভারশন ব্যবহার করে থাকে তবে তাদের গিট বা মার্কিউরিয়ালে স্যুইচ করা উচিত
লিও মনিকা সেলিও

8

অ্যান্ড্রয়েড স্টুডিও ২.৩-এর পরে আপডেট

সমস্ত উত্তর দুর্দান্ত, এবং আমি বিল্ডিং গতি উন্নত করতে এই পদ্ধতি ব্যবহার করে উত্সাহিত করি।

২০১ September সালের সেপ্টেম্বরে অ্যান্ড্রয়েড ২.২ প্রকাশের পরে, অ্যান্ড্রয়েড বিল্ড পারফরম্যান্স গতিতে পরীক্ষামূলক বিল্ড ক্যাশে বৈশিষ্ট্য প্রকাশ করেছে gradle, যা এখন অ্যান্ড্রয়েড স্টুডিও ২.৩ ক্যানারি থেকে অফিসিয়াল। (অফিসিয়াল রিলিজ নোট)

এটি একটি নতুন বিল্ড ক্যাশে বৈশিষ্ট্যটি প্রবর্তন করে, যা ডিফল্টরূপে সক্ষম হয়, একই বা ভিন্ন অ্যান্ড্রয়েডের পূর্ববর্তী বিল্ডগুলিতে নির্মিত ফাইল / ডিরেক্টরিগুলি সংরক্ষণ এবং পুনরায় ব্যবহার করে বিল্ড টাইমগুলিতে (পূর্ণ বিল্ডস, ইনক্রিমেন্টাল বিল্ডস এবং তাত্ক্ষণিক রান সহ) গতি বাড়িয়ে তুলতে পারে can প্রকল্পের।

ব্যবহারবিধি:

আপনার gradle.propertiesফাইলে নিম্নলিখিত লাইন যুক্ত করুন

android.enableBuildCache = true
# Set to true or false to enable or disable the build cache. If this parameter is not set, the build cache is enable by default.

ক্যাশে পরিষ্কার করুন:

  • cleanBuildCacheআপনার আরও সহজে বিল্ড ক্যাশে পরিষ্কার করার জন্য একটি নতুন গ্রেডল টাস্ক বলা হয়েছে। আপনি আপনার টার্মিনালে নিম্নলিখিত লিখে এটি ব্যবহার করতে পারেন:

    ./gradlew cleanBuildCache

  • বা আপনি সমস্ত স্টোর স্টোরের অবস্থানটিতে মুছে ফেলে অ্যান্ড্রয়েড স্টুডিও ২.২ এর জন্য ক্যাশে পরিষ্কার করতে পারেন

    C:\Users\<username>\.android\build-cache


7

এই সেটিংস পরিবর্তন করার পরে আমার সংকলনের সময়কাল 10 মিনিট ~ 10 সেকেন্ডে পরিবর্তিত হয়েছে।

ধাপ 1:

সেটিংস (ctrl + Alt + S) ->

নির্মাণ, সম্পাদন, স্থাপনা ->

সংকলক ->

--offlineকমান্ড-লাইন বিকল্প বাক্সে " " টাইপ করুন ।

ধাপ ২:

"সমান্তরালে স্বতন্ত্র মডিউলগুলি সঙ্কলন করুন" চেকবক্সটি দেখুন।

& প্রয়োগ -> ঠিক আছে ক্লিক করুন

এখানে চিত্র বর্ণনা লিখুন

তথ্যসূত্র - https://www.sundoginteractive.com/blog/speed-up-gradle-in-android-studio

অসুবিধা:

আপনি আপনার বিল্ডড্রেডল ফাইলটিতে সনাক্ত করা নির্ভরতার সর্বশেষতম সংস্করণগুলি সরাতে পারবেন না। এটি দ্রুত চালিত হয় কারণ এটি আমদানিকৃত লাইব্রেরির ক্যাশেড স্ন্যাপশট ব্যবহার করে।

গুরুত্বপূর্ণ দ্রষ্টব্য : আপনি যখন অ্যাপ্লিকেশন স্থাপন করবেন তখন এই সেটিংসটি সরিয়ে ফেলুন এবং নির্ভরতার সর্বশেষতম সংস্করণ দিয়ে তৈরি করুন।


6

আমার সাথে সমাধান

File -> Settings -> Build, Execution, Deployment -> Build Tools -> Gradle -> Offline work

গ্রেডল বিল্ডগুলি 8 মিনিট থেকে 3 সেকেন্ডে চলে গেছে।


4

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

প্রাথমিক বিল্ডগুলি এখনও নির্মমভাবে ধীর হতে পারে তবে চলমান অ্যাপ্লিকেশনগুলির পুনঃসূচনাগুলি এখন সাধারণত খুব সহনীয়। আমি একটি সাব-অনুকূল পিসি ব্যবহার করছি: এএমডি কোয়াড-কোর এ 8-7410 সিপিইউ, 8 এমবি র‌্যাম, নন-এসএসডি এইচডি, উইন 10 (এবং, এটি আমার প্রথম স্ট্যাক ওভারফ্লো পোস্টিং ....;)

সেটিংগুলিতে -> গ্রেড:

হ্যাঁ "অফলাইন কাজ" এর জন্য (এটি সম্ভবত সর্বাধিক আমদানি সেটিংস)।

সেটিংগুলিতে -> সংকলক:

হ্যাঁ "সমান্তরালে স্বতন্ত্র মডিউলগুলি সঙ্কলন করুন" এর জন্য (নিশ্চিত না যে এটি বাস্তবে মাল্টিকোর সিপিইউগুলি ব্যবহারে সহায়তা করে কিনা)।

গ্রেডল স্ক্রিপ্টগুলিতে , "build.gradle (মডিউল: অ্যাপ)":

defaultConfig {
    ...
   // keep min high so that restarted apps can be hotswapped...obviously, this is hugely faster.
   minSdkVersion 14
   ...
    // enabling multidex support...does make big difference for me.
    multiDexEnabled true

গ্রেড স্ক্রিপ্টগুলিতেও , "গ্রেডেল.প্রোপার্টি (প্রকল্পের সম্পত্তি)":

org.gradle.jvmargs = -Xmx3048 মি-এক্সএক্স: ম্যাক্স্পার্মসাইজ = 512 মি-এক্সএক্স: + হিপডাম্পঅনআউটআফ মেমরিরির -ডফিল.ইনকোডিং = ইউটিএফ -8

org.gradle.parallel = true org.gradle.daemon = true

অতিরিক্তভাবে , এমুলেটারের পরিবর্তে কোনও দৈহিক ডিভাইসে পরীক্ষা করা আমার পক্ষে ভাল কাজ করছে; একটি ছোট ট্যাবলেট দাঁড়িয়ে যা সুবিধাজনক।


4

আরও একটি কর্মক্ষমতা imporvement টিপ:

অ্যান্ড্রয়েড স্টুডিও 3.0 মধ্যে ডি 8 নামে নতুন নতুন ডেক্স সংকলক অন্তর্ভুক্ত রয়েছে।

"ডেক্স সংকলক বেশিরভাগই আপনার প্রতিদিনের অ্যাপ্লিকেশন বিকাশে হুডের নীচে কাজ করে তবে এটি সরাসরি আপনার অ্যাপ্লিকেশনটির তৈরির সময়, .ডেক্স ফাইলের আকার এবং রানটাইম কর্মক্ষমতাকে প্রভাবিত করে।"

"এবং বর্তমান ডিএক্স সংকলকটির সাথে নতুন ডি 8 সংকলকটির তুলনা করার সময়, ডি 8 দ্রুততর সংকলন করে এবং একই বা আরও ভাল অ্যাপ্লিকেশন রানটাইম পারফরম্যান্সের সময় ছোট .dex ফাইলগুলি আউটপুট করে।"

ডি 8 হ'ল alচ্ছিক - এটি ব্যবহার করুন যা আমাদের প্রকল্পের গ্রেড.প্রপ্রেটিসগুলিতে রাখতে হবে

android.enableD8=true

আরও তথ্য: https://android-developers.googleblog.com/2017/08/next-generation-dex-compiler-now-in.html

পুনশ্চ. এটি আমার বিল্ড সময়কে প্রায় 30% বাড়িয়ে তোলে।


1

এই সেটআপটি আমার জন্য সত্যিই দ্রুত চলেছে (বিল্ডিংয়ের প্রায় 2 সেকেন্ড)

build.gradle

android {

    dexOptions {
        incremental true
        preDexLibraries = false
        jumboMode = false
        maxProcessCount 4
        javaMaxHeapSize "6g"
    }
}

gradle.properties

org.gradle.daemon=true
org.gradle.parallel=true
org.gradle.jvmargs=-Xmx8192M

আমার পিসি:

  • সিপিইউ ইন্টেল (আর) পেন্টিয়াম (আর) সিপিইউ জি 2030 @ 3.00GHz, 3000 মেগাহার্টজ, 2 প্রসেসডোর প্রিন্সিপাল, 2 প্রসেসডোর ল্যাজিকোস
  • x64
  • মাইক্রোসফ্ট উইন্ডোজ 7 পেশাদার
  • (র‌্যাম) 16,0 জিবি

প্রকল্প ফাইল
- সমস্ত স্থানীয় এইচডি তে অবস্থিত


1

নিম্নলিখিত পদক্ষেপগুলি অনুসরণ করুন।

  1. অফলাইন মোড সক্ষম করুন: মুদ্রণ স্ক্রিন নীচে চেক করুন।

    https://i.stack.imgur.com/RF9uG.png

  2. তাত্ক্ষণিক রান সক্ষম করুন: দয়া করে মুদ্রণ স্ক্রিন নীচে চেক করুন।

    https://i.stack.imgur.com/mvHKJ.png

    আপনি যদি তাত্ক্ষণিক রান সম্পর্কে আরও জানতে চান তবে অ্যান্ড্রয়েড বিকাশকারী সাইটটিতে যান।


1

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


0

গ্রেডল সম্পর্কে আমি বিশেষজ্ঞ হতে অনেক দূরে তবে আমার পরিবেশের .gradle / init.gradle এ নিম্নলিখিত লাইন ছিল

gradle.projectsLoaded {
    rootProject.allprojects {
        repositories {
            mavenRepo name: 'libs-repo', url: 'http://guest-vm/artifactory/repo'
        }
    }
}

তবুও কেন এই লাইনটি ছিল সে সম্পর্কে আমার কোনও ধারণা নেই তবে আমি পরিবর্তনের চেষ্টা করছি

gradle.projectsLoaded {
    rootProject.allprojects {
        repositories {
            mavenCentral()
        }
    }
} 

এবং এখন আমি শেষ পর্যন্ত অ্যান্ড্রয়েড স্টুডিও এবং গ্রেডেল বিল্ডইন্ড স্কিমের শপথ না করেই কাজ করতে পারি।


আপনার ক্ষেত্রে শৈল্পিক সম্ভবত গ্রন্থাগারের ক্যাশে হিসাবে ব্যবহৃত হয়েছিল। আপনি শৈল্পিক সার্ভারের সাথে যোগাযোগ করুন যা দেখতে এটি লাইব্রেরি আছে কিনা। যদি হ্যাঁ এটি আপনাকে ফিরিয়ে দেয় অন্যথায় এটি চলে যায় এবং এটিকে ম্যাভেনসেন্ট্রাল থেকে আনতে হবে এবং তারপরে আপনার কাছে ফিরে আসবে।
ফ্যাবিও মার্কোলিনী

0

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

রেট্রোলম্বা অপসারণ এটি আমাদের জন্য স্থির করে। আশা করি এটি কাউকে সাহায্য করবে।


0

এই প্রথম চেষ্টা করুন। এটা আমার ব্যক্তিগত অভিজ্ঞতা।

আমারও একই সমস্যা ছিল। আমি যা করেছিলাম তা কেবল অ্যান্টিভাইরাসকে স্থায়ীভাবে অক্ষম করা হয়েছে (আমার ছিল অ্যাভাস্ট সিকিউরিটি 2015)। অ্যান্টিভাইরাস অক্ষম করার পরে, জিনিসটি ভালভাবে চলছে। গ্রেড সফলভাবে শেষ হয়েছে। এখন থেকে কয়েক সেকেন্ডের মধ্যে গ্রেড সমাপ্ত হচ্ছে (কেবল 5-10 সেকেন্ড সময় নিবে)।


0

হাই আমি জানি এটি খুব দেরি করা উত্তর তবে সম্ভবত
আমার ক্ষেত্রে যেটি আমি ব্যবহার করছিলাম তাতে কাউকে সহায়তা করুন

compile 'com.android.support:support-v4:23.1.1'

আমার অ্যাপ্লিকেশন গ্রেডল নির্ভরতা
কিন্তু আমার একটি লাইব্রেরিতে এটি ছিল

 compile 'com.android.support:support-v4:23.0.1'

সব পরে সর্বশেষতম সংস্করণে পরিবর্তন করার পরে আমার সমস্যার সমাধান হয়েছে।


0

পদক্ষেপগুলি অনুসরণ করা এটি 10 ​​গুণ দ্রুত এবং বিল্ড সময় 90% হ্রাস করবে

প্রথমে নিম্নলিখিত ডিরেক্টরিতে গ্রেডেল.প্রোপার্টি নামে একটি ফাইল তৈরি করুন:

/home/<username>/.gradle/ (Linux)
/Users/<username>/.gradle/ (Mac)
C:\Users\<username>\.gradle (Windows)

এই লাইনটি ফাইলটিতে যুক্ত করুন:

org.gradle.daemon=true
org.gradle.parallel=true

এবং অ্যান্ড্রয়েড স্টুডিওতে এই বিকল্পগুলি পরীক্ষা করে দেখুন

এখানে চিত্র বর্ণনা লিখুন


0

এই সুডো ডিপি কেজি - অ্যাড-আর্কিটেকচার i386 ব্যবহার করুন আপডেট আপডেট করুন সুডো অ্যাপ্লিকেশনটি ইনস্টল করুন libncurses5: i386 libstdc ++ 6: i386 zlib1g: i386

অ্যান্ড্রয়েড স্টুডিও নতুন প্রকল্প তৈরি করতে ব্যর্থ হয়েছে, ক্রীতদাস অভিযোজন প্রক্রিয়াটির জন্য সময় দেওয়ার সময়সীমা শেষ করে


0

একটি তুচ্ছ পরিবর্তন (একটি রেজোলিউজ এক্সএমএল তে) এখনও 10 মিনিট সময় নেয় । @Rivare যেমন তার উত্তরে বলেছে, একটি কমান্ড লাইন বিল্ডটি দ্রুত মচ করছে (এটি 15 সেকেন্ডে নেমেছে )।
উইন্ডোজের কমান্ড লাইন থেকে কমপক্ষে একটি তুচ্ছ বিল্ড দ্রুততর করার কয়েকটি পদক্ষেপ এখানে রয়েছে।

  1. আপনার প্রকল্পের রুটে যান (যেখানে গ্রেডলব্যাট রয়েছে):

    সিডি সি: roid অ্যান্ড্রয়েড \ মাস্কএকটিভিটি

  2. বিল্ডটি কার্যকর করুন :

    গ্রেডলু এসেম্বলডিবগ

  3. সরাসরি ফোন থেকে এপিকে আনইনস্টল করুন (আনইনস্টল করতে এটিকে টেনে আনুন)।

  4. বিল্ডটি শেষ হয়ে গেলে, উইন্ডোজ টাস্ক ম্যানেজার ব্যবহার করে বিআইজি জাভা প্রক্রিয়াটি মেরে ফেলুন।

বা যদি আপনার উইন্ডোজ মেশিনে ইউনিক্স সরঞ্জাম থাকে:

ps

"পিড" এর দেখানো হয়েছে:

kill -9 <pid>
  1. এখন ইনস্টল করুন আপনার এপিকে করুন:

    অ্যাডবি-ডি ইনস্টল সি: \ অ্যান্ড্রয়েড \ মাস্কএকটিভিটি \ অ্যাপ্লিকেশন \ বিল্ড \ আউটপুটস \ এপিকে \ অ্যাপ-ডিবাগ.এপকে



0

কম কনফিগারেশন মেশিনে অ্যান্ড্রয়েড পরিবেশ তৈরি করতে।

  1. ব্রাউজারে অনসেসারি ওয়েব ট্যাবগুলি বন্ধ করুন
  2. অ্যান্টিভাইরাস ব্যবহারকারীদের জন্য, বিল্ড ফোল্ডারটি বাদ দিন যা স্বয়ংক্রিয়ভাবে উত্পন্ন
  3. অ্যান্ড্রয়েড স্টুডিওতে 1.2 গিগাবাইট ডিফল্ট হিপ হ্রাস পেতে পারে 512 এমবি সহায়তা> কাস্টম ভিএম বিকল্পগুলি সম্পাদনা করুন স্টুডিও.ভমোপশনস-এক্সএমএক্স 512 মি লেআউট পারফর্মেন্স দ্রুত হবে

  4. গ্রেডলের জন্য অ্যান্ড্রয়েড স্টুডিওতে মেকের অন্যতম মূল উপাদান ম্যাকই নিশ্চিত এখনই 3.0.০ বিটা সর্বশেষতম

নীচে টিপস কোডের মানকে প্রভাবিত করতে পারে তাই দয়া করে সতর্কতার সাথে ব্যবহার করুন:

  1. স্টুডিওতে পাওয়ার নিরাপদ মোড থাকে যখন এটি চালু করা হয় এটি পটভূমি ক্রিয়াকলাপ বন্ধ করে দেয় যা লিঙ্ক, কোড পরিপূর্ণতা এবং এ জাতীয়।

  2. আপনি যখন প্রয়োজন হয় ম্যানুয়ালি লিঙ্কচেক চালাতে পারেন। / গ্রেডলি লিন্ট

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

  4. গ্রেডল অফলাইন মোড ব্যান্ডউইথ সীমিত ব্যবহারকারীদের বিল্ড নির্ভরতা ডাউনলোডগুলি নিষ্ক্রিয় করতে একটি বৈশিষ্ট্য। এটি ব্যাকগ্রাউন্ড অপারেশন হ্রাস করবে যা অ্যান্ড্রয়েড স্টুডিওর কার্যকারিতা বাড়াতে সহায়তা করবে।

  5. সমান্তরালে একাধিক মডিউল সংকলন করতে অ্যান্ড্রয়েড স্টুডিও একটি অপ্টিমাইজেশন সরবরাহ করে। কম র‌্যাম মেশিনে এই বৈশিষ্ট্যটি সম্ভবত কর্মক্ষমতাতে নেতিবাচক প্রভাব ফেলবে। সংকলক সেটিংস সংলাপে আপনি এটি অক্ষম করতে পারেন।

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