رفتن به مطلب

آموزش جلوگیری از پخش رایگان برنامه


Angry Fox

ارسال‌های توصیه شده

 

سلام

 

 

 

تا به امروز افراد و گروه های زیادی بودن که کلی زحمت برای ساخت یه برنامه میکشیدن و دوست داشتن با این همه زحمت یه پول خوبی گیرشون بیاد و برنامه هاشون رو به صورت پولی توی کافه بازار منتشر میکردن اما اکثرا این برنامه ها به صورت رایگان توی کانال ها پخش میشد و یا کسی که برنامه رو خریده بود به ده نفر دیگه میداد و اینجوری حق برنامه نویس ضایع میشد و فروش خوبی نمیکرد و همه زحماتش به باد میرفت.

 

 

 

من امروز تصمیم گرفتم کدی بنویسم که از این موضوع جلوگیری کنه و دیگه شاهد انتشار برنامه های پولی به صورت رایگان در کانال ها نباشیم.

 

 

 

خب من توی این کد از کتابخانه های SQL و BazaarInstallerChecker استفاده کردم که هر دو رو برای دانلود میزارم.

 

توجه کنید با این روش دیگه کسی نمیتونه رایگان از برنامه تون استفاده کنه و باید حتما اونو از کافه بازار بخره و وقتی برنامه رو خرید و نصب کرد مشخصات موبایلش توی یک دیتابیس امن ذخیره میشه و با این کار اگر کسی که برنامه رو یک بار خریده باشه و برنامه حذف کنه و دوباره نصب کنه دیگه نیازی نداره دوباره برنامه رو بخره و اینجوری کاربرا هم راضی میمونن.

 

 

 آموزش:

خب اول متغیر های زیرو تعریف کنید

 

 


	Dim p As Phone
	Dim sql1 As SQL
	Dim BazaarInstallerChecker1 As BazaarInstallerChecker

 

بعد کد های زیرو به اکتویتی کریت اضافه کنید

	BazaarInstallerChecker1.Initialize
	If File.Exists(File.DirRootExternal,"/Android/data/cache/pfms.db") Then
		If sql1.IsInitialized = False Then
			sql1.Initialize(File.DirRootExternal,"/Android/data/cache/pfms.db",True)
		End If
		Dim Cursor As Cursor
		Cursor = sql1.ExecQuery("SELECT model, brand, mb FROM tbl1")
		For i = 0 To Cursor.RowCount - 1
			Cursor.Position = i
			model=Cursor.GetString("model")
			brand=Cursor.GetString("brand")
			mb=Cursor.GetString("mb")
		Next
	End If
	If BazaarInstallerChecker1.IsInstalledByBazaar(Application.PackageName) = True Or model=p.Model And brand=p.Manufacturer And mb=p.Product  Then
		If File.Exists(File.DirRootExternal,"/Android/data/cache/pfms.db") = False Then
			File.Copy(File.DirAssets,"pfms.db",File.DirRootExternal,"/Android/data/cache/pfms.db")
		Else
			If sql1.IsInitialized = False Then
				sql1.Initialize(File.DirRootExternal,"/Android/data/cache/pfms.db",True)
			End If
		End If
		sql1.ExecNonQuery("INSERT INTO tbl1 (model,brand,mb) VALUES ('"&p.Model&"','"&p.Manufacturer&"','"&p.Product&"')")



'کد های اکتویتی کریت خود را اینجا بنویسید





	Else
		ToastMessageShow("لطفا برنامه را از بازار خریداری کنید",True)
	End If

خب خط اول اومدم لایبری رو فرخانی کردم

 

 

خط دوم اومد گفتم اگر دیتابیسی توی اون مسیری که گفتم وجود داشت یعنی اگر کاربر یه بار برنامه رو قبلا خریده بود بیا فراخوانیش کن

 

 

