رفتن به مطلب
  • 0

بهینه ترین روش برای ثبت نام بدون سریال(IMEI) دستگاه


fun_code

سوال

سلام دوستان

بنده در برنامه خودم زمان ثبت نام سریال دستگاه رو میگیرم و در سرور ذخیره میکنم تا یک دستگاه تنها بتونه یک مرتبه ثبت نام کنه.

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

از زمانی که پیام مناسبی مبنی بر دلیل درخواست فعال سازی این دسترسی به کاربر نمایش داده میشه تعداد ثبت نام ها نصف شده !

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

شما روشی بهتری رو سراغ دارید که دستگاه ها رو محدود به یک مرتبه ثبت نام کنم ؟ یا اینکه سریال رو بگیرم بدون نیاز به دسترسی خواندن وضعیت تلفن ؟

پیشاپیش از راهنمایی شما سپاسگزارم

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

9 پاسخ به این سوال تاکنون داده شده است

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

سلام

یه بازی دیدم با نام سوبرا ، زمان ثبت نام سریال دستگاه رو ذخیره میکنه در سرور ، اما دسترسی Phone هم نیاز نداره ! (دیدم در بخش نظرات کاربر در گوگل پلی ، از طریق سریالش که در گوگل پلی مشخصه ، اکانتش رو پیدا کرده بود)

یعنی چطور سریال رو بدون دسترسی میگیره ؟!!!!

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

در 13 ساعت قبل، fun_code گفته است :

سلام دوستان

بنده در برنامه خودم زمان ثبت نام سریال دستگاه رو میگیرم و در سرور ذخیره میکنم تا یک دستگاه تنها بتونه یک مرتبه ثبت نام کنه.

 

خوب از فون آِ دی استفاده کن با کتاب خانه فون

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

در 8 ساعت قبل، softir گفته است :

خوب از فون آِ دی استفاده کن با کتاب خانه فون

سلام

از همین طریق هم عمل میکنم.

Private ph As PhoneId
ph.GetDeviceId

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

و همین امر منجر به ارور دریافت مجوز در زمان اجرا میشه و باید از کاربر زمان اجرا مجوز بگیریم.

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

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

Pushe.getPusheId()

این کد منحصر به فرد هستش و جدای از این موضوع می تونی در موارد خاص با همون مخاطب از طریق آیدی پوشه ارتباط برقرار کنی
موفق باشی

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

سلام از کد زیر استفاده کن ببین میشه ؟

	Dim nativeMe As JavaObject : nativeMe.InitializeContext

کد جاوا 

   * Gets imei.
   *
   * @return the imei
   */
  public String getIMEI() {
    tm = (TelephonyManager) BA.applicationContext.getSystemService(Context.TELEPHONY_SERVICE);
    String result = initialVal;
    boolean hasReadPhoneStatePermission =
        BA.applicationContext.checkCallingOrSelfPermission(Manifest.permission.READ_PHONE_STATE)
            == PackageManager.PERMISSION_GRANTED;
    try {
      if (hasReadPhoneStatePermission) result = tm.getDeviceId();
    } catch (Exception e) {
      e.printStackTrace();
    }

    if (result == null || result.length() == 0) {
      result = initialVal;
    }
    return result;
  }  
  
  
  /**
'    Log("IMEI = " & nativeMe.RunMethod("getIMEI", Null))

 

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

در در 1397/03/11, 15:37:49، miling گفته است :

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


Pushe.getPusheId()

این کد منحصر به فرد هستش و جدای از این موضوع می تونی در موارد خاص با همون مخاطب از طریق آیدی پوشه ارتباط برقرار کنی
موفق باشی

سلام

بنده به دلایلی از پوشه استفاده نمیکنم.

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

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

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

در 19 ساعت قبل، mostafa.kasiri گفته است :

سلام از کد زیر استفاده کن ببین میشه ؟


	Dim nativeMe As JavaObject : nativeMe.InitializeContext

کد جاوا 


   * Gets imei.
   *
   * @return the imei
   */
  public String getIMEI() {
    tm = (TelephonyManager) BA.applicationContext.getSystemService(Context.TELEPHONY_SERVICE);
    String result = initialVal;
    boolean hasReadPhoneStatePermission =
        BA.applicationContext.checkCallingOrSelfPermission(Manifest.permission.READ_PHONE_STATE)
            == PackageManager.PERMISSION_GRANTED;
    try {
      if (hasReadPhoneStatePermission) result = tm.getDeviceId();
    } catch (Exception e) {
      e.printStackTrace();
    }

    if (result == null || result.length() == 0) {
      result = initialVal;
    }
    return result;
  }  
  
  
  /**

'    Log("IMEI = " & nativeMe.RunMethod("getIMEI", Null))

 

سلام

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

استفاده میکنم و نتیجه رو اعلام میکنم.

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

بنده کدهای زیر رو نوشتم :

Sub get_imei
	Private NativeMe As JavaObject
	NativeMe.InitializeContext
	Return NativeMe.RunMethod("getIMEI", Null)
End Sub

#if java
  Public String getIMEI()
  {
    tm = (TelephonyManager) ba.applicationContext.getSystemService(Context.TELEPHONY_SERVICE);
    String result = initialVal;
    boolean hasReadPhoneStatePermission = ba.applicationContext.checkCallingOrSelfPermission(Manifest.permission.READ_PHONE_STATE) == PackageManager.PERMISSION_GRANTED;
    Try
	{
      If (hasReadPhoneStatePermission) result = tm.getDeviceId();
    }
	Catch (Exception e)
	{
      e.printStackTrace();
    }

    If (result == Null || result.length() == 0)
	{
      result = initialVal;
    }
    Return result;
  }  
#End If

از تابع get_imei هم در کدها استفاده کردم اما ارور زیر رو نمایش میده ، فکر نمیکنم کدهای جاوا نیاز به ; داشته باشه !

Compiling generated Java code.    Error
B4A line: 104
End Sub
javac 1.8.0_102
src\test\test_b4a\Main.java:1322: error: ';' expected
  Public String getIMEI()
               ^
1 error

 

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

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

سلام

بنده به دلایلی از پوشه استفاده نمیکنم.

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

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

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

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

بایگانی شده

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

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

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