গুগল প্লে স্টোর কেন আমার অ্যান্ড্রয়েড অ্যাপ্লিকেশনটি আমার নিজের ডিভাইসের সাথে বেমানান বলে?


91

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

আমি একটি অ্যান্ড্রয়েড অ্যাপ্লিকেশন তৈরি করেছি ( প্রকৃত অ্যাপ্লিকেশানের লিঙ্ক ) এবং এটি প্লে স্টোরে আপলোড করেছি। প্লে স্টোর বলে

"This app is incompatible with your XT Mobile Network HTC HTC Wildfire S A510b."

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

আমি নিম্নলিখিত চেষ্টা করেছি:

  • এই উত্তরেরres/raw পরামর্শ অনুযায়ী ডিরেক্টরি থেকে একটি বড়-ইশ ফাইল সরানো । কেবলমাত্র ফাইলটিতে ~ 700 কেবি টেক্সট ফাইল ছিল, তবে আমি এটিকে আপাত কোনও পরিবর্তন ছাড়াই স্থানান্তরিত করেছি ।assets/

  • নিম্নলিখিত দুটি বৈশিষ্ট্য যুক্তি যুক্ত:

    <uses-feature android:name="android.hardware.faketouch" />
    <uses-feature android:name="android.hardware.touchscreen" android:required="false" />
    

    এই ভেবে যে সম্ভবত আমার ফোনটি স্বাভাবিক android.hardware.touchscreenবৈশিষ্ট্যটি সমর্থন করার দাবি করে না , তবে আবার কোনও আপাত পরিবর্তন ছাড়াই।

যখন Play স্টোরে APK আপলোড করার একমাত্র ফিল্টার এটি সক্রিয় হিসাবে রিপোর্ট হয় android.hardware.faketouchবৈশিষ্ট্য।

নিম্নলিখিতটির ফলাফল aapt dump badging bin/NZSLDict-release.apk:

package: name='com.hewgill.android.nzsldict' versionCode='3' versionName='1.0.2'
sdkVersion:'4'
targetSdkVersion:'4'
uses-feature:'android.hardware.faketouch'
uses-feature-not-required:'android.hardware.touchscreen'
application-label:'NZSL Dictionary'
application-icon-160:'res/drawable/icon.png'
application: label='NZSL Dictionary' icon='res/drawable/icon.png'
launchable-activity: name='com.hewgill.android.nzsldict.NZSLDictionary'  label='NZSL Dictionary' icon=''
main
other-activities
supports-screens: 'small' 'normal' 'large'
supports-any-density: 'true'
locales: '--_--'
densities: '160'

এবং সম্পূর্ণতার জন্য, আমার প্রকাশ ফাইল:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
      package="com.hewgill.android.nzsldict"
      android:versionCode="3"
      android:versionName="1.0.2">
    <uses-sdk android:minSdkVersion="4" android:targetSdkVersion="4" />
    <uses-feature android:name="android.hardware.faketouch" />
    <uses-feature android:name="android.hardware.touchscreen" android:required="false" />
    <application android:label="@string/app_name"
        android:icon="@drawable/icon">
        <activity android:name="NZSLDictionary"
                  android:label="@string/app_name">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <activity android:name=".WordActivity" />
        <activity android:name=".VideoActivity" />
        <activity android:name=".AboutActivity" />
    </application>
</manifest> 

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

এই মুহুর্তে আমি কেবল একটাই করিনি যা সর্বশেষ সংস্করণটি আপলোড করার 4-6 ঘন্টা অপেক্ষা করতে হবে ( এই মন্তব্য হিসাবে ) এটি এখনও বলে যে এটি আমার ফোনের সাথে বেমানান নয়। যাইহোক, প্লে স্টোর পৃষ্ঠাটি বর্তমানে 1.0.2 দেখায় যা সর্বশেষে আমি আপলোড করেছি।


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

4
@ গ্যাভিনমিলার: ধন্যবাদ, তবে আমি নিশ্চিত নই যে প্লে স্টোর যখন অ্যাপ্লিকেশন সরবরাহ করতে অস্বীকার করবে তখন তা সাহায্য করবে।
গ্রেগ হিউগিল

