গুগল প্লে থেকে কোনও ব্যবহারকারী দ্বারা ডাউনলোড করা অ্যাপগুলির (অর্থ প্রদান / বিনামূল্যে) তালিকা কীভাবে পাবেন?


121

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

আমি অনুরূপ অ্যাপ তৈরি করতে চাইলে এটি কীভাবে চলছে তা জানার চেষ্টা করছি, তবে ডাউনলোড করা ফ্রি অ্যাপগুলির জন্য।

তবে, API গুলি সম্পূর্ণ তালিকা পেরিয়ে যাওয়ার পরেও, তথ্যটি পুনরুদ্ধারের জন্য কোন ওআউথ এপিআই স্কোপ ব্যবহার করা হয়েছিল তা আমি খুঁজে পাচ্ছি না ।

গুগল সাইন ইন অ্যান্ড্রয়েড মার্কেটে অ্যাক্সেসের জন্য জিজ্ঞাসা করছে


সম্পাদনা: আমি এই প্রশ্নটির উপরে একটি নতুন অনুগ্রহ দিচ্ছি, যেমনটি আমি এখানে জিজ্ঞাসা করেছি অনুরূপ একটি প্রশ্ন দ্বারা পরামর্শ দেওয়া হয়েছিল , এবং কারণ এখানে এবং সেখানে আমি কীভাবে এটি করব এবং এর কী করা যায় তার সম্পর্কে সত্যিকারের উত্তর দেখতে পাচ্ছি না what এর সাথে.

আমি প্রশ্নগুলি একাধিক টুকরোতে পরিমার্জন করতে চাই:

  1. ক্রয়কৃত অ্যাপগুলির তথ্য পাওয়ার জন্য এপিআই কী ব্যবহার করা যায়? আমি এটি সম্পর্কে কোথায় পড়তে পারি? এটি কীভাবে করবেন তার একটি পূর্ণ ও কার্যকারী উদাহরণটি দয়া করে দেখান।

  2. এটা আরও কি করতে পারেন? সম্ভবত অনুসন্ধান সম্পাদন করবেন? সম্ভবত ইনস্টল করা বিনামূল্যে অ্যাপ্লিকেশনগুলি দেখান? সম্ভবত তারা ইনস্টল এবং আনইনস্টল করার সময়? আর সেই অ্যাপসের ক্যাটাগরি?

  3. এই এপিআই ব্যবহারের জন্য কি কোনও বিশেষ প্রয়োজনীয়তা রয়েছে?


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

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


এই সংগ্রহস্থলের ব্যবহার করে দেখুন github.com/googlesamples/android-play-publisher-api/tree/master/...
Webserveis

আমি স্যাম্পল অ্যাপ্লিকেশন লঞ্চারটি দেখব। এটি ফোনে কী অ্যাপস ডাউনলোড হয় তা জানে।
danny117

@ অ্যান্ড্রয়েড বিকাশকারী: আমি ডিস্কিপ্লেশন দ্বারা এপি কে Purchase Appsফাইল বিশ্লেষণ করেছি । এটি ক্রয়কৃত অ্যাপগুলির তালিকা পেতে কোনও এপিআই কখনও ব্যবহার করেনি। এটির পন্থাটি আমরা জানি যা প্লে স্টোর ওয়েব পৃষ্ঠার এইচটিএমএল সামগ্রীতে পার্স করছে। এখানে এই কোডটির
অ্যামিনোগ্রাফি

@ এমিনোগ্রাফি সুতরাং এটি এটি ব্যবহারকারীর জন্য কীভাবে পাবে? সর্বোপরি, এটি ব্যবহারকারীর গুগল অ্যাকাউন্টের ডেটা নেওয়া দরকার ... এটি কেবল প্লে স্টোর অ্যাপ্লিকেশনগুলিতে অ্যাক্সেস করার পক্ষে যথেষ্ট নয় ... এটি প্রদত্ত অনুমতি নিয়ে কী করে?
অ্যান্ড্রয়েড বিকাশকারী

