Charles প্রক্সি সেট-আপ করা

প্ল্যাটফর্ম বেছে নিন: Android Android (Legacy)

Android N বা তার পরবর্তী ভার্সনে, নিম্নলিখিত ধাপগুলি অনুসরণ করা হলে তবেই Charles প্রক্সিতে বিজ্ঞাপন কল দেখা যায়:

  1. মোবাইল ডিভাইসে Google Play পরিষেবা আপডেট করুন।
  2. মোবাইল ডিভাইসে নেটওয়ার্ক ট্রেসিং চালু করুন।
  3. আপনার ডিভাইসে Charles SSL সার্টিফিকেট ইনস্টল করুন এবং প্রক্সি সেট-আপ করুন।
  4. আপনার মোবাইল অ্যাপের জন্য SSL প্রক্সি চালু করুন।

মোবাইল ডিভাইসে Google Play পরিষেবা আপডেট করা

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

লেটেস্ট ভার্সনে Google Play পরিষেবা চেক ও আপডেট করতে, সাইড মেনু ব্যবহার করুন।

ফিজিক্যাল মোবাইল ডিভাইসের (ফোন বা ট্যাবলেট) জন্য, আপনি Google Play সার্চ করতে পারেন অথবা সরাসরি Google Play খুলতে এই লিঙ্ক অনুসরণ করতে পারেন।

মোবাইল ডিভাইসে নেটওয়ার্ক ট্রেসিং চালু করুন

নেটওয়ার্ক ট্রেসিং চালু করতে, আপনার ডিভাইসে ডেভেলপার বিকল্প চালু করুন। আরও তথ্যের জন্য, ডিভাইসে ডেভেলপার বিকল্প কনফিগার করুন দেখুন।

Google সেটিংস অ্যাপ খুলে Google > বিজ্ঞাপন > বিজ্ঞাপনের জন্য ডিবাগ লগিং চালু করুন বিকল্প বেছে নিন। আরও জানতে, নেটওয়ার্ক ট্রেসিং দেখুন।

আপনার ডিভাইসে Charles SSL সার্টিফিকেট ইনস্টল করুন এবং প্রক্সি সেট-আপ করুন

আপনার অ্যাপের জন্য Charles-কে প্রক্সি হিসেবে ব্যবহার করতে, আপনার কম্পিউটারে Charles ডাউনলোড ও ইনস্টল করুন।

সার্টিফিকেটটি .pem বা .cer ফাইল হিসেবে সেভ করতে, সহায়তা > SSL প্রক্সি করা > Charles রুট সার্টিফিকেট সেভ করুন বিকল্প বেছে নিন। আপনার ডিভাইসে সার্টিফিকেট ইনস্টল করতে, সহায়তা > SSL প্রক্সি করা বিকল্পে গিয়ে প্রম্পট অনুসরণ করুন।

আপনি যদি প্রক্সি সহ Android এমুলেটর ব্যবহার করেন, তাহলে প্রক্সি অ্যাড্রেস http://127.0.0.1-এ সেট করুন। প্রক্সি > প্রক্সি সেটিংস থেকে Charles-এ দেখানো মান অনুযায়ী পোর্ট সেট করুন।

আপনি ফিজিক্যাল ডিভাইস ব্যবহার করলে, আপনার কম্পিউটারের মতো একই ওয়াই-ফাই নেটওয়ার্কে ডিভাইসটি কানেক্ট করুন। প্রক্সি সেট-আপ করতে, আপনার ডিভাইসের উন্নত নেটওয়ার্ক সেটিংস খুলুন। আরও তথ্যের জন্য, আপনার Pixel ফোনে ওয়াই-ফাই নেটওয়ার্কে কানেক্ট করুন দেখুন। Charles-এ, আপনার IP অ্যাড্রেস খুঁজে পেতে সহায়তা > স্থানীয় IP অ্যাড্রেস বিকল্প বেছে নিন। আপনার ডিভাইসে, Charles থেকে IP অ্যাড্রেস এবং Charles পোর্ট প্রক্সি হিসেবে লিখুন।

আপনার মোবাইল অ্যাপের জন্য SSL প্রক্সি চালু করা

Charles যাতে আপনার মোবাইল অ্যাপের SSL ট্রাফিক ইন্টারসেপ্ট করতে পারে, তার জন্য আপনার অ্যাপ যে SSL সার্টিফিকেটকে বিশ্বাস করতে পারে তা ঘোষণা করুন। আপনি ব্যবহারকারীর ইনস্টল করা সার্টিফিকেট বিশ্বাস করতে পারেন অথবা আপনার অ্যাপে র রিসোর্স হিসেবে চার্লস সার্টিফিকেট এম্বেড করতে পারেন। যেমন, আপনি res/raw/charles_cert.pem ফাইলে সার্টিফিকেট সেভ করতে পারেন।

প্রথমে, আপনার res/xml/network_security_config.xml ফাইলে নেটওয়ার্ক নিরাপত্তা কনফিগারেশন-এর জন্য নতুন XML রিসোর্স ফাইল যোগ করুন:

<network-security-config>
   <debug-overrides>
       <trust-anchors>
           <!-- Trust Charles SSL certificate stored in res/raw -->
           <certificates src="@raw/charles_cert" />
           <!-- Trust user added CAs while debuggable only -->
           <certificates src="user" />
       </trust-anchors>
   </debug-overrides>
</network-security-config>

এরপরে, নেটওয়ার্ক নিরাপত্তা কনফিগারেশন ব্যবহার করতে AndroidManifest.xml ফাইল আপডেট করুন।

<?xml version="1.0" encoding="utf-8"?>
<manifest ... >
    <application ...
                 android:networkSecurityConfig="@xml/network_security_config"
                 ... >
        ...
    </application>
</manifest>

এর পরে, আপনি মোবাইল অ্যাপ লঞ্চ করতে এবং Charles লগে বিজ্ঞাপনের অনুরোধ দেখতে পারবেন।