হতে পারে আমি আপনার মন্তব্যটি ভুল বুঝেছি: "অন্যান্য ডিভাইসযুক্ত কিছু লোক বলে যে এটি উপযুক্ত reports আপনি জানেন না এমন অনেক লোক যদি অ্যাপটি ডাউনলোড এবং ইনস্টল করতে পারে তবে চেষ্টা করতে এবং একটি ট্রেন্ড গঠনের জন্য আপনি একটি বড় আকারের হার্ডওয়্যার ডেটা সংগ্রহ করতে পারেন। সুতরাং "অ্যান্ড্রয়েড ডিভাইসযুক্ত খুব বেশি লোককে আমি চিনি না alle" সমস্যা.
গ্যাভিন মিলার

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

এই সমাধান আমার জন্য তার কাজ পরীক্ষা stackoverflow.com/a/14020303/3392323
SAndroidD

উত্তর:


84

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

res/drawableডিরেক্টরিতে আরও কন্টেন্ট যুক্ত করা ছাড়া আমি এই অ্যাপটিতে কিছুই পরিবর্তন করি নি । যখন .apkআকারটি প্রায় 32 এমবিতে পৌঁছে যায়, প্লে স্টোরটি জানিয়ে দেয় যে আমার অ্যাপ্লিকেশনটি আমার ফোনের সাথে বেমানান।

আমি গুগল বিকাশকারী সহায়তার সাথে যোগাযোগ করার চেষ্টা করব এবং এই সীমাবদ্ধতার কারণ সম্পর্কে স্পষ্টতা চাইব।

আপডেট : এটি এখানে গুগল বিকাশকারী সমর্থন সাড়া:

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

তবে কিছু ডিভাইসে অ্যাপ্লিকেশনটি ডাউনলোডের জন্য অনুপলব্ধ করে তুলতে 50 এমবি এর চেয়ে কম ক্যাশে পার্টিশন থাকতে পারে। উদাহরণস্বরূপ, কিছু এইচটিসি ওয়াইল্ডফায়ার ডিভাইস 35-40 এমবি ক্যাশে পার্টিশন থাকার জন্য পরিচিত। গুগল প্লে যদি এমন ডিভাইস সনাক্ত করতে সক্ষম হয় যার অ্যাপ্লিকেশন সঞ্চয় করার মতো যথেষ্ট ক্যাশে নেই, এটি এটি ব্যবহারকারীর উপস্থিতি থেকে ফিল্টার করতে পারে।

আমি সমস্ত পিএনজি ফাইলকে জেপিজিতে রূপান্তর করে আমার সমস্যার সমাধান করে শেষ করেছি, একটি স্বল্প গুণমান সহ। .apkফাইলটি বর্তমানে 28 মেগাবাইট, যা যাই হোক না কেন থ্রেশহোল্ড Google Play তে আমার ফোনের জন্য প্রয়োগ করা হয় নিচের হয়।

আমি সমস্ত <uses-feature>জিনিসপত্রও সরিয়েছি এবং এখন এইটি রয়েছে:

<uses-sdk android:minSdkVersion="4" android:targetSdkVersion="15" />

খুব আকর্ষণীয় এবং মূল্যবান তথ্য। এবং তাই বিরক্তিকর যে এটি কোথাও নথিভুক্ত করা হয় না।
মাইকেল এ।

4
আসলে, যদি আমি কোনও ওয়াইল্ডফায়ার ফোন না রাখি তবে সমস্যাটি সম্পর্কে আমি কখনও জানতাম না।
গ্রেগ হিউগিল

আমার কাছে 3 টি গেম রয়েছে: 32 এমবি, 35 এমবি এবং 44 এমবি আকার। আমার নিজের এইচটিসি ব্রাভো প্রথম দুটি গেম দেখে এবং স্টোরটিতে তৃতীয়টি দেখতে পায় না। আমার বন্ধুর এইচটিসি ইচ্ছা এসটি কেবল প্রথম খেলাটি দেখে। সুতরাং, স্পষ্টতই গেমগুলির আকার 33MB এর নীচে হওয়া উচিত বা তাই বেশিরভাগ (?) ডিভাইসে দৃশ্যমান হয়। দুর্ভাগ্যক্রমে আমি এই উত্তরটি খুব দেরিতে দেখেছি এবং কয়েক মাস ধরে এই সমস্যাটি সম্পর্কে জানতাম না ... আমি নিশ্চিত যে এটি ডিভাইসের প্রসেসরের ধরণের, সমর্থিত ওপেনএল সংস্করণ, ম্যানিফেস্টে সীমাবদ্ধতা বা কোনও কিছুর উপর নির্ভর করে। দীর্ঘশ্বাস ..
21

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