@ অ্যান্ড্রয়েড ডেভেলপার: প্রদত্ত সমস্ত তথ্য Purchased Appsপ্লেস্টোর ওয়েব সামগ্রী থেকে উদ্ধার করা যেতে পারে। দুর্ভাগ্যক্রমে আমার কাছে গুগল প্লে থেকে একটি অ্যাপ্লিকেশন কেনার অ্যাক্সেস নেই। আপনি যদি আমাকে কোনও অ্যাকাউন্ট ভাগ করে থাকেন যার কেনা অ্যাপটি রয়েছে, আমি আপনার জন্য একটি নমুনা কোড বিকাশ করতে পারি।
অ্যামিনোগ্রাফি

উত্তর:


51

সমস্যা সমাধান করা হয়। শোষণ বন্ধ করা হয়েছে।

অ্যান্ড্রয়েডের পূর্বরূপ সংস্করণে লগ ইন হওয়ার কারণে আমরা এই বাগটিটি বন্ধ করব। সাম্প্রতিক সর্বজনীন প্রকাশে (অ্যান্ড্রয়েড কিউ) যদি সমস্যাটি এখনও প্রাসঙ্গিক এবং পুনরুত্পাদনযোগ্য হয় তবে দয়া করে একটি বাগেরপোর্ট ক্যাপচার করুন এবং https://source.android.com/setup/contribute/report-bugs এ বাগটি লগ করুন । যদি পরবর্তী 14 দিনের মধ্যে কোনও উত্তর না পাওয়া যায় তবে এই সমস্যাটি বন্ধ হয়ে যাবে। বুঝবার জন্য আপনাকে ধন্যবাদ.


সর্বশেষ আপডেট:

এটি একটি বাগ এবং পরবর্তী আপডেটে গুগল এটিকে সম্বোধন করবে।

আমরা ভবিষ্যতের একটি রিলিজ বিবেচনার জন্য এই বিষয়টি স্থগিত করেছি। অ্যান্ড্রয়েডকে আরও ভাল করার জন্য আপনাকে ধন্যবাদ


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

androidmarketএপিআই, একটি কাস্টমাইজড হবে API ডেভেলপার দ্বারা লিখিত। এটি জনসাধারণের জন্য উপলব্ধ নয়।

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

অ্যাক্সেসের ক্ষেত্রে Full Account Access, আমি নিশ্চিত নই যে এই বিকাশকারীরা এটি কীভাবে অর্জন করেছেন।

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

দেখুন Udinic / SyncAdapter প্রমাণীকরণ

আপনার মন্তব্যের জবাব দিতে:

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


এই অ্যাপসটি আসলে কীভাবে কাজ করে তা আমি আপনাকে বলতে পারি না। তাদের বিভিন্ন প্রয়োগও থাকতে পারে (যদি না তারা পর্দার পিছনে সহযোগী প্রচেষ্টা না করে তবে তারা অবশ্যই আলাদা হবে)।

এক অনুমান। প্রথমে comGoogle.android.gms.auth.api.signin এর সাথে GoogleSignInA অ্যাকাউন্ট ব্যবহার করুন ।

সুযোগ মঞ্জুর করার জন্য একটি সংজ্ঞা রয়েছে , অ্যাপ্লিকেশনটির অনুমোদনের পরিমাণটি নির্ধারণ করতে।

ব্যবহার requestScopes () ,

সর্বজনীন স্ট্যাটিক ফাইনাল স্ট্রিং প্রোফাইল

... / এটি আপনার ওয়েব অ্যাপ্লিকেশনটিকে এয়ার অ্যান্ড্রয়েড অ্যাপ্লিকেশন ইনস্টল করে access

জন্য উদাহরণস্বরূপ :

GoogleSignInOptions gso =
        new GoogleSignInOptions.Builder(GoogleSignInOptions.DEFAULT_SIGN_IN)
            .requestEmail().
            .requestScopes(new Scope("https://www.googleapis.com/auth/contacts.readonly"))
            .build();

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

প্যাকেজ ম্যানেজার বর্তমানে ডিভাইসে ইনস্টল থাকা সমস্ত অ্যাপের একটি তালিকা পুনরুদ্ধার করবে।
প্যাকেজআইএনফো অ্যাপ্লিকেশন সম্পর্কে বিশদ সরবরাহ করে।
INSTALL_REASON_USER ব্যবহারকারীদের দ্বারা সক্রিয়ভাবে ইনস্টল করা অ্যাপ্লিকেশনগুলিকে ফিল্টারও করবে।