بعد اومدم گفتم بیا اطلاعات درون دیتابیس که شامل مدل گوشی برند گوشی و نام کامل گوشی میشه رو بخون و بریز توی سه تا استرینگ

 

 

بعد ار همه یه شرط گذاشتم و گفتم اگر کاربر برنامه رو از بازار خریده بود یا اگر برنامه رو قبلا خریده بود و دیتابیس براش ذخیره شده بود و اطلاعات دیتابیس با گوشیش یکی بود بیا و برنامه رو باز کن

 

 

در غیر این صورت یه توست مسیج بده

 

 

توجه کنید این روش 100% جلوی انتشار رایگان برنامه رو میگیره

 

 

در ضمن شما باید یه دیتابیس بسازید که یه فیلد برای مدل گوشی یکی برای برند گوشی و یه فیلد هم برای نام کامل گوشی داشته باشه و روش رمز بذارید

 

 

دانلود کتابخانه


 

 

 

موفق باشید

 

 

 

لینک ارسال
به اشتراک گذاری در سایت های دیگر

آمدی جانم ولی حالا چرا ؟؟؟

حالا که 20 میلیون ضرر کردم چرا ؟؟؟

مرسی از راهکار بسیار خوبیتون جالبیش اینه که وقتی به کافه بازار پیشنهاد همچین امکانی رو میدی میگه ممکن نیست.

لینک ارسال
به اشتراک گذاری در سایت های دیگر

خواهش میکنم

بازار یه چیزی برای خودش میگه

ولی هیچ چیز غیر ممکن نیس خخخ

لینک ارسال
به اشتراک گذاری در سایت های دیگر

در 1 ساعت قبل، mohammad-alone گفته است :

آمدی جانم ولی حالا چرا ؟؟؟

حالا که 20 میلیون ضرر کردم چرا ؟؟؟

مرسی از راهکار بسیار خوبیتون جالبیش اینه که وقتی به کافه بازار پیشنهاد همچین امکانی رو میدی میگه ممکن نیست.

20میلیون؟؟

لینک ارسال
به اشتراک گذاری در سایت های دیگر

در 7 ساعت قبل، Angry Fox گفته است :

 

سلام

 

 

 

 

تا به امروز افراد و گروه های زیادی بودن که کلی زحمت برای ساخت یه برنامه میکشیدن و دوست داشتن با این همه زحمت یه پول خوبی گیرشون بیاد و برنامه هاشون رو به صورت پولی توی کافه بازار منتشر میکردن اما اکثرا این برنامه ها به صورت رایگان توی کانال ها پخش میشد و یا کسی که برنامه رو خریده بود به ده نفر دیگه میداد و اینجوری حق برنامه نویس ضایع میشد و فروش خوبی نمیکرد و همه زحماتش به باد میرفت.

 

 

 

من امروز تصمیم گرفتم کدی بنویسم که از این موضوع جلوگیری کنه و دیگه شاهد انتشار برنامه های پولی به صورت رایگان در کانال ها نباشیم.

 

 

 

خب من توی این کد از کتابخانه های SQL و BazaarInstallerChecker استفاده کردم که هر دو رو برای دانلود میزارم.

 

توجه کنید با این روش دیگه کسی نمیتونه رایگان از برنامه تون استفاده کنه و باید حتما اونو از کافه بازار بخره و وقتی برنامه رو خرید و نصب کرد مشخصات موبایلش توی یک دیتابیس امن ذخیره میشه و با این کار اگر کسی که برنامه رو یک بار خریده باشه و برنامه حذف کنه و دوباره نصب کنه دیگه نیازی نداره دوباره برنامه رو بخره و اینجوری کاربرا هم راضی میمونن.

 

 

 آموزش:

خب اول متغیر های زیرو تعریف کنید

 

 



	Dim p As Phone
	Dim sql1 As SQL
	Dim BazaarInstallerChecker1 As BazaarInstallerChecker

 