4
@ গ্রেগ হিউগিল হ্যালো গ্রেগ অনুরূপ ধরণের একটি সমস্যা সম্পর্কে আমি গুগল সহায়তায় যোগাযোগ করেছি। আমার অ্যাপ্লিকেশনটির আকারটি মাত্র 5 এমবি হওয়ায় আমি বিভিন্ন বিকল্পের দিকে তাকিয়ে ছিলাম কেন গুগল প্লে আমার ডিভাইসটি কোনও নির্দিষ্ট ডিভাইসে ফিল্টার করে। Them২ ঘন্টা হয়ে গেছে আমি তাদের সাথে যোগাযোগ করেছি এবং তারা কোনও ধরণের ব্যাখ্যা দিয়ে ফিরে আসেনি। গুগল সাপোর্টের সাথে যোগাযোগ করার জন্য কি কোনও উপায় আছে আমাদের সাথে যোগাযোগ করুন?
হেমন্ত কুমার

16

আমি এটিতেও ছুটে এসেছি - আমি আমার সমস্ত বিকাশ একটি লেনোভো আইডিয়াটিব এ 2107 এ-এ করেছিলাম এবং এটির উপর বিকাশ চালাতে পারতাম এবং এমনকি adb installকোনও ইস্যু ছাড়াই স্বাক্ষরিত APK (প্রকাশিত ) প্রকাশ করতে পারি। একবার এটি আলফা পরীক্ষা মোডে প্রকাশিত হয়ে গেলে এবং গুগল প্লেতে উপলব্ধ হয়ে গেলে আমি "আপনার ডিভাইসের সাথে অসম্পূর্ণ" ত্রুটি বার্তাটি পেয়েছি।

দেখা যাচ্ছে যে আমি আমার AndroidManifest.xmlটিউটোরিয়াল থেকে নিম্নলিখিতটি রেখেছি :

<uses-feature android:name="android.hardware.camera" />
<uses-feature android:name="android.hardware.camera.autofocus" />
<uses-permission android:name="android.permission.CAMERA" />

