(http://developer.android.com/training/sync-adapters/running-sync-adapter.html)
এই ক্লাসের পূর্ববর্তী অনুশীলনীতে, আপনি শিখেছেন কীভাবে একটি সিঙ্ক অ্যাডাপটর উপাদান তৈরী করতে হয় যা ডাটা ট্রান্সফার কোডের মধ্যে থাকে, এবং কীভাবে অতিরিক্ত উপাদান যোগ করতে হয় যা সিস্টেমের মধ্যে আপনাকে সিঙ্ক অ্যাডাপটর প্লাগ করতে দেয়। একটি অ্যাপ ইনস্টল করার জন্য যা প্রয়োজন এখন আপনার তা আছে যা একটি সিঙ্ক অ্যাডাপটর অন্তর্ভূক্ত করে, কিন্তু আপনি যে কোডগুলো দেখেছেন তার কোন টাই আসলে তা সিঙ্ক অ্যাডাডটর রান করাতে পারে না।
আপনার উচিত একটি সময়সূচির উপর ভিত্তি করে বা কিছু ইভেন্টের পরোক্ষ ফল হিসাবে আপনার সিঙ্ক অ্যাডাপটর রান করার চেষ্টা করা। উদাহরণস্বরূপ, আপনি হয়তো হয় একটি নির্দিষ্ট সময় পর বা দিনের একটি নির্দিষ্ট সময়ে একটি নিয়মিত সময়সুচির (শিডিউল) উপর আপনার সিঙ্ক অ্যাডাপটর রান করতে চাইতে পারেন। আপনি হয়তো আপনার সিঙ্ক অ্যাডাপটর রান করতে চাইতে পারেন যখন ডিভাইসে ডাটা স্টোর করার ক্ষেত্রে কোন পরিবর্তন থাকে তখনও। আপনার উচিত সিঙ্ক অ্যাডাপটর একটি ইউজার একশনের প্রত্যক্ষ ফল হিসাবে রান করাটা পরিহার করা, কারন এটা করার মাধ্যমে আপনি সিঙ্ক অ্যাডাপটর ফ্রেমওয়ার্কের শিডিউল করার সামর্থের পুর্ণ সুবিধা পাবেন না। উদাহরণস্বরূপ বলা যায়, আপনার উচিত আপনার ইউজার ইন্টারফেসের মধ্যে একটি রিফ্রেশ বাটন যুক্ত করার বিষয়টা পরিহার করা।
আপনার সিঙ্ক অ্যাডাপটর রান করার জন্য নিচের কোন একটি বেছে নিতে পারেন:
যখন সার্ভার ডাটা পরিবর্তন করে
একটি সার্ভার থেকে আসা মেসেজের প্রতিক্রিয়া হিসাবে সিঙ্ক অ্যাডাপটর রান করা, নির্দেশ করে যে সার্ভার ভিত্তিক ডাটা পরিবর্তন হয়েছে। এই পছন্দ আপনাকে কার্যসম্পাদনের কোন রূপ পরিবর্তন ছাড়াই বা সার্ভার পোল করার মাধ্যমে ব্যাটারির আয়ুষ্কাল অপচয় করা ছাড়াই সার্ভার থেকে ডিভাইসে ডাটা রিফ্রেশ করতে দেয়
যখন ডিভাইস ডাটা পরিবর্তন করে
একটি সিঙ্ক অ্যাডডাপটর রান করা যখন ডিভাইসে ডাটা পরিবর্তন হয়। এই পছন্দ আপনাকে ডিভাইস থেকে পরিবর্তিত ডাটা সার্ভারে পাঠাতে দেয়, এবং বিশেষভাবে উপকারী হয় যদি আপনার নিশ্চিত করার প্রযোজন হয় যে সার্ভারের সব সময় সর্বশেষ তথ্য রয়েছে। এই পছন্দ বাস্তবায়নের ক্ষেত্রে অকপট যদি আপনি আপনার কনটেন্ট প্রভাইডারে যথাযথই ডাটা স্টোর করেন। যদি আপনি একটি স্টাব কনটেন্ট প্রভাইডার করতে থাকেন, ডাটা পরিবর্তন খুজে বের করাটা কঠিন হয়ে যেতে পারে।
যখন সিস্টেম একটি নেটওয়ার্ক মেসেজ পাঠায়
একটি সিঙ্ক অ্যাডডাপটর রান করা যখন অ্যান্ড্রয়েড সিস্টেম একটি নেটওয়ার্ক মেসেজ পাঠায় যা ঞঈচ/ওচ কানেকশন ওপেন ধারন করে: এই মেসেজ হচ্ছে নেটওয়ার্কিং ফ্রেমওয়ার্কের একটি মৌলিক অংশ। এই পছন্দ ব্যবহার করাটা সিঙ্ক অ্যাডাপটর স্বয়ংক্রিয়ভাবে রান করার একটা উপায় যা বিরতী (ইন্টারভ্যাল)-ভিত্তিক সিঙ্ক অ্যাডাপটর রানের সাথে এটার একত্রিত ব্যবহার বিবেচনা করুন।
নিয়মিত বিরতীতে (ইন্টারভ্যাল)
আপনি যে বিরতী (ইন্টারভ্যাল) পছন্দ করেছেন তার সমাপ্তির পরে একটি সিঙ্ক অ্যাডডাপটর রান করা বা এটাকে প্রতিদিন একটি নির্দিষ্ট সময়ে রান করুন।
প্রয়োজন অনুসারে
একজন ইউজারের একশনের জবাবে সিঙ্ক অ্যাডডাপটর রান করা। যাহোক, সবচেয়ে ভালো ইউজার এক্সপেরিয়েন্স সরবরাহ করতে প্রাথমিকভাবে আপনার আরও স্বয়ংক্রিয় (অটোমেটেড) পছন্দের উপর নির্ভর করা উচিত। স্বয়ংক্রিয় (অটোমেটেড) পছন্দ ব্যবহার করার মাধ্যমে আপনি ব্যাটারি এবং নেটওয়ার্ক রিসোর্স সংরক্ষণ করে।
এই অনুশীলনীর পরবর্তীতে প্রতিটা পছন্দের বিষয়ে বিস্তারিত ভাবে আলোচনা করা হবে।