رفتن به مطلب

کار با Reflection


مصطفی حقیقی

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

سلام خدمت همه دوستان

خب شما شده یک سری کد ها تو EClispe ببینین اما تو B4A نباشه

خب سوال پیش میاد که آیا میشه اونو تو b4a استفاده کرد

من میگم آره چرا نمیشه

Reflector در واقع کار Compile کد ها جاوا رو تو b4a انجام میده

چند نمونه هم براتون میذارم که بیشتر متوجه بشین

Sub SendSms(PhoneNumber As String, Text As String)
 Dim r As Reflector
 r.Target = r.RunStaticMethod("android.telephony.SmsManager", "getDefault", Null, Null)
 r.RunMethod4("sendTextMessage", Array As Object(PhoneNumber, Null, Text, Null, Null), _
     Array As String("java.lang.String", "java.lang.String", "java.lang.String", _
       "android.app.PendingIntent", "android.app.PendingIntent"))
End Sub

Sub deleteSMS
   Dim r As Reflector
   r.Target = r.GetContext
   r.Target = r.RunMethod("getContentResolver")
   r.RunMethod4("delete", Array As Object( _
   r.RunStaticMethod("android.net.Uri", "parse", Array As Object("content://sms/inbox"), _
   Array As String("java.lang.String")), _
   Null,Null), Array As String("android.net.Uri", "java.lang.String", "[Ljava.lang.String;"))
End Sub

Sub clearCALL_LOG
Dim r As Reflector
r.Target = r.GetContext
r.Target = r.RunMethod("getContentResolver")
Dim CONTENT_URI As Object =  r.RunStaticMethod("android.net.Uri", "parse", Array As Object("content://call_log/call"), Array As String("java.lang.String"))
Log(r.RunMethod4("delete", Array As Object(CONTENT_URI, Null, Null),   Array As String("android.net.Uri", "java.lang.String", "[Ljava.lang.String;")))
End Sub

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

که این کد ها چیه و چجور استفاده میشه

خب

Target چیزیه که داری برای کد مینویسی

مثلا تو همین b4a تارگت ما تو کد نویسی زیر میشه "Activity"

Activity.Finish

Context هم یک چیزیه که شما تو b4a اصلا باهاش برخورد ندارین که همون "this" ماست که تو activity هی eclipse استفاده میشه

runMethod ها هم بر اساس تارگت هایی که داریم برامون کد ها رو اجرا می کنن

حالا بر اساس کد ها و arg ها و نوع داده هایی که در void شون قرار می گیره از شماره های متفاوت استفاده میشه

RunStaticMethod هم برای target هایی ست که کد استاتیک دارن مثل

Uri.Parse

CreateObject هم زمانی استفاده میشه که شما بخواین یک object درست کنید مثلا یک کد مثل زیر ایجاد کنید

android.widget.TextView txt = new android.widget.TextView(this);

یک سری کد های دیگه هک هست که زیاد استفاده ندارن

ولی اگه سوالی بود حتما بپرسین جواب میدم

http://s5.picofile.com/file/8136905026/ed.rar.html

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

  • 8 ماه بعد...

سلام آقای حقیقی

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

DevicePolicyManager devicePolicyManager =
DevicePolicyManager.getSystemService(Context.DEVICE_POLICY_SERVICE);
ComponentName demoDeviceAdmin = new ComponentName(this, name of activity);

devicePolicyManager.setPasswordQuality(
demoDeviceAdmin,DevicePolicyManager.PASSWORD_QUALITY_UNSPECIFIED);
devicePolicyManager.setPasswordMinimumLength(demoDeviceAdmin, 5);

boolean result = devicePolicyManager.resetPassword("123456",
DevicePolicyManager.RESET_PASSWORD_REQUIRE_ENTRY);

Toast.makeText(this,
"button_lock_password_device..."+result,
Toast.LENGTH_LONG).show();

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

بایگانی شده

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

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

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