اینڈرائڈ ڈویلپر اپنی ایپس کو آئی اے پی ہیکرز سے کیسے بچاسکتے ہیں



مسائل کو ختم کرنے کے لئے ہمارے آلے کو آزمائیں

یہ رہنما اینڈرائیڈ ایپ ڈویلپرز کے لئے ہے جو IAPs سے آمدنی حاصل کرتے ہیں ، اور ہیکنگ ٹولز کے ذریعہ ہیکرز اور جعلی خریداریوں سے خود کو بچانا چاہتے ہیں۔ وہاں بہت سے معروف IAP ہیکنگ ٹولز موجود ہیں ، جن کی میں یہاں فہرست نہیں دوں گا ، لیکن بنیادی طور پر یہ ٹولز آپ کے ایپ کو غلط خریداری کی رسیدیں بھیجتے ہیں تاکہ صارف مفت IAPs سے لطف اندوز ہوسکے۔ یہ ماہانہ رکنیت سے لے کر کھیل کے ٹوکن تک کچھ بھی ہوسکتا ہے۔





جب کہ ہیکنگ کے ان ٹولز کے نئے ورژن ہمیشہ جاری کیے جاتے ہیں ، اور ان کی تازہ ترین تازہ کاریوں اور طریقوں سے آگاہی حاصل کرنے میں مستعد بہت ضروری ہے ، لیکن آپ اپنی ایپلی کیشنز IAPs کو چوری ہونے سے بچانے کے ل. کچھ کام کر سکتے ہیں۔ خاص طور پر ، آپ کو سرور سائیڈ IAP توثیق کے متعدد طریقوں کو اہل بنانا ہوگا ، جس کی تفصیل میں ذیل میں دوں گا۔



اس گائیڈ کا مقصد نوزائیدہوں کیلئے نہیں ہے ، بلکہ تجربہ کار ایپ ڈویلپرز ہیں جو اس گائڈ میں موجود مختلف زبانوں کو سمجھیں گے۔

اس مقصد کے لئے خاص طور پر گٹ ریپو پلگ ان کا استعمال:

پیراسیچیکر

اپنے منصوبے میں ذخیرے شامل کریں build.gradle :



ذخائر {

maven {

url “https://jitpack.io”

}

}

اور لائبریری کو اپنے ماڈیول میں شامل کریں build.gradle :

انحصار {

مرتب کریں ‘com.github.javiersantos: بحر قزاقی چیکر: 1.1’

}

سفارشات

  • اپنے پروڈکشن ریلیزز میں ہمیشہ پروگارڈ کو فعال کریں۔
  • جتنی جلدی ممکن ہو جائز لائسنس کی جانچ پڑتال کے ل P پیراسیچیکر کو آپ کے کریٹ طریقہ میں شامل کرنا چاہئے۔
  • جب لائسنس درست نہیں ہوتا ہے تو اس کو مکالمہ کی بجائے نئی سرگرمی ظاہر کرنے کی تجویز کی جاتی ہے۔ اس طرح آپ اس بات کو یقینی بنائیں گے کہ ایپ کی مرکزی سرگرمی ختم ہوگئی ہے۔ دیکھیں “ ایک ڈائیلاگ یا نئی سرگرمی میں نتائج دکھائیں '۔

گوگل پلے لائسنسنگ کی تصدیق کریں (LVL)

گوگل پلے ایک لائسنسنگ سروس پیش کرتا ہے جو آپ کو ان ایپلی کیشنز کے لائسنس کی پالیسیاں نافذ کرنے دیتا ہے جو آپ Google Play پر شائع کرتے ہیں۔ گوگل پلے لائسنسنگ کے ذریعہ ، آپ کی ایپلی کیشن موجودہ صارف کے لئے لائسنسنگ کی حیثیت حاصل کرنے کے لئے گوگل پلے پر سوال کرسکتی ہے۔