ঠিক আছে, লেনোভো আইডিয়াটিব এ 2107 এ-এফটিতে একটি অটোফোকসিং ক্যামেরা নেই (যা আমি http://www.phonearena.com/ فون/Lenovo-IdeaTab-A2107_id7611 এর কাছ থেকে জানতে পেরেছি : অটোফোকাস ক্যামেরা নেই)। আমি এই বৈশিষ্ট্যটি ব্যবহার করছি কিনা তা নির্বিশেষে গুগল প্লে বলেছে না। এটি অপসারণের পরে আমি আমার এপিএকে পুনর্নির্মাণ করেছি, এটি গুগল প্লেতে আপলোড করেছি এবং নিশ্চিত হয়েছি যে আমার আইডিয়াটিব এখন সামঞ্জস্যপূর্ণ ডিভাইসের তালিকায় ছিল।

সুতরাং, প্রতিটি ডাবল-চেক করুন <uses-feature>এবং যদি আপনি আবার ওয়েব চেক থেকে কিছু কপি-পেস্ট করছেন doing আপনি এমন কিছু বৈশিষ্ট্য অনুরোধ করছেন যা আপনি এমনকি ব্যবহার করছেন না are


4
ধন্যবাদ ! আমি অন্য একটি <ব্যবহারকারীর বৈশিষ্ট্য> ব্যবহার করছিলাম: <ইউজড-ফিচার অ্যান্ড্রয়েড: নাম = "android.hardware.camera2" /> এবং সে কারণেই আমার কাছে শূন্য সামঞ্জস্যপূর্ণ ডিভাইস ছিল। আমি লাইনটি সরিয়েছি এবং এখন 10000.
জ্যাক '

আপনি এটি এখনও এটি ব্যবহার করতে সেট করতে পারেন, তবে এটির প্রয়োজন নেই: <ব্যবহার-বৈশিষ্ট্য অ্যান্ড্রয়েড: নাম = "android.hardware.camera.autofocus" অ্যান্ড্রয়েড: প্রয়োজনীয় = "মিথ্যা" />
ডা .চন্দ্র

4
<Use-বৈশিষ্ট্য অ্যান্ড্রয়েড: নাম = "android.hardware.camera2" /> আমার অ্যাপ্লিকেশনটিকে বেমানান করে তোলে তাই আমি প্লেস্টোরে অ্যাপ্লিকেশনটি খুঁজে পাই না unable আমার জীবন বাঁচান
আনন্দ সাবজানি

11

আমি কোনও গ্রাহকের জন্য অ্যাপ্লিকেশন বিকাশের সময়ও এই সমস্যাটি अनुभव করেছি যা তাদের অ্যাপ্লিকেশন থেকে ভিডিও অফলাইনে উপলব্ধ রাখতে চেয়েছিল। আমি কয়েক মাস ধরে যে অ্যাপ্লিকেশনটিতে কাজ করেছি সেগুলি আমার ডিভাইসের জন্য প্লে স্টোরে প্রদর্শিত হবে না সে সম্পর্কে একটি ব্লগপোস্ট লিখেছি ( পোস্টটি এখানে পাওয়া যাবে )। আমি @ গ্রেগ হিউগিলের মতোই পেয়েছি: কিছু ডিভাইসে ক্যাশে পার্টিশনের সীমাবদ্ধতা

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

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


4
আপনার পোস্টে উল্লিখিত গুগল সমর্থন লিঙ্কটি এখন পুরানো, নতুন লিঙ্কটি হ'ল সাপোর্ট জিও / গিগলপ্লে / অ্যান্ড্রয়েড- ডেভেলপার / অ্যানসওয়ার/… । আশা করি আপনি সর্বশেষ লিঙ্ক এবং বিটিডব্লিউ, সুন্দর পোস্ট সহ নিবন্ধটি আপডেট করবেন
রোহান কান্দওয়াল

7

আপনি সমর্থন-পর্দার বৈশিষ্ট্যটি চেষ্টা ও সেট করতে চাইতে পারেন:

<supports-screens
    android:largeScreens="true"
    android:normalScreens="true"
    android:smallScreens="true"
    android:xlargeScreens="true" >
</supports-screens>

দ্য ওয়াইল্ডফায়ারের একটি ছোট পর্দা রয়েছে এবং ডকুমেন্টেশন অনুসারে এই বৈশিষ্ট্যটি সব ক্ষেত্রেই "সত্য" হিসাবে ডিফল্ট হওয়া উচিত তবে বিভিন্ন ফোনে সমর্থন-পর্দার সেটিংসের সাথে ज्ञात সমস্যা রয়েছে, তাই আমি যাইহোক এটি চেষ্টা করব।

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


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

আশা করি আপনাকে খুব বেশি সময় অপেক্ষা করতে হবে না। দ্রুত প্রতিক্রিয়াগুলির জন্য তাদের ঠিক খ্যাতি নেই। :-)
মাইকেল এ।

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

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

7

ফিনলে, আমি আমার আবেদনটিতে একই সমস্যার মুখোমুখি হয়েছি। আমি ফোন গ্যাপ অ্যাপ্লিকেশন তৈরি করেছি android:minSdkVersion="7" & android:targetSdkVersion="18"যার জন্য অ্যান্ড্রয়েড প্ল্যাটফর্মের সাম্প্রতিক সংস্করণ।

আমি গুগল ডক্স ব্যবহার করে সমস্যাটি খুঁজে পেয়েছি