আপনি com.google.firebase.appindexing এবং লগ ব্যবহারকারী ক্রিয়াগুলি দেখতে চাইতে পারেন । বিভিন্ন ক্রিয়াকলাপ ট্র্যাক করা যায়।

ব্যবহারকারীদের অ্যাকাউন্টের ইতিহাস https://myactivity.google.com/myactivity এ পাওয়া যায় ।

সহায়ক লিঙ্কটি হল OAuth 2.0 খেলার মাঠ


নোড ব্যবহার করে এই গিথুব রেপো নোড-গুগল- প্লেটি বর্তমান এবং Google Play API গুলি কল করবে। যেমন সংরক্ষণাগারটি বাজারের জায়গাগুলি অনুসন্ধানের জন্য "আনঅফিসিয়াল" এপিআই, অ্যান্ড্রয়েড-মার্কেট-এপিআই হিসাবে ব্যবহৃত হয়েছিল ।


অ্যাপ্লিকেশন ঘ

অ্যাপ্লিকেশন দাবি নিম্নলিখিত অনুমতি ব্যবহার করার জন্য:

সংস্করণ 2.1.8 অ্যাক্সেস করতে পারে:
$ অ্যাপ্লিকেশন কেনা ses

অন্যান্য

  • ইন্টারনেট থেকে তথ্য গ্রহণ
  • নেটওয়ার্ক সংযোগ দেখুন
  • সম্পূর্ণ নেটওয়ার্ক অ্যাক্সেস
  • ডিভাইসে অ্যাকাউন্টগুলি ব্যবহার করুন
  • ডিভাইস ঘুম থেকে প্রতিরোধ করুন
  • গুগল পরিষেবা কনফিগারেশন পড়ুন

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

আমি অনুমতিগুলি যাচাই করেছিলাম - কোনও সেট নেই। সুতরাং আপনার প্রশ্নের মধ্যে প্রদর্শিত কেবলমাত্র পপ আপটি গ্রহণ করা দরকার।


অ্যাপ্লিকেশন 2

আপনি যে অন্যান্য অ্যাপ্লিকেশনটিকে উল্লেখ করেছেন একই জিনিসটি কী অ্যাক্সেস করা হচ্ছে সে সম্পর্কে আরও সুস্পষ্ট।

আমার প্রদত্ত অ্যাপস

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


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


10

এর মধ্যে একটির ক্ষেত্রে (মাই পেইড অ্যাপ্লিকেশন) নেটওয়ার্ক ট্র্যাফিক চেক করার পরে এটি স্পষ্টতই স্পষ্ট যে এটি প্রদত্ত অ্যাপ্লিকেশনগুলির তালিকা পুনরুদ্ধার করতে স্টোরের অ্যাকাউন্ট পৃষ্ঠাটি ব্যবহার করে না। এখন, এটি যে প্রক্রিয়াটি ব্যবহার করে তা হ'ল গুগল ক্রোম বর্তমানে একই প্রক্রিয়া, এবং ব্যবহৃত সময়ের মধ্যে পোকেমন গমন করে।