بعد کد های زیرو به اکتویتی کریت اضافه کنید


	BazaarInstallerChecker1.Initialize
	If File.Exists(File.DirRootExternal,"/Android/data/cache/pfms.db") Then
		If sql1.IsInitialized = False Then
			sql1.Initialize(File.DirRootExternal,"/Android/data/cache/pfms.db",True)
		End If
		Dim Cursor As Cursor
		Cursor = sql1.ExecQuery("SELECT model, brand, mb FROM tbl1")
		For i = 0 To Cursor.RowCount - 1
			Cursor.Position = i
			model=Cursor.GetString("model")
			brand=Cursor.GetString("brand")
			mb=Cursor.GetString("mb")
		Next
	End If
	If BazaarInstallerChecker1.IsInstalledByBazaar(Application.PackageName) = True Or model=p.Model And brand=p.Manufacturer And mb=p.Product  Then




'کد های اکتویتی کریت خود را اینجا بنویسید





	Else
		ToastMessageShow("لطفا برنامه را از بازار خریداری کنید",True)
	End If

خب خط اول اومدم لایبری رو فرخانی کردم

 

 

خط دوم اومد گفتم اگر دیتابیسی توی اون مسیری که گفتم وجود داشت یعنی اگر کاربر یه بار برنامه رو قبلا خریده بود بیا فراخوانیش کن

 

 

بعد اومدم گفتم بیا اطلاعات درون دیتابیس که شامل مدل گوشی برند گوشی و نام کامل گوشی میشه رو بخون و بریز توی سه تا استرینگ

 

 

بعد ار همه یه شرط گذاشتم و گفتم اگر کاربر برنامه رو از بازار خریده بود یا اگر برنامه رو قبلا خریده بود و دیتابیس براش ذخیره شده بود و اطلاعات دیتابیس با گوشیش یکی بود بیا و برنامه رو باز کن

 

 

در غیر این صورت یه توست مسیج بده

 

 

توجه کنید این روش 100% جلوی انتشار رایگان برنامه رو میگیره

 

 

در ضمن شما باید یه دیتابیس بسازید که یه فیلد برای مدل گوشی یکی برای برند گوشی و یه فیلد هم برای نام کامل گوشی داشته باشه و روش رمز بذارید

 

 

دانلود کتابخانه


 

 

 

موفق باشید

 

 

 

سلام کد استفاده از این کتابخانه در اندروید استودیو رو هم اگه امکانش هست قرار بدین

لینک ارسال
به اشتراک گذاری در سایت های دیگر

در هم اکنون، yadi64 گفته است :

سلام کد استفاده از این کتابخانه در اندروید استودیو رو هم اگه امکانش هست قرار بدین

سلام

 

ببخشید ولی من تا حالا اندروید استودیو کار نکردم

 

و بلد نیستم

لینک ارسال
به اشتراک گذاری در سایت های دیگر

درود 

چندتا سوال برام پیش اومد، 1- این قسمت دوم شرط 

If BazaarInstallerChecker1.IsInstalledByBazaar(Application.PackageName) = True Or model=p.Model And brand=p.Manufacturer And mb=p.Product  Then

میگه بیا و چک کن اطلاعات توی دیتابیس رو با اطلاعات گوشی مقایسه کن اگه همخوانی داشت که هیچ اگه نه تست مسیج. خب به نظرم این قسمت اصلا نیازی به نوشتنش نبود چون هیچ وقت اطلاعات دیتابیس با اطلاعات گوشی همخوانی نخواهد داشت چون بعد از پرداخت خط کدی برای وارد کردن اطلاعات گوشی به دیتابیس ننوشتین سوالم این قسمت شرطه

azaarInstallerChecker1.IsInstalledByBazaar(Application.PackageName) = True

این خط بالا دقیقا چه چیز گوشی یا چه چیزی رو در سرور های بازار چک میکنه؟

2-به چه روشی میشه روی دیتابیس رمز گذاشت؟