সমস্যা হতে পারে যে আমি কিছু জেএস ফাংশন লিখেছি যা KEY-CODEকেবলমাত্র বর্ণমালা এবং সংখ্যা যাচাই করার জন্য কাজ করে তবে কী বোর্ডে আলাদা আলাদা কী কোড রয়েছে বিশেষত কম্পিউটার কীবোর্ড এবং মোবাইল কীবোর্ডের জন্য। সুতরাং যে আমার সমস্যা ছিল।

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

  • android:minSdkVersion="?"আপনার প্রয়োজন অনুযায়ী এটি ব্যবহার করুন এবং android:targetSdkVersion="?"সর্বশেষ হওয়া উচিত যাতে আপনার অ্যাপটি টার্গেট করবে। আরো দেখুন

  • কেবলমাত্র সেই অনুমতিগুলি যুক্ত করার চেষ্টা করুন যা আপনার আবেদনে ব্যবহৃত হবে এবং যা অপ্রয়োজনীয় তা মুছে ফেলুন।

  • অ্যাপ্লিকেশন দ্বারা সমর্থিত পর্দা দেখুন

    <supports-screens 
    android:anyDensity="true"
    android:largeScreens="true"
    android:normalScreens="true"
    android:resizeable="true"
    android:smallScreens="true"
    android:xlargeScreens="true"/>
    
  • আপনি কিছু পরিচ্ছদ কোড বা পোশাক উইজেট বাস্তবায়ন করতে পারেন যা কোনও ডিভাইস বা ট্যাবে দেরিতে চালাতে সক্ষম হয় নি তাই দীর্ঘ কোড লেখার আগে প্রথমে কিছু বিটা কোড লেখার চেষ্টা করুন এবং আপনার কোডটি সমস্ত ডিভাইসে চলবে কি না তা পরীক্ষা করে দেখুন ।

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


6

আমার কাছে বেশ কয়েকটি পরামর্শ রয়েছে:

  1. প্রথমত, আপনি আপনার লক্ষ্য হিসাবে API 4 ব্যবহার করছেন বলে মনে হচ্ছে। আফাইক, সর্বদা সর্বশেষতম এসডিকে বিরুদ্ধে সংকলন করা এবং সে android:minSdkVersionঅনুযায়ী আপনার সেটআপ করা ভাল অনুশীলন ।

  2. এটি মনে রেখে, মনে রাখবেন যে android:requiredএপিটিবিটিটি এপিআই 5 এ যুক্ত হয়েছিল :

বৈশিষ্ট্য ঘোষণায় একটি android:required=["true" | "false"]বৈশিষ্ট্য অন্তর্ভুক্ত থাকতে পারে (আপনি যদি API এর 5 বা ততোধিক স্তরের বিরুদ্ধে সংকলন করছেন) যা আপনাকে অ্যাপ্লিকেশনটি (...) নির্দিষ্ট করতে দেয়

সুতরাং, আমি আপনাকে পরামর্শ দিচ্ছি যে আপনি এসডিকে 15 এর বিরুদ্ধে সংকলন করুন, targetSdkVersionপাশাপাশি 15 এ সেট করুন এবং সেই কার্যকারিতা সরবরাহ করুন।

এটি প্লে সাইটে এখানেও দেখায় যে আমার যে কোনও ডিভাইস (কাকতালীয়?) জিনজারব্রেড (গ্যালাক্সি এস এবং গ্যালাক্সি ওয়াই এখানে) এর সাথে বেমানান । তবে এটি আমার গ্যালাক্সি ট্যাব 10.1 ( হানিকম্ব ), নেক্সাস এস এবং গ্যালাক্সি নেক্সাসের ( আইসিএসে উভয়) সাথে সামঞ্জস্যপূর্ণ দেখায় ।

এটি আমাকে ভাবতেও ছাড়ল , এবং এটি খুব বুনো অনুমান, তবে যেহেতু android.hardware.faketouch এপিআই 11+ , এটি কাজ করে কিনা তা দেখার জন্য কেন আপনি এটিকে অপসারণ করার চেষ্টা করছেন না? অথবা সম্ভবত এটি যে কোনওভাবেই সম্পর্কিত, কারণ আপনি বৈশিষ্ট্যগুলি ( faketouch) এবং requiredএপিআই 4 এ উপলব্ধ বৈশিষ্ট্যগুলি ব্যবহার করার চেষ্টা করছেন না And এবং এই ক্ষেত্রে আপনার সর্বশেষতম এপিআইয়ের বিরুদ্ধে সংকলন করা উচিত।

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