সংক্ষেপে, এগুলি করার পদক্ষেপগুলি নিম্নরূপ:

  1. লগইন : উল্লিখিত প্রোগ্রামটি প্রথম পদক্ষেপে যা করে তা হ'ল ব্যবহারকারীকে লগ ইন করা এবং ব্যবহারকারীর অ্যাক্সেস টোকনে অ্যাক্সেস পাওয়া। এটি করতে, এটি android.accounts.AccountManager.getAuthToken()পদ্ধতিটি ব্যবহার করে । (আরও দেখুন: অ্যাকাউন্টম্যানেজার ) তবে টোকেন স্কোপ oauth2:https://www.google.com/accounts/OAuthLoginহিসাবে অনুরোধ করা হয়েছে। গুগলের OAth2 ডকুমেন্টেশনের উপর ভিত্তি করে এটি লক্ষ্য করা গুরুত্বপূর্ণ যে এই সুযোগটি বৈধ নয়; তবে এটি Google OAuth v1 এর জন্য একটি বৈধ সুযোগের মতো বলে মনে হচ্ছে।

  2. সদ্য পুনরুদ্ধার করা অ্যাক্সেস টোকেনকে একটিতে রূপান্তর করাubertoken : এখন, আসলে যা ubertokenকরা উচিত, তা অজানা এবং এটি সম্পর্কে কোনও অফিসিয়াল ডকুমেন্টেশন নেই। তবে এটি ব্যবহারকারীর জন্য লগইন করার জন্য ক্রোম ব্রাউজার দ্বারা ব্যবহার করা বন্যটিতে দেখা গিয়েছিল। এটি https://accounts.google.com/OAuthLogin?source=ChromiumBrowser&issueuberauth=1পৃষ্ঠা অনুরোধ করে সম্পন্ন করা হয় ।

  3. ubertokenওয়েবসাইট সেশনে রূপান্তর করা : পরবর্তীতে, নতুন তৈরি ubertokenকরা ব্যবহার করে https://accounts.google.com/MergeSessionএপিআই এন্ডপয়েন্টটি ব্যবহার করে কোনও ওয়েবসাইট সেশন পাওয়া সম্ভব । এই পদক্ষেপের পরে, অ্যাপ্লিকেশনটি মূলত সমস্ত ব্যক্তিগত পৃষ্ঠাগুলি লোড করতে সক্ষম যা আপনি লগ ইন করার সময় আপনার ব্রাউজার ব্যবহার করে খুলতে পারেন; পেমেন্ট সেটিংস সহ কয়েকটি বিশেষ পৃষ্ঠা ব্যতীত।

  4. প্রদত্ত অ্যাপ্লিকেশনগুলির তালিকা পুনরুদ্ধার করা হচ্ছে:https://play.google.com/store/account পৃষ্ঠাটির অনুরোধ এবং পার্সিং ।

' প্যাকেট ক্যাপচার ' দ্বারা আটককৃত অ্যাপ্লিকেশনটির ট্র্যাফিকটি নিম্নলিখিত :

বন্দী ট্র্যাফিক

ছবিটিতে এটি স্পষ্টভাবে দৃশ্যমান হিসাবে, ক্রম ডেস্কটপ সহ আমি যখন সাধারণত আমার পিসিতে স্টোরের অ্যাকাউন্ট পৃষ্ঠা খুলি তখন শেষ ফলাফলটি আমার কাছে সাদৃশ্য থাকে: ক্রোম দেখার উত্স

পার্শ্ব নোট :

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

আকর্ষণীয় নিবন্ধ :

পোকেমন টোকেন

গুগল ক্রোমের OAuth2 টোকেনগুলি অনুসন্ধান করা


1
এটি কীভাবে কাজ করে তা দেখতে এবং আমার জিজ্ঞাসা করা প্রশ্নের উত্তরগুলির জন্য আপনি কী একটি সম্পূর্ণ নমুনা দেখাতে পারেন? যেমনটি আমি লিখেছি, আমি প্রতিটি অ্যাপ্লিকেশন সম্পর্কিত বিভিন্ন তথ্য পেতে চাই: দাম, কখন কিনে নেওয়া ইত্যাদি ইত্যাদি ... কী ফ্রি অ্যাপসের তালিকা পাওয়া সম্ভব?
অ্যান্ড্রয়েড বিকাশকারী

3

আপনার যদি রুট অ্যাক্সেস থাকে তবে আপনি অ্যাক্সেস করতে পারেন /data/data/com.android.vending/databases/library.db

OnePlus3T:/data/data/com.android.vending/databases
-rw-rw---- 1 u0_a2 u0_a2 229376 2018-12-26 18:01 library.db

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

মালিকানা সারণী পরীক্ষা করুন, এতে সমস্ত তথ্য রয়েছে।

ownership (account STRING, library_id STRING, backend INTEGER, doc_id STRING, doc_type INTEGER, offer_type INTEGER, document_hash INTEGER, subs_valid_until_time INTEGER, app_certificate_hash STRING, app_refund_pre_delivery_endtime_ms INTEGER, app_refund_post_delivery_window_ms INTEGER, subs_auto_renewing INTEGER, subs_initiation_time INTEGER, subs_trial_until_time INTEGER, inapp_purchase_data STRING, inapp_signature STRING, preordered INTEGER, owned_via_license INTEGER, shared_by_me INTEGER, sharer_gaia_id TEXT, shareability INTEGER, purchase_time INTEGER, PRIMARY KEY (account, library_id, backend, doc_id, doc_type, offer_type))