آپ جو بھی ایپلیکیشن گوگل پلے کے ذریعہ شائع کرتے ہیں وہ گوگل پلے لائسنسنگ سروس استعمال کرسکتی ہے۔ کسی خاص اکاؤنٹ یا رجسٹریشن کی ضرورت نہیں ہے۔

نیا بحری قزاقی (یہ)

.enableGooglePlayLicensing ('BASE_64_LICENSE_KEY')

...

. اسٹارٹ ()؛

اپنی BASE64 لائسنس کی کلید کو بازیافت کرنے کے ل app آپ کی ایپ کو اپ لوڈ کرنا لازمی ہے گوگل پلے ڈویلپر کونسول . پھر اپنے ایپ -> خدمات اور APIs تک رسائی حاصل کریں۔

جب گوگل پلے لائسنسنگ کا استعمال کرتے ہو تو آپ اپنی سرگرمی کے onDestroy () طریقہ میں .destroy () پر کال کریں تاکہ خدمت کی متعدد مثالوں سے بچ سکے۔

اپنے ایپ کے دستخطی سند (دستخط) کی تصدیق کریں

اس سے پہلے کہ ایپ صارف کے آلات پر انسٹال ہوسکے ، ڈویلپرز کو ہمیشہ ان کی نجی کلید / سرٹیفکیٹ (.کی اسٹور فائل میں موجود) کے ساتھ ایپلیکیشنز پر دستخط کرنا ہوں گے۔ دستخطی سرٹیفکیٹ لازمی طور پر ایپ کی پوری زندگی میں مستقل رہنا چاہئے ، اور عام طور پر اس کی اختتامی تاریخ 25 سال ہوگی۔

اگر .apk کو کسی بھی طرح تبدیل کیا جاتا ہے تو - ایپ کے دستخط ٹوٹ جائیں گے - دستخط شدہ ایپس عام طور پر انسٹال نہیں کی جاسکتی ہیں۔ مثال کے طور پر ، ہم کسی حملہ آور کے بغیر لائسنس چیکنگ کوڈ کو ہٹانے کا تصور کرسکتے ہیں تاکہ پورے ایپ کی خصوصیات کو ادائیگی کے قابل بنایا جاسکے۔ اس سے بھی زیادہ خطرناک مثال حساس صارف کے ڈیٹا کو حاصل کرنے کے لئے جائز ایپ میں مالویئر کو شامل کرنے کے لئے .apk کو تبدیل کرنا ہوگی۔ تبدیل شدہ .apk کو انسٹال کرنے کے ل the ، حملہ آور کو اسے مستعفی ہونا چاہئے۔

نیا بحری قزاقی (یہ)

.enableSigningCertificate ('478yYkKAQF + KST8y4ATKvHkYibo =') // پیداوار ورژن کے لئے اصل APK دستخط

...

. اسٹارٹ ()؛

محتاط رہیں!! آپ کے ای پی کے دستخطی قزاقی چیکر استعمالاتی طریقہ کے استعمال سے بازیافت کیا جاسکتا ہے۔ اس بات کو یقینی بنائیں کہ آپ نے اپنے پروڈکشن کی اسٹور (DEBUG استعمال نہیں کرتے) کا استعمال کرتے ہوئے اپنے APK پر دستخط کیے ہیں اور جس ورژن کو آپ تقسیم کرنے کا ارادہ رکھتے ہیں انسٹال کریں۔ پھر کنسول پر اس طریقہ کار سے موصولہ دستخط کاپی کریں اور .enableSigningCertificate ('YOUR_APK_SIGNATURE') میں چسپاں کریں

// یہ طریقہ کنسول میں آپ کے ای پی کے دستخط کو پرنٹ کرے گا

لوگگ۔ ('دستخط' ، قزاقی چیکر یوٹیلز. گیٹ اے پی کے دستخط (یہ))؛

انسٹالر کی تصدیق کریں