দুঃখিত যদি এই অনুমানটি আপনার প্রশ্নের উত্তর না দেয় তবে এই ধরণের সমস্যা নির্ণয় করা এবং প্রকৃতপক্ষে পরীক্ষা না করে সমাধানটি পয়েন্ট করা খুব কঠিন। বা কমপক্ষে আমার পক্ষে Play কীভাবে অ্যাপ্লিকেশনগুলি ফিল্টার করে তার যথাযথ জ্ঞান ছাড়াই for

শুভকামনা।


ধন্যবাদ, এটি আমাকে কিছু নির্দিষ্ট ধারণা দেয়। মূলত আমার কাছে কোনও <uses-feature>ট্যাগই ছিল না, এটি কমের চেয়ে বেশি ডিভাইসের সাথে এটি সামঞ্জস্য করার চেষ্টা ছিল। আমি এসডিকে সংস্করণ ট্যাগগুলি পরিবর্তন করার চেষ্টা করব, এটি সম্ভবত সম্ভাব্য পদ্ধতির মতো বলে মনে হচ্ছে। আমার যুক্ত করা উচিত যা আমি ব্যবহার করেছি minSdkVersion="4"কারণ সেই সংস্করণটিতে আর কিছু অনুমতি (ফোনের স্টেটটি পড়ুন, এসডি কার্ডটি সংশোধন করুন) এর দরকার নেই যা আমার অ্যাপটির প্রয়োজন নেই।
গ্রেগ হিউগিল

এসডিকে সংস্করণগুলি পরিবর্তন করা কোনওরকম android:minSdkVersion="5" android:targetSdkVersion="15"সাহায্য করেনি। আমি গুগল প্লে বিকাশকারী সহায়তার সাথে যোগাযোগ করেছি এবং আশা করি তারা আমাকে কেন তা বলতে পারবেন। এটা নিশ্চিত সুন্দর হতে যদি হতো কারণ ফিল্টারিং জন্য Play অ্যাপ্লিকেশান পৃষ্ঠাতে দেখানো হয়।
গ্রেগ হিউগিল

হ্যাঁ যে মহান হতে হবে. এদিকে, আপনি কি faketouchহিসাবে সেট করার চেষ্টা করেছেন required= false?
ডেভিডেসারিনো

সর্বশেষতম পুনরাবৃত্তি সমস্ত <uses-feature>ট্যাগ সরিয়ে দেয় কারণ গুগল সমর্থন আমাকে কারণ বলেছিল যে এটি আমার ডিভাইসের জন্য অনুপলব্ধ কারণ android.hardware.faketouchবৈশিষ্ট্যটি ছিল। এটি হাস্যকর বলে মনে হচ্ছে, বিশেষত যেহেতু আমার আগের সংস্করণগুলির একটিতে ট্যাগও ছিল না <uses-feature>, তবে যাই হোক না কেন। আমি তাদের প্রতিক্রিয়াটির অপেক্ষায় রয়েছি এবং আমি আর একটি সংস্করণ আপলোড করে তাদের বিভ্রান্ত করতে চাই না। এটি বার বার নতুন APKs আপলোড এবং প্রকাশ না করে এটি পরীক্ষা করার উপায় থাকলে খুব ভাল হবে।
গ্রেগ হিউগিল

আমি হাস্যকর বলব না, কারণ এটি পরে একটি এসডিকে সংস্করণে যুক্ত হয়েছে (এপিআই 11), তাই কেন আমি এপিআই 15 এর বিরুদ্ধে সংকলন এবং টার্গেট করার পরামর্শ দিয়েছিলাম (কেবলমাত্র প্রকাশিত নয়, আপনার প্রকল্পের পরিবর্তনগুলি স্মরণ করুন)। আমি এখনও এটি প্রয়োজনীয় হিসাবে সেট করা বিস্মিত = মিথ্যা যদিও কাজ করে নি।
ডেভিডেসারিনো

6

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

দেখা গেল যে আপনি ক্যামেরা অনুমতি ব্যবহার করলে অনেকগুলি ডিভাইস বেমানান হয়:

<uses-permission android:name="android.permission.CAMERA" />

যখন আমি এই নির্দিষ্ট অনুমতিটি সরিয়ে ফেললাম, অ্যাপ্লিকেশনটি 870 এর পরিবর্তে 1180 ডিভাইসের জন্য উপলব্ধ ছিল Hope আশা করি এটি কারও সাহায্য করবে