1

অনানুষ্ঠানিক গুগল এপিআইগুলির সাথে লেনদেন করা অবিশ্বাস্যভাবে জটিল অঞ্চল। এটি কাজ করা সম্ভব হতে চলেছে , তবে আমি কেবল এটিই বলব। আপনার নিজের ঝুঁকিতে এগিয়ে চলুন।

প্রথমে আপনি যা করতে যাচ্ছেন তা হ'ল গুগল প্লে লেখক টোকেন । এটি বেশ কয়েকটি উপায়ে করা যেতে পারে তবে তারা ক্রয়কৃত অ্যাপ্লিকেশনগুলিতে এটি কীভাবে করে তা এখানে:

public static String getAuthToken(Activity activity, String userEmail) {

    AccountManager accountManager = AccountManager.get(activity);
    Account userAccount = new Account(userEmail, "com.google");

    Bundle options = new Bundle();
    options.putBoolean("suppressProgressScreen", true);

    String token;

    try {
      Bundle result = accountManager
        .getAuthToken(userAccount, "androidmarket", options, activity, null, null)
        .getResult();
      token = result.getString("authtoken");
    } catch (OperationCanceledException e) {
      Log.d(TAG, "Login canceled by user");
      return null;
    } catch (IOException | AuthenticatorException e) {
      Log.e(TAG, "Login failed", e);
      return null;
    }

    return token;
}

এখানে কয়েকটি বিষয় লক্ষণীয়:

  • উপরের কোডটি অবিচ্ছিন্নভাবে চালানো উচিত । আমি আরএক্সজাবাকে প্রস্তাব দিচ্ছি, তবে একটি অ্যাসিঙ্কটাস্ক কাজ করবে।
  • আপনি যে অ্যাকাউন্টটি ব্যবহার করতে চান তার জন্য আপনাকে অবশ্যই একটি ইমেল সরবরাহ করতে হবে। আমি বিশদটি আপনার কাছে ছেড়ে দেব তবে এটি ব্যবহার করা মোটামুটি সহজ AccountManager

আপনার কাছে লেখক টোকেন থাকার পরে, আপনি এখন যে কোনও গুগল প্লে স্টোর শেষ পয়েন্টটি অ্যাক্সেস করতে পারবেন । ক্রয় করা অ্যাপ্লিকেশনগুলির দ্বারা ব্যবহৃত প্রধানটি হ'ল https://android.clients.google.com/fdfe/purchaseHistory। আপনার আগ্রহী হতে পারে এমন আরেকটি হ'ল https://android.clients.google.com/fdfe/details?doc=(package name)( এপিএফ ফেচ কোড থেকে )। আরও কিছু বিশ্লেষণ সহ একটি পৃষ্ঠা এখানে। আপনি যদি এই এপিআইগুলিতে একটি অনুরোধ করেন তবে আপনাকে বেশ কয়েকটি শিরোনাম সরবরাহ করতে হবে:

  • Authorization - "GoogleLogin auth=(your auth token)"
  • User-Agent - "Android-Finsky/6.4.12.C-all%20%5B0%5D%202744941 (api=3,versionCode=80641200,sdk=" + VERSION.SDK_INT + ",isWideScreen=0)";
  • X-DFE-Device-Id- আপনার ডিভাইসের গুগল পরিষেবাদি ফ্রেমওয়ার্ক আইডি, বিজ্ঞাপনআইডক্লিয়েন্ট থেকে প্রাপ্ত ।
  • X-DFE-Client-Id - "am-android-google"
  • Accept-Language- ডিভাইসের ভাষা কোড, যেমন "en"

এখন, আপনার প্রতিক্রিয়াটি পার্স করা দরকার । এখানে জিনিসগুলি জটিল হয়ে ওঠে get এই এপিআইগুলি একটি প্রোটোবুফ হিসাবে এনকোড করা একটি বার্তা দেয় , সুতরাং আপনার স্কিমা না থাকলে এটি অবশ্যই বাইনারি ডেটা (অবশ্যই, কেবল গুগলেরই নেই) has তত্ত্বের বিষয়ে এটির একটি উপায় হ'ল গুগল প্লে স্টোর অ্যাপ্লিকেশনটি ছড়িয়ে ফেলা এবং জেএডএক্সের মতো একটি সরঞ্জাম দিয়ে তাদের উত্পন্ন প্রোটোবুফ মডেলগুলি পুনরায় ব্যবহার করা ।

