mpnbooks 4 ارسال شده در 24 مرداد، ۱۳۹۵ اشتراک گذاری ارسال شده در 24 مرداد، ۱۳۹۵ سلام و شب همگی بخیر چطور می تونم، لیست برنامه های نصب شده رو گوشی رو، که قادر به خواندن پیامک ها هستند رو داشته باشم؟ (یعنی در قسمت دسترسی ها خواندن پیامک ها مشاهده می شود) مثلا تمامی برنامه هایی که این دسترسی برایشان وجود داره رو داخل یه لیست بهم بده؟ لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
محمدرضا شاهپیری 5,579 ارسال شده در 25 مرداد، ۱۳۹۵ اشتراک گذاری ارسال شده در 25 مرداد، ۱۳۹۵ خیلی سادس که با فرض اینکه همه کارهای بالا رو انجام دادی اول یه لیست ویو اضافه کن به اکتیویتی بعد کتابخونه phone رو تیک بزن و با استفاده از پکیجهایی که تو فایل مپ ذخیره کردی مثلا اسم برنامه ها رو توی یه لیست ویو نمایش بده این یه مثال واسه گرفتن لیست برنامه هایی که دارای دسترسی اینترنت هست #Region Project Attributes #ApplicationLabel: B4A Example #VersionCode: 1 #VersionName: 'SupportedOrientations possible values: unspecified, landscape or portrait. #SupportedOrientations: unspecified #CanInstallToExternalStorage: False #End Region #If java import java.util.List; import android.content.pm.ApplicationInfo; import android.content.pm.PackageInfo; import android.content.pm.PackageManager; import android.content.pm.PackageManager.NameNotFoundException; import anywheresoftware.b4a.BA; import anywheresoftware.b4a.objects.collections.Map.MyMap; public MyMap getpermition(String permition){ PackageManager pm = BA.applicationContext.getPackageManager(); MyMap requestedPermission=new MyMap(); List<ApplicationInfo> packages = pm.getInstalledApplications(PackageManager.GET_META_DATA); for (ApplicationInfo applicationInfo : packages) { //Log.d("test", "App: " + applicationInfo.name + " Package: " + applicationInfo.packageName); try { PackageInfo packageInfo = pm.getPackageInfo(applicationInfo.packageName, PackageManager.GET_PERMISSIONS); //Get Permissions String[] requestedPermissions = packageInfo.requestedPermissions; if(requestedPermissions != null) { for (int i = 0; i < requestedPermissions.length; i++) { //Log.d("test", requestedPermissions[i]); if (requestedPermissions[i].equalsIgnoreCase(permition)){ requestedPermission.put(i,packageInfo.packageName); } } } } catch (NameNotFoundException e) { e.printStackTrace(); } } return requestedPermission; } #End If #Region Activity Attributes #FullScreen: False #IncludeTitle: True #End Region Sub Process_Globals 'These global variables will be declared once when the application starts. 'These variables can be accessed from all modules. End Sub Sub Globals Private ListView1 As ListView Dim p As PackageManager Dim joa As JavaObject Dim m As Map End Sub Sub Activity_Create(FirstTime As Boolean) 'Do not forget to load the layout file created with the visual designer. For example: Activity.LoadLayout("main") m.Initialize m=joa.InitializeContext.RunMethod("getpermition",Array As Object("android.permission.INTERNET")) For i=0 To m.Size-1 ListView1.AddSingleLine(p.GetApplicationLabel(m.GetValueAt(i))) Next End Sub Sub Activity_Resume End Sub Sub Activity_Pause (UserClosed As Boolean) End Sub لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
مهدی ایزدی 9,203 ارسال شده در 24 مرداد، ۱۳۹۵ اشتراک گذاری ارسال شده در 24 مرداد، ۱۳۹۵ سلام تا الان ندیدم بشه دسترسی برنامه هارو خوند اگر بشه خوند همچین کاری که شما میگید امکان پذیر هستش متاسفانه فکر نمیکنم همچین امکانی وجود داشته باشه لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
محمدرضا شاهپیری 5,579 ارسال شده در 24 مرداد، ۱۳۹۵ اشتراک گذاری ارسال شده در 24 مرداد، ۱۳۹۵ تو جاوا هر کاری امکان پذیره مهدی جان متد زیر رو به اکتیویتی اضافه کن #If java import java.util.List; import android.content.pm.ApplicationInfo; import android.content.pm.PackageInfo; import android.content.pm.PackageManager; import android.content.pm.PackageManager.NameNotFoundException; import anywheresoftware.b4a.BA; import anywheresoftware.b4a.objects.collections.Map.MyMap; public MyMap getpermition(String permition){ PackageManager pm = BA.applicationContext.getPackageManager(); MyMap requestedPermission=new MyMap(); List<ApplicationInfo> packages = pm.getInstalledApplications(PackageManager.GET_META_DATA); for (ApplicationInfo applicationInfo : packages) { try { PackageInfo packageInfo = pm.getPackageInfo(applicationInfo.packageName, PackageManager.GET_PERMISSIONS); String[] requestedPermissions = packageInfo.requestedPermissions; if(requestedPermissions != null) { for (int i = 0; i < requestedPermissions.length; i++) { if (requestedPermissions[i].equalsIgnoreCase(permition)){ requestedPermission.put(i,packageInfo.packageName); } } } } catch (NameNotFoundException e) { e.printStackTrace(); } } return requestedPermission; } #End If این متد از نوع map هست و ورودی اون هم یه استرینگ که همون دسترسی مورد نظر هست دسترسی زیر رو به منیفست اضافه کن AddPermission(android.permission.GET_TASKS) حالا کافیه یه متغیر از نوع map تعریف کنی و با استفاده از کتابخونه javaobject متد رو صدا بزنی با دسترسی که میخوای مثلا اینترنت رو مثال بزنیم Dim joa As JavaObject Dim m As Map m.Initialize m=joa.InitializeContext.RunMethod("getpermition",Array As Object("android.permission.INTERNET")) با اجرای این متد پکیج نیم تمامی برنامه هایی که دارای دسترسی اینترنت هست تو یه فایل map ذخیره میشه پکیج نیم برنامه ها رو که داشته باشی میتونی هر کاری بکنی دیگه، مثلا با کتابخونه phone اسم و نام و ... رو میتونی دربیاری لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
mpnbooks 4 ارسال شده در 24 مرداد، ۱۳۹۵ سازنده اشتراک گذاری ارسال شده در 24 مرداد، ۱۳۹۵ تو جاوا هر کاری امکان پذیره مهدی جان متد زیر رو به اکتیویتی اضافه کن #If java import java.util.List; import android.content.pm.ApplicationInfo; import android.content.pm.PackageInfo; import android.content.pm.PackageManager; import android.content.pm.PackageManager.NameNotFoundException; import anywheresoftware.b4a.BA; import anywheresoftware.b4a.objects.collections.Map.MyMap; public MyMap getpermition(String permition){ PackageManager pm = BA.applicationContext.getPackageManager(); MyMap requestedPermission=new MyMap(); List<ApplicationInfo> packages = pm.getInstalledApplications(PackageManager.GET_META_DATA); for (ApplicationInfo applicationInfo : packages) { try { PackageInfo packageInfo = pm.getPackageInfo(applicationInfo.packageName, PackageManager.GET_PERMISSIONS); String[] requestedPermissions = packageInfo.requestedPermissions; if(requestedPermissions != null) { for (int i = 0; i < requestedPermissions.length; i++) { if (requestedPermissions[i].equalsIgnoreCase(permition)){ requestedPermission.put(i,packageInfo.packageName); } } } } catch (NameNotFoundException e) { e.printStackTrace(); } } return requestedPermission; } #End If این متد از نوع map هست و ورودی اون هم یه استرینگ که همون دسترسی مورد نظر هست دسترسی زیر رو به منیفست اضافه کن AddPermission(android.permission.GET_TASKS) حالا کافیه یه متغیر از نوع map تعریف کنی و با استفاده از کتابخونه javaobject متد رو صدا بزنی با دسترسی که میخوای مثلا اینترنت رو مثال بزنیم Dim joa As JavaObject Dim m As Map m.Initialize m=joa.InitializeContext.RunMethod("getpermition",Array As Object("android.permission.INTERNET")) با اجرای این متد پکیج نیم تمامی برنامه هایی که دارای دسترسی اینترنت هست تو یه فایل map ذخیره میشه پکیج نیم برنامه ها رو که داشته باشی میتونی هر کاری بکنی دیگه، مثلا با کتابخونه phone اسم و نام و ... رو میتونی دربیاری سلام و ممنون بابت پاسختون (کاری که خواستم رو میشه کرد یعنی تو یک برنامه دیدم ولی نحوه انجام دادنش رو نمیدونم) من برنامه نویس نیستم و فقط اینجا _(answercenter) دارم آموزش های اساتید رو نگاه می کنم، در این مورد متوجه نشدم چیکار باید بکنم، اون متد رو به اکتیویتی اضافه کردم، دسترسی رو هم به منیفست، و همینطور متغیر از نوع map ولی باز نمیتونم اون لیست برنامه های دارای دسترسی مثلا اینترنت رو داشته باشم، اگه امکانش هست تو سورس توضیح بدین بسیار بسیار ممنون میشم. باتشکر لینک ارسال به اشتراک گذاری در سایت های دیگر تنظیمات بیشتر اشتراک گذاری ...
سوال
mpnbooks 4
لینک ارسال
به اشتراک گذاری در سایت های دیگر
4 پاسخ به این سوال تاکنون داده شده است
ارسالهای توصیه شده
بایگانی شده
این موضوع بایگانی و قفل شده و دیگر امکان ارسال پاسخ نیست.