7
হতে পারে, এটি সাহায্য করতে পারে: <ব্যবহার-অনুমতি অ্যান্ড্রয়েড: নাম = "android.permission.CAMERA" /> <
ইউজড

6

অনুমতিগুলি যা বৈশিষ্ট্যের প্রয়োজনীয়তা বোঝায়

উদাহরণস্বরূপ, অ্যান্ড্রয়েড.হার্ডওয়ার.ব্লুথুথ বৈশিষ্ট্যটি অ্যান্ড্রয়েড ২.২ (এপিআই স্তর 8) এ যুক্ত করা হয়েছিল, তবে এটি যে ব্লুটুথ এপিআইটিকে উল্লেখ করে তা অ্যান্ড্রয়েড 2.0 (এপিআই স্তর 5) এ যুক্ত হয়েছিল। এ কারণে, কিছু অ্যাপ্লিকেশন তাদের সিস্টেমের মাধ্যমে এপিআই প্রয়োজন বলে ঘোষণা করার ক্ষমতা রাখার আগে এপিআই ব্যবহার করতে সক্ষম হয়েছিল।

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

নীচের টেবিলটিতে এমন অনুমতিগুলি তালিকাভুক্ত করে যা উপাদানগুলিতে ঘোষিত সমতুল্য বৈশিষ্ট্যগুলির বৈশিষ্ট্যকে বোঝায়। নোট করুন যে কোনও ঘোষিত অ্যান্ড্রয়েড সহ ঘোষণাপত্র: প্রয়োজনীয় বৈশিষ্ট্যটি সর্বদা নীচের অনুমতিগুলির দ্বারা বর্ণিত বৈশিষ্ট্যের চেয়ে অগ্রাধিকার গ্রহণ করে।

নীচের যে কোনও অনুমতিের জন্য, আপনি কোনও অ্যান্ড্রয়েড সহ: প্রয়োজনীয় = "ভুয়া" অ্যাট্রিবিউট যুক্ত উপাদানটিতে স্পষ্টভাবে স্পষ্টভাবে ঘোষিত বৈশিষ্ট্যটি স্পষ্ট করে ঘোষণা করে সূচিত বৈশিষ্ট্যের ভিত্তিতে ফিল্টারিং অক্ষম করতে পারেন। উদাহরণস্বরূপ, ক্যামেরার অনুমতিের ভিত্তিতে কোনও ফিল্টারিং অক্ষম করতে আপনি এই ঘোষণাটি ম্যানিফেস্ট ফাইলটিতে যুক্ত করবেন:

<uses-feature android:name="android.hardware.camera" android:required="false" />


<uses-feature android:name="android.hardware.bluetooth" android:required="false" />
<uses-feature android:name="android.hardware.location" android:required="false" />
<uses-feature android:name="android.hardware.location.gps" android:required="false" />
<uses-feature android:name="android.hardware.telephony" android:required="false" />
<uses-feature android:name="android.hardware.wifi" android:required="false" />

http://developer.android.com/guide/topics/manifest/uses-feature-element.html#permission


ধন্যবাদ! বৈশিষ্ট্যটি প্রয়োজনীয় হওয়ায় আমার ডিফল্ট ডিফল্ট ব্যবহারের অনুমতি নেই idea
জিম পেকেরেক

3

সাধারণ, হতাশায় এই প্রশ্ন পোস্ট করার পরে এটি ঠিক খুঁজে পেয়েছে; আমি যে সরঞ্জামটির সন্ধান করছিলাম তা হ'ল:

$ aapt dump badging <my_apk.apk>

দেখে মনে হচ্ছে এর পরিবর্তে আপনি এই উত্তরটি স্ট্যাকওভারফ্লো / প্রশ্ন / 16145927/… পোস্ট করেছেন ।
গ্রেগ হিউগিল

3

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

<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />

উপরের অনুমতিগুলির ফলাফলটি হ'ল নিম্নলিখিত বৈশিষ্ট্যগুলি স্বয়ংক্রিয়ভাবে যুক্ত করা হয়েছে:

android.hardware.LOCATION
android.hardware.location.GPS
android.hardware.location.NETWORK

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