দুর্ভাগ্যক্রমে, আমি এটি চেষ্টা করেছি এবং এটি সত্যিই কাজ করে না। প্রোটোবুফ মডেল ক্লাসগুলি একটি স্ট্যান্ডার্ড ডিকম্পাইলারের জন্য খুব জটিল। আপনি যা ব্যবহার করতে পারেন তা হ'ল পিবিটিকে নামের একটি সরঞ্জাম । আপনি গুগল প্লে স্টোর 6.1.12 APK এ আদর্শভাবে এটি চালাতে চাইবেন, যেহেতু তারা প্রোগার্ড ব্যবহার শুরু করার আগে এটি শেষ সংস্করণ। মনে রাখবেন যে এই প্রোগ্রামটির স্ক্রিপ্টে দুটি ত্রুটি রয়েছে যা এটি চালানোর আগে সংশোধন করা দরকার: গুই.পি- তে পরিবর্তন 'extracto'করা 'extractor'এবং জার_সেক্সট্রেক্ট.পি এর 500 লাইনে দৃser় বিবৃতি অপসারণ করা ।

এখন, এর সমস্ত প্রতিক্রিয়া শ্রেণীর .poto ফাইল হিসাবে আউটপুট করা উচিত। এসসিআর / মেইন নামে একটি ফোল্ডার তৈরি করুন protoএবং এতে সম্পূর্ণ উত্পন্ন 'কম' ডিরেক্টরিটি টানুন। এর অধীন নয় এমন সমস্ত কিছুই আপনি মুছতে পারেন com/google/android/finsky/protos। প্রোটোবুফ লাইট প্লাগইন সহ গ্রেডেল সেটআপ করার জন্য অনলাইনে নির্দেশাবলী অনুসরণ করুন।

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

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


সম্পর্কে AccountManager, আপনি কি নিশ্চিত যে এটি এখনও উপলব্ধ? আমি মনে করি আজকাল গুগল কেবলমাত্র ব্যবহারের বিকল্প দেয় AccountPicker(যেমন এখানে: stackoverflow.com/a/26888259/878126 )। তবে কীভাবে বাকিটা পারফর্ম করব? আপনি এটি পরীক্ষা করেছেন? এটা আপনার জন্য কাজ কি? দয়া করে এটির জন্য কোডটি ভাগ করুন। এ কারণেই আমি এটিকে কাজ করে দেখার জন্য একটি অনুগ্রহ নির্ধারণ করেছি ...
অ্যান্ড্রয়েড বিকাশকারী

হ্যাঁ অ্যাকাউন্টপিকার আসলে একটি ভাল ধারণা। এবং হ্যাঁ আমি একটি টোকেন পাওয়ার জন্য কোডটি চেষ্টা করেছিলাম এবং এটি দুর্দান্ত কাজ করে। আমি বিশ্রামটি চেষ্টা করিনি কারণ টিবিএইচ এটি যদি সবকিছু সুষ্ঠুভাবে চালিত হয় তবে কমপক্ষে 5 ঘন্টা কাজের মতো। এমনকি একটি 500 অনুদানও এটির মূল্য নয়।
qualverse

1
যদিও লেখক টোকেন পাওয়ার জন্য এখানে পুরো কোডটি রয়েছে (এটি আপনার স্ক্রিনশটটিতে পুকাসযুক্ত অ্যাপ্লিকেশনের মতো কাজ করে): github.com/ethanblake4/PlayStoreDemo
0:32

লেখক-টোকেন পাওয়া ভাল কাজ করে বলে মনে হচ্ছে। তবে আমি যে শক্ত অংশটি মনে করি তা হ'ল অ্যাপগুলি তাদের এনেছে :(
অ্যান্ড্রয়েড বিকাশকারী

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

-2