اگر آپ صرف کسی خاص اسٹور پر ایپ تقسیم کرنے کا ارادہ رکھتے ہیں تو یہ تکنیک کسی اور اسٹور کا استعمال کرتے ہوئے ایپ کو انسٹال کرنے سے روکے گی۔

معاون اسٹورز: گوگل پلے ، ایمیزون ایپ اسٹور اور سیمسنگ کہکشاں ایپس۔

نیا بحری قزاقی (یہ)

.enableInstallerId (انسٹالر ID.GOOGLE_PLAY)

.enableInstallerId (انسٹالر ID.AMAZON_APP_STORE)

.enableInstallerId (انسٹالر ID.GALAXY_APPS)

...

. اسٹارٹ ()؛

محتاط رہیں!! یہ واقعی ایک پابندی والی تکنیک ہے کیونکہ یہ آپ کے ایپ کو کسی اور مارکیٹ کا استعمال کرنے یا آلہ پر .apk کو براہ راست انسٹال کرنے سے روک دے گی۔ زیادہ تر معاملات کے ل It اس کی سفارش نہیں کی جاتی ہے۔

سمندری ڈاکو ایپس کے استعمال کی تصدیق کریں

اگر آپ یہ چیک کرنا چاہتے ہیں کہ آیا صارف کے پاس قزاقی ایپس نصب ہیں ، تو آپ اس کوڈ کو استعمال کرسکتے ہیں۔

اس کی جانچ پڑتال کریں گے: لکی پیچر ، اوریٹ پیچر ، آزادی اور کری ہیک۔

نیا بحری قزاقی (یہ)

.enableUnauthorisedAppsCheck ()

...

. اسٹارٹ ()؛

آپ اس ایپ کو اس وقت بھی روک سکتے ہیں جب اس سمندری ڈاکو ایپس کو ان انسٹال کر دیا گیا ہو۔ اس سے آپ ایپ کو پیچیدا ہونے سے روکتا ہے اور پھر آپ کی ایپ کا استعمال جاری رکھنے کیلئے سمندری ڈاکو ایپ کو ان انسٹال کریں۔ لائبریری ایک مشترکہ ترجیحی قیمت کو بچانے کے ل know یہ جاننے کے لئے کہ سمندری ڈاکو ایپ کا پتہ کب چلایا جاسکتا ہے۔

ایسا کرنے کے دو طریقے ہیں:

مشترکہ ترجیحات اور اس ترجیح کا نام بتائیں جہاں آپ نتیجہ بچانا چاہتے ہیں۔

نیا بحری قزاقی (یہ)

.enableUnauthorisedAppsCheck ()

. blockIfUnauthorized AppUninstalled (ترجیحات ، 'app_unauthorized') // اپنی قدر کے ساتھ 'app_unauthorized' کو تبدیل کریں

...

. اسٹارٹ ()؛

مشترکہ ترجیحات کا نام اور اس ترجیح کے نام کی وضاحت کریں جہاں آپ نتیجہ بچانا چاہتے ہیں۔

نیا بحری قزاقی (یہ)

.enableUnauthorisedAppsCheck ()

. blockIfUnauthorized AppUninstalled ('परवानاین_پیرانائزیشن' ، 'app_unauthorized') // اپنی 'اپنی قیمت کے ساتھ' لائسنس کی ترجیحات 'اور' app_unauthorized 'کو تبدیل کریں۔

...

. اسٹارٹ ()؛

تھرڈ پارٹی اسٹور ایپس کے استعمال کی تصدیق کریں

اگر آپ یہ دیکھنا چاہتے ہیں کہ آیا صارف کے پاس تھرڈ پارٹی اسٹور ایپس نصب ہیں ، تو آپ اس کوڈ کو استعمال کرسکتے ہیں۔

اس کی جانچ پڑتال کرے گی: اپٹائڈ ، بلیک مارٹ ، موبوجینی ، 1 موبائل ، گیٹاپپ ، گیٹ جار ، سلائیڈ مے اور اے سیمارکٹ۔

نیا بحری قزاقی (یہ)

