আমি কীভাবে আমার রিলিজ কনফিগারেশনে "স্ক্রিপ্ট রান" বিল্ড ফেজ সীমাবদ্ধ করতে পারি?


138

আমার কাছে একটি শেল স্ক্রিপ্ট রয়েছে যা আমি আমার টার্গেটের বিল্ড পর্বের শেষে চালাতে চাই। তবে, আমি এই স্ক্রিপ্টটি কেবল তখনই চালিত করবো যখন আমি প্রকাশের কনফিগারেশনটি তৈরি করি । কিভাবে এই কাজ করা যেতে পারে? ধন্যবাদ!

উত্তর:


295
if [ "${CONFIGURATION}" = "Release" ]; then
  echo Do something really release-like
fi

স্ক্রিপ্টটি প্রতিটি কনফিগারেশনের শেষে চলবে, তবে কনফিগারেশনটি রিলিজ না করা হলে এটি এই ক্ষেত্রে কিছুই করবে না (এটি যা কিছু করে তা ধরে নিলে টেস্ট ব্লকের মধ্যে রয়েছে)।


1
আমি সবেমাত্র আবিষ্কার করেছি এটি বহু-শব্দযুক্ত কনফিগারেশন নামের সাথে কাজ করে না। এটি "রিলিজ" দিয়ে কাজ করে তবে "অভ্যন্তরীণ বিটা" দিয়ে কাজ করে না।
হেডিন

4
@ হেডিন - এটি কেবল বাশ; যদি আপনার একাধিক-শব্দ ভেরিয়েবল থাকে, আপনার উদ্ধৃতিগুলিতে ভেরিয়েবলটি ঘিরে রাখা উচিত। সুতরাং {ON কনফিগারেশন "" $ ON কনফিগারেশন} "হয়ে যায়। আমি অন্তর্ভুক্ত উত্তর আপডেট করব।
জেসন কোকো

15
আমার কাছে 'ডিবাগ', 'রিলিজ' (উপকরণগুলির জন্য), 'অ্যাডহক' এবং 'অ্যাপ স্টোর' কনফিগারেশন রয়েছে (বিভিন্ন কোড স্বাক্ষরকারী সহ) তাই আমি এটির জন্য এটি পরিবর্তন করেছি if [ "${CONFIGURATION}" != "Debug" ]; then...
নিকোলাস মিয়ারি

1
যদি শর্তের জন্য আমি .pch ফাইলে সঞ্চিত # ডিফাইন সত্য / মিথ্যা ব্যবহার করতে চাই .. তবে আমি কীভাবে এটি স্ক্রিপ্ট কোডটিতে উল্লেখ করব?
নিউটন_গুইমা

2
এই একই জিনিস প্রাক প্রসেসর পতাকা সঙ্গে সম্পন্ন করা যাবে?
জাস্টিন ভ্যালি

15

এটি করার সবচেয়ে সহজ উপায় হ'ল চেকবক্সটি "ইনস্টল করার সময় কেবল স্ক্রিপ্ট চালান" checking



4
"সত্যিকারের ডিভাইসে ডিবাগ-ইনস্টল করা (এক্সকোড থেকে বিল্ড ও রান করুন)" ইনস্টল করা "হিসাবে গণ্য করা হয় না The stackoverflow.com/questions/5913199/...
darkheartfelt

2
আপনি আপনার অ্যাপ্লিকেশনটিকে Releaseসংরক্ষণাগার না করে কনফিগারেশনে তৈরি করতে চাইলে এটি কাজ করবে না । প্রশ্নটি ছিল Releaseকনফিগারেশন সম্পর্কে স্পষ্টভাবে ।
লেগোনাফটিক
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.