আপনি ডিভাইসে সমস্ত ইনস্টল থাকা অ্যাপ্লিকেশনগুলির প্যাকেজের নাম পেতে পারেন এবং তারপরে গুগল প্লে থেকে ডিভাইসে পাওয়া প্রতিটি ইনস্টল করা প্যাকেজটির তথ্য ব্যবহারকারীর অ্যাকাউন্টে পাওয়ার প্রয়োজন ছাড়াই পেতে পারেন। অ্যাপ্লিকেশন প্যাকেজের নাম পেয়ে গুগল প্লে অ্যাপসটির বিবরণ জেসসন হিসাবে পেতে কিছু তৃতীয় পক্ষ বা অফিশিয়াল এপিআই রয়েছে। উদাহরণস্বরূপ: https://42matters.com/ তারপরে নিখরচায় প্রতিটি প্যাকেজের জন্য প্রাপ্ত তথ্য ব্যবহার করুন।


না, আমি যে প্রশ্নটিকে অনুগ্রহ করেছিলাম তা হ'ল এটি এমন অ্যাপ্লিকেশন যা ব্যবহারকারীরা কখনও ইনস্টল করেছেন, এবং কেবল এখনই ইনস্টল করা ইনস্টলগুলি নয়। এছাড়াও, সরকারী উপায় থাকলে কেন আনুষ্ঠানিক ব্যবহার করবেন ...
অ্যান্ড্রয়েড বিকাশকারী

@ অ্যান্ড্রয়েড ডেভেলপার আমার ধারণা, গুগল প্লেতে প্যাকেজের নাম পেয়ে অ্যাপের বিশদ পাওয়ার জন্য কোনও অফিসিয়াল এপিআই নেই। কোন অফিসিয়াল এপিআই আছে?
বাহমান

@ অ্যান্ড্রয়েড ডেভেলপার গুগল কি প্রতিটি ব্যবহারকারীর জন্য আনইনস্টল করা ফ্রি অ্যাপসের নাম রাখে?
বাহমান

হ্যাঁ. আপনি যদি প্লে স্টোর অ্যাপ্লিকেশনটি খোলেন, ন্যাভ-ড্রয়ারে যান এবং তারপরে "আমার অ্যাপস এবং গেমস" এ যান। আপনি সেখান থেকে ইনস্টল হওয়া সমস্ত অ্যাপ্লিকেশন দেখতে পাবেন এবং কেবল বর্তমানে ইনস্টল থাকা অ্যাপ্লিকেশনগুলি নেই। Google- কে অনুযায়ী, এটি অনুমোদিত হয় (বা অন্তত এটা তারা বলে মনে হয়) এই এপিআই ব্যবহার করার জন্য: issuetracker.google.com/issues/79195087 । বা, যে আমার সাথে কথা বলেছে সে সেখানে কী ঘটছে তার সাথে পরিচিত নয় ...
অ্যান্ড্রয়েড বিকাশকারী

-2

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

https://www.quora.com/Is-there-an-API- for- the- Google-Play- স্টোর এখানে লিঙ্ক বিবরণ লিখুন

/android/162146/how-to-see-all-the-apps-i-have-downloaded-from-google-play-store

এবং এটি কীভাবে সম্পাদন করা যায় তা দেখার জন্য এটি যথেষ্ট।

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

দ্বিতীয়ত, আপনাকে গুগল প্লে স্টোরের জন্য নির্মিত একটি তৃতীয় পক্ষের এপিআই দরকার হবে, সেখানে কিছু আছে, প্রথম লিঙ্কটি দেখুন।

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

অবজেক্টটি ডিসরিয়ালাইজ করুন এবং আপনার তালিকা থাকবে। আপনি যে তালিকাটি পান সেটি নির্ভর করে আপনি যে শেষ পয়েন্টটি ব্যবহার করেন তার উপর নির্ভর করে তবে এটি API এর মধ্যেই / দ্বারা ব্যাখ্যা করা উচিত।

শুভকামনা!


সেখানকার সমস্ত লিঙ্কগুলিতে, আমি এমন কোনও দেখতে পাচ্ছি না যা বর্তমান ব্যবহারকারীর দ্বারা ইনস্টল করা অ্যাপগুলির তালিকা পেয়ে যায় gets তাদের লগইন পর্বও নেই। এগুলি সকলেই অ্যাপগুলি সম্পর্কে সাধারণ তথ্য সংগ্রহ করে, ব্যবহারকারী সেগুলি ইনস্টল করেছেন কি না।
অ্যান্ড্রয়েড বিকাশকারী 23
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.