.enableStoresCheck ()

...

. اسٹارٹ ()؛

تصدیق کریں کہ آیا ایپ ڈیبگ بلڈ ہے

اگر آپ کی ایپ ترقی کے عمل سے باہر ایمولیٹر پر چل رہی ہے تو ، اس سے یہ اشارہ ملتا ہے کہ آپ کے علاوہ کوئی دوسرا ایپ تجزیہ کرنے کی کوشش کر رہا ہے۔

نیا بحری قزاقی (یہ)

.EableDebugCheck ()

...

. اسٹارٹ ()؛

تصدیق کریں کہ آیا کسی ایمولیٹر میں ایپ چل رہی ہے

ترقی سے باہر ، یہ امکان نہیں ہے کہ آپ کی ایپ کسی ایمولیٹر پر چل رہی ہو ، اور ڈیبج ایبل ایبلڈ والے ایپس کو جاری کرنا حوصلہ شکنی کی ہے کیوں کہ اس سے منسلک کمپیوٹرز کو اینڈروئیڈ ڈیبگ برج کے ذریعے ایپ تک رسائی حاصل کرنے اور ڈیبگ کرنے کی سہولت ملتی ہے۔

بولین گہری = جھوٹی؛

نیا بحری قزاقی (یہ)

.EableEmulatorCheck (گہری)

...

. اسٹارٹ ()؛

نوٹ: لائبریری کے ساتھ گہری بولین اضافی جانچ پڑتال کرتی ہے تاکہ پتہ چل سکے کہ آیا آلہ ایمولیٹر ہے یا نہیں۔ اس سے کچھ عجیب و غریب حادثات ہوسکتے ہیں ، لہذا اسے استعمال کرتے وقت عقلمندی اختیار کریں۔

مشترکہ ترجیحات میں لائسنس چیک کا نتیجہ محفوظ کریں

لائسنس چیک کے نتیجہ کو محفوظ کرنا لائسنس کی حیثیت کو چیک کرنے کے ل useful مفید ہے.

ایسا کرنے کے دو طریقے ہیں:

مشترکہ ترجیحات اور اس ترجیح کا نام بتائیں جہاں آپ نتیجہ بچانا چاہتے ہیں۔

نیا بحری قزاقی (یہ)

.SaveResultToSharedPreferences (ترجیحات ، 'valid_license') // اپنی 'قدر' کے ساتھ '' درست_لینس 'تبدیل کریں۔

...

. اسٹارٹ ()؛

مشترکہ ترجیحات کا نام اور اس ترجیح کے نام کی وضاحت کریں جہاں آپ نتیجہ بچانا چاہتے ہیں۔

نیا بحری قزاقی (یہ)

.SaveResultToSharedPreferences ('لائسنس_ترجیحات' ، 'valid_license') // اپنی لائسنس کے ساتھ 'لائسنس کی ترجیحات' اور 'valid_license' کو تبدیل کریں۔

...

. اسٹارٹ ()؛

تخصیصات

ایک ڈائیلاگ یا نئی سرگرمی میں نتائج دکھائیں

جب لائسنس درست نہیں ہوتا ہے تو اس کو مکالمہ کی بجائے نئی سرگرمی ظاہر کرنے کی تجویز کی جاتی ہے۔ اس طرح آپ اس بات کو یقینی بنائیں گے کہ ایپ کی مرکزی سرگرمی ختم ہوگئی ہے۔

بطور ڈیفنس منسوخ ہونے والا مکالمہ ظاہر ہوگا۔

نیا بحری قزاقی (یہ)

.Display (ڈسپلے.اختیار)

...

. اسٹارٹ ()؛

پہلے سے طے شدہ طور پر ، ظاہر کردہ سرگرمی لائبریری کے رنگوں کا استعمال کرے گی۔ کسٹم پرائمری اور پرائمری گہرے رنگ کا اطلاق کرنے کے ل and ، اور اس کی وضاحت کرنے کے لئے کہ اگر سرگرمی کو نارمل یا روشنی کی حیثیت والی بار دکھانی چاہئے تو ، استعمال کریں:

.اختیاریہ کی ترجمانی کے ساتھ (R.color.colorPrimary ، R.color.colorPrimaryDark ، لائٹ اسٹاٹس بار کے ساتھ)

آپ اس سرگرمی کے مواد کے ل a ایک حسب ضرورت ترتیب xML کی وضاحت بھی کرسکتے ہیں ، استعمال کرکے:

. سرگرمی لے آؤٹ (R.layout.my_custom_layout) کے ساتھ

کسٹم کال بیکس کا استعمال

بلڈر میں کال بیک شامل کرنا آپ کو اپنی مرضی کے مطابق کرنے کی اجازت دیتا ہے جب لائسنس کی جانچ پڑتال کی جاتی ہے تو کیا ہوگا اور اگر صارف کو ایپ کو استعمال کرنے کی اجازت نہیں ہے تو لائسنس چیک کی غلطیوں کا نظم کریں۔ ذہن میں رکھیں کہ جب یہ طریقہ استعمال کریں آپ کو غیر مجاز صارفین سے ایپ کو مسدود کرنے سے آگاہ ہونا چاہئے .

بطور ڈیفالٹ ، لائبریری غیر منسوخی ڈائیلاگ کو ظاہر کرے گی اگر صارف کو ایپ استعمال کرنے کی اجازت نہیں ہے ، ورنہ کچھ بھی نہیں ہوگا۔

بلڈر کا استعمال کریں اور مندرجہ ذیل شامل کریں:

.کیلبیک (نیا پیراسیسیکرکیل بیک () {

ٹویٹ ایمبیڈ کریں

عوامی باطل کی اجازت () {

// جب صارف کو ایپ استعمال کرنے کی اجازت ہو تو کچھ کریں

}

ٹویٹ ایمبیڈ کریں

عوامی باطل نہ کریں (@ نونول پیراسیسیکر ایرر کی خرابی ، @ ناقابل تلافی پیراٹی ایپ ایپ) {

// جب آپ صارف کو ایپ استعمال کرنے کی اجازت نہیں دیتے ہیں تو آپ کچھ خاص کر سکتے ہیں

// یا خود ’غلطی‘ کے پیرامیٹر کا استعمال کرتے ہوئے غلطی کا نظم کریں (errors @ لنک پیراسیسیکرر ایرر errors پر غلطیاں چیک کریں)۔

// اضافی طور پر ، اگر آپ قزاق ایپس اور / یا تھرڈ پارٹی اسٹورز کے چیک کو چالو کرتے ہیں تو ، ’ایپ‘ پیرم

// وہ ایپ ہے جس کا آلہ پر پتہ چلا ہے۔ ایپ کالعدم ہوسکتی ہے ، اور جب منسوخ ہوجاتی ہے ، اس کا مطلب ہے کہ کوئی قزاقی ایپ یا اسٹور نہیں ملا ،

// یا آپ نے ان ایپس کا چیک غیر فعال کردیا۔

// اس کی مدد سے آپ صارفین کو لائسنس ناجائز ہونے کی ممکنہ وجوہات سے آگاہ کرسکتے ہیں۔

}

ٹویٹ ایمبیڈ کریں

ایرر پر عوامی باطل (@ نونول پیراسیسیکر ایئر غلطی) {

// اس طریقہ کو نفاذ / زیربحث کرنے کی ضرورت نہیں ہے لیکن…

// آپ یا تو لائسنس کی جانچ پڑتال کے دوران کوئی خرابی پیش آنے پر کچھ خاص کر سکتے ہیں ،

// یا خود ’غلطی‘ کے پیرامیٹر کا استعمال کرتے ہوئے غلطی کا نظم کریں (errors @ لنک پیراسیسیکرر ایرر errors پر غلطیاں چیک کریں)۔

}

})

6 منٹ پڑھا