2

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

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

অতিরিক্ত আগ্রহের ক্ষেত্রে:
অ্যাপ্লিকেশনটিতে অ্যাপ্লিকেশন বিলিং ভি 3 ব্যবহার করে। IabHelper এর মাধ্যমে প্রথমবার অ্যাপটিকে গুগল প্লে পরিষেবাটির মাধ্যমে কেনাকাটা করার অনুমতি দেয়। তবে ক্রয়টি করার পরে, ক্রয়টি ইনভেন্টরিতে রাখা হয় না এবং আইএবহেল্পার রিপোর্ট করে যে কোনও আইটেমের মালিকানা নেই। গুগল প্লে উইন্ডো "ক্রয় সফল" হিসাবে ঘোষণা করলেও ডিবাগ বার্তাগুলি ক্রয় থেকে একটি 'ক্রয় ব্যর্থ' ফলাফল দেখায়।


0

আমারও একই সমস্যা ছিল। আমার মেনিফেস্ট এবং গ্রেড বিল্ড স্ক্রিপ্টে বিভিন্ন সংস্করণ কোড এবং নম্বর থাকার কারণে এটি হয়েছিল। আমি আমার ম্যানিফেস্ট থেকে সংস্করণ কোড এবং সংস্করণ নম্বরটি সরিয়ে এবং গ্রেডকে এর যত্ন নিতে দিয়ে সমাধান করেছি।


0

আমারও একই সমস্যা ছিল। আমি টেস্ট মোডে একটি অ্যাপ প্রকাশ করেছি নেটিভ 59 এর সাথে নির্মিত, এটি নির্দিষ্ট পরীক্ষকের পক্ষে উপযুক্ত নয়। অ্যাপটি কেন সামঞ্জস্যপূর্ণ নয় সে সম্পর্কে বার্তাটি পরিষ্কার ছিল না, আমি বুঝতে পেরেছিলাম যে আমি অ্যাপ্লিকেশনটি কেবলমাত্র নির্দিষ্ট দেশের জন্য উপলব্ধ রাখতে পারি। সমস্যাটি ছিল, কিন্তু আমি যেমন বলেছি বার্তাটি পরিষ্কার ছিল না। প্লে স্টোর ওয়েব অ্যাপে বার্তাটি হ'ল: "এই অ্যাপ্লিকেশনটি আপনার ডিভাইসের সাথে সামঞ্জস্যপূর্ণ নয়"। মোবাইল অ্যাপে "এই অ্যাপ্লিকেশনটি আপনার দেশে উপলভ্য নয়" বার্তাটি রয়েছে


0

আপনি যদি এখানে2020 এ থাকেন এবং আপনি মনে করেন ত্রুটি বার্তা প্রাপ্ত ডিভাইসটি সামঞ্জস্যপূর্ণ হওয়া উচিত:

ইনস্টাগ্রাম (1 বি + ইনস্টল) এবং ক্ল্যাশ অফ ক্লানস (১০০ এম + ইনস্টলস) সহ আরও বেশ কয়েকটি বড় অ্যাপ্লিকেশান এতে চালিত হয়েছে। এটি গুগলের অ্যান্ড্রয়েড অপারেটিং সিস্টেমের সাথে একটি সমস্যা বলে মনে হচ্ছে।

"আপনার ডিভাইসটি এই সংস্করণটির সাথে সামঞ্জস্যপূর্ণ নয়" ত্রুটি বার্তাটি ঠিক করতে গুগল প্লে স্টোর ক্যাশে এবং তারপরে ডেটা সাফ করার চেষ্টা করুন। এরপরে গুগল প্লে স্টোরটি পুনরায় চালু করুন এবং আবার অ্যাপটি ইনস্টল করার চেষ্টা করুন।

[ Https://support.getupside.com/hc/en-us/articles/226667067--Device-not-compatible-error-message-in-Google-Play-Store]

গুগলের অফিসিয়াল সাপোর্ট পেজে এখানে একটি লিঙ্ক রয়েছে যা আপনি আপনার ব্যবহারকারীদের সাথে ক্যাশে সাফ করার বিষয়ে লিঙ্ক করতে পারেন: https://support.google.com/googleplay/answer/7513003

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