اطلاعیه

کاربر گرامی

به انجمن برنامه نویسی AnswerCenter.ir خوش آمدید

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


  • 0
Crashday

تشخیص گرفته شدن اسکرین شات در برنامه

سوال

سلام،

وقت بخیر،

 

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

ممنون میشم در حد توان راهنمایی کنید.

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


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

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

  • 0
در 4 ساعت قبل، Crashday گفته است :

سلام،

وقت بخیر،

 

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

ممنون میشم در حد توان راهنمایی کنید.

#If Java
import android.content.Context;
import android.view.WindowManager.*;
public void _onCreate() {
this.getWindow().setFlags(LayoutParams.FLAG_SECURE, LayoutParams.FLAG_SECURE);
}
#End If
Dim r As Reflector
Dim j As JavaObject
j.InitializeContext.RunMethod("DisableScreenShot",Array As Object(r.GetActivity))

 

 

این نمیزاره شات بگیره

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


لینک به ارسال
به اشتراک گذاری در سایت های دیگر
  • 0
در 54 دقیقه قبل، Crashday گفته است :

 

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

#If Java
import android.content.Context;
import android.view.WindowManager.*;
public void DisableScreenShot() {
this.getWindow().setFlags(LayoutParams.FLAG_SECURE, LayoutParams.FLAG_SECURE);
}
#End If

 

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


لینک به ارسال
به اشتراک گذاری در سایت های دیگر
  • 0
در 1 ساعت قبل، محمدرضا شاهپیری گفته است :

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


#If Java
import android.content.Context;
import android.view.WindowManager.*;
public void DisableScreenShot() {
this.getWindow().setFlags(LayoutParams.FLAG_SECURE, LayoutParams.FLAG_SECURE);
}
#End If

 

 

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

سورس رو هم پیوست کردم.

 

err.png.6efa148595ec744d5283864ccb60b378.png

disable screnshot.zip

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


لینک به ارسال
به اشتراک گذاری در سایت های دیگر
  • 0
در 12 دقیقه قبل، محمدرضا شاهپیری گفته است :

به صورت زیر تغییر بدین


j.InitializeContext.RunMethod("DisableScreenShot",null)

 

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

تست شده روی گوشی سامسونگ با اندروید 5.0.2

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


لینک به ارسال
به اشتراک گذاری در سایت های دیگر
  • 0
در 22 ساعت قبل، Crashday گفته است :

سلام،

وقت بخیر،

 

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

ممنون میشم در حد توان راهنمایی کنید.

 

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

جلوگیری از گرفته شدن اسکرین شات (ScreenShot) در اکتیویتی شما

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

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

 


Dim jo As JavaObject
jo.InitializeContext
jo.RunMethodJo(“getWindow”,Null).RunMethod("setFlags",Array(8192, 8192))

 

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


لینک به ارسال
به اشتراک گذاری در سایت های دیگر
  • 0
در 56 دقیقه قبل، Crashday گفته است :

 

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

#If Java
import android.content.Context;
import android.view.WindowManager.*;
public void _onCreate() {
this.getWindow().setFlags(LayoutParams.FLAG_SECURE, LayoutParams.FLAG_SECURE);
}
#End If

 

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


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

مطالب شما نیاز است به تایید مدیران برسد

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

×   شما در حال چسباندن محتوایی با قالب بندی هستید.   حذف قالب بندی

  تنها استفاده از ۷۵ اموجی مجاز می باشد.

×   لینک شما به صورت اتوماتیک جای گذاری شد.   نمایش به عنوان یک لینک به جای

×   محتوای قبلی شما بازگردانی شد.   پاک کردن محتوای ویرایشگر

×   شما مستقیما نمی توانید تصویر خود را قرار دهید. یا آن را اینجا بارگذاری کنید یا از یک URL قرار دهید.