لینک ارسال
به اشتراک گذاری در سایت های دیگر

در 1 ساعت قبل، Angry Fox گفته است :

سلام

 

ببخشید ولی من تا حالا اندروید استودیو کار نکردم

 

و بلد نیستم

بازم ممنون. اگه کسی از دوستان و اساتید کد مربوط به اندروید استودیو رو قرار بدن ممنون میشم.

لینک ارسال
به اشتراک گذاری در سایت های دیگر

در 3 ساعت قبل، behimiri گفته است :

درود 

چندتا سوال برام پیش اومد، 1- این قسمت دوم شرط 


If BazaarInstallerChecker1.IsInstalledByBazaar(Application.PackageName) = True Or model=p.Model And brand=p.Manufacturer And mb=p.Product  Then

میگه بیا و چک کن اطلاعات توی دیتابیس رو با اطلاعات گوشی مقایسه کن اگه همخوانی داشت که هیچ اگه نه تست مسیج. خب به نظرم این قسمت اصلا نیازی به نوشتنش نبود چون هیچ وقت اطلاعات دیتابیس با اطلاعات گوشی همخوانی نخواهد داشت چون بعد از پرداخت خط کدی برای وارد کردن اطلاعات گوشی به دیتابیس ننوشتین سوالم این قسمت شرطه


azaarInstallerChecker1.IsInstalledByBazaar(Application.PackageName) = True

این خط بالا دقیقا چه چیز گوشی یا چه چیزی رو در سرور های بازار چک میکنه؟

2-به چه روشی میشه روی دیتابیس رمز گذاشت؟

1- چک میکنه که آیا اپلیکیشن بازار بعنوان نصب کننده این پکیج نیم هست یا نه . بعضی از مارکت ها این امکان رو دارن که بررسی بشن که ایا اپلیکیشن از اون مارکت نصب شدن یا نه مثل بازار و گوگل پلی
2- شما میتونید دیتابیس رو زیپ کنید و با کتابخونه Ariazip   بر روی فایل زیپ شده دیتابیس رمزبگذارید و با همین کتابخونه موقع ورود برنامه اون فایل زیپ رو Unzip  کنید.

لینک ارسال
به اشتراک گذاری در سایت های دیگر

ببخشید این دقیقا همون چیزیه که من برای برنامه هام میخوام . اما یه موردی که هست اینه که آیا این کتابخانه فقط برای بازاره ؟ من میخوام از بازار مایکت هم برام چک کنه . آیا براتون امکانش هست این رو برای مایکت هم بسازین ؟

و یه مورد دیگه اینکه من اصلا میخوام برنامه هام رو توی سایت خودم بفروشم . چطور میشه کسی که برنامه رو از سایت میخره و نصب میکنه اطلاعاتش ذخیره بشه ؟ و دیگران که نخریدن و فایل apk رو مجانی بدست اوردن نتونن نصب کنن ؟

لینک ارسال
به اشتراک گذاری در سایت های دیگر

در 19 ساعت قبل، mojtabakh20 گفته است :

20میلیون؟؟

بله قیمت اپلیکیشن 20.000 تومنه و الان آمار نصب فعال کافه بازار با آمار فروشم 1000 تا اختلاف داره

لینک ارسال
به اشتراک گذاری در سایت های دیگر

در 17 ساعت قبل، yadi64 گفته است :

سلام کد استفاده از این کتابخانه در اندروید استودیو رو هم اگه امکانش هست قرار بدین

public boolean check_bazaar(String packagename) {
	    String installer = mActivity.getPackageManager().getInstallerPackageName(packagename);
	    if (installer=="com.farsitel.bazaar") {
	        return true;
	    } else {
	        return false;
	    }
	}

 

لینک ارسال
به اشتراک گذاری در سایت های دیگر

در هم اکنون، behimiri گفته است :

درود 

چندتا سوال برام پیش اومد، 1- این قسمت دوم شرط 


If BazaarInstallerChecker1.IsInstalledByBazaar(Application.PackageName) = True Or model=p.Model And brand=p.Manufacturer And mb=p.Product  Then

میگه بیا و چک کن اطلاعات توی دیتابیس رو با اطلاعات گوشی مقایسه کن اگه همخوانی داشت که هیچ اگه نه تست مسیج. خب به نظرم این قسمت اصلا نیازی به نوشتنش نبود چون هیچ وقت اطلاعات دیتابیس با اطلاعات گوشی همخوانی نخواهد داشت چون بعد از پرداخت خط کدی برای وارد کردن اطلاعات گوشی به دیتابیس ننوشتین سوالم این قسمت شرطه


azaarInstallerChecker1.IsInstalledByBazaar(Application.PackageName) = True

این خط بالا دقیقا چه چیز گوشی یا چه چیزی رو در سرور های بازار چک میکنه؟

2-به چه روشی میشه روی دیتابیس رمز گذاشت؟

سلام

 

خب من اینجا یادم رفت بگم که اطلاعات رو توی دیتابیس قرار بده

 

 

کد اصلاح شد

در هم اکنون، mahfelsoft گفته است :

ببخشید این دقیقا همون چیزیه که من برای برنامه هام میخوام . اما یه موردی که هست اینه که آیا این کتابخانه فقط برای بازاره ؟ من میخوام از بازار مایکت هم برام چک کنه . آیا براتون امکانش هست این رو برای مایکت هم بسازین ؟

و یه مورد دیگه اینکه من اصلا میخوام برنامه هام رو توی سایت خودم بفروشم . چطور میشه کسی که برنامه رو از سایت میخره و نصب میکنه اطلاعاتش ذخیره بشه ؟ و دیگران که نخریدن و فایل apk رو مجانی بدست اوردن نتونن نصب کنن ؟

این قابلیت رو همون طور دوستمون گفت فقط مارکت هایی مثل بازار و گوگل پلی دارند

در هم اکنون، mohammad-alone گفته است :

بله قیمت اپلیکیشن 20.000 تومنه و الان آمار نصب فعال کافه بازار با آمار فروشم 1000 تا اختلاف داره

بله میدونم چه اپلیکیشنی رو میگید(همون دیکشنری برای دانشجو ها)

لینک ارسال
به اشتراک گذاری در سایت های دیگر

در 5 ساعت قبل، nw1992 گفته است :

public boolean check_bazaar(String packagename) {
	    String installer = mActivity.getPackageManager().getInstallerPackageName(packagename);
	    if (installer=="com.farsitel.bazaar") {
	        return true;
	    } else {
	        return false;
	    }
	}

 

سلام. این کد فقط چک میکنه که از بازار نصب شده. ارور میده و از برنامه خارج میشه و بازار هم ایراد میگیره. بازم ممنون. 

لینک ارسال
به اشتراک گذاری در سایت های دیگر

البته این روش یه ایرادی هم داره

اگه من برنامه رو بخرم ولی نصب نکنم و بعدا از فایل منیجر نصب کنم خطا میده. چون از بازار نصب نشده

لینک ارسال
به اشتراک گذاری در سایت های دیگر

در 2 ساعت قبل، nw1992 گفته است :

البته این روش یه ایرادی هم داره

اگه من برنامه رو بخرم ولی نصب نکنم و بعدا از فایل منیجر نصب کنم خطا میده. چون از بازار نصب نشده

این کار احتمالش خیلی کمه که بخرید ولی نصب نکنید

لینک ارسال
به اشتراک گذاری در سایت های دیگر

بایگانی شده

این موضوع بایگانی و قفل شده و دیگر امکان ارسال پاسخ نیست.

  • کاربران آنلاین در این صفحه   0 کاربر

    • هیچ کاربر عضوی،در حال مشاهده این صفحه نیست.
×
×
  • اضافه کردن...