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

نمایش برنامه ها


amirmahdi3744

سوال

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

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

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

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

سلام

یک مثال ساده :

Dim Lst As List
Lst.Initialize
Lst = getLauncherApplications
For i = 0 To Lst.Size - 1
 ListView1.AddSingleLine(Lst.Get(i))
Next

یک متغییر لیست تعریف کردیم مقادیر رو ریختیم داخل لیست و توی لیست ویو اضافش کردیم.

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

Sub getLauncherApplications As List Dim intnt As Intent Dim ref As Reflector Dim lst As List Dim result As List intnt.Initialize(intnt.ACTION_MAIN, "") intnt.AddCategory("android.intent.category.LAUNCHER") ref.Target = getPackageManager 'public abstract List queryIntentActivities(Intent intent, int flags) Dim args(2) As Object Dim types(2) As String args(0) = intnt args(1) = 0 types(0) = "android.content.Intent" types(1) = "java.lang.int" lst = ref.RunMethod4("queryIntentActivities", args, types) 'List result.Initialize For Each resolveInfo As Object In lst ref.Target = resolveInfo ref.Target = ref.GetField("activityInfo") result.Add(ref.GetField("applicationInfo")) Next Return result End Sub 'retrieves android.content.pm.PackageManager Sub getPackageManager As Object Dim ctxObj As Reflector ctxObj.Target = ctxObj.GetContext Return ctxObj.RunMethod("getPackageManager") End Sub

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

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

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

سلام

ببنید دوستم هرجای که دوست دارید می تونید از کدی که دوستمون قرار دادن استفاده کنید

توی رویداد کریت یا رویداد کلیک یک دکمه

کد ها هم در قالب یک تابع با مقدار بازگشتی هستش،مقدار بازگشتی هم از نوع List  هستش

شما باید یک متغییر از نوع لیست تعریف کنید و مقادیر رو مثلا داخل لیست ویو نمایش بدید.

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

یه سر به این تاپیک بزنید:

https://www.b4x.com/android/forum/threads/my-launcher-run-your-apps.41625/#content

 

اینجا گفتن که با این کدها میتونید لیست برنامه هارو بگیرید:

Sub getLauncherApplications As List
    Dim intnt As Intent
    Dim ref As Reflector
    Dim lst As List
    Dim result As List

    intnt.Initialize(intnt.ACTION_MAIN, "")
    intnt.AddCategory("android.intent.category.LAUNCHER")
  
    ref.Target = getPackageManager
  
    'public abstract List<ResolveInfo> queryIntentActivities(Intent intent, int flags)
    Dim args(2) As Object
    Dim types(2) As String
    args(0) = intnt
    args(1) = 0
    types(0) = "android.content.Intent"
    types(1) = "java.lang.int"
    lst = ref.RunMethod4("queryIntentActivities", args, types) 'List<ResolveInfo>

    result.Initialize
  
    For Each resolveInfo As Object In lst
        ref.Target = resolveInfo
        ref.Target = ref.GetField("activityInfo")
        result.Add(ref.GetField("applicationInfo"))
    Next
  
    Return result
End Sub

'retrieves android.content.pm.PackageManager
Sub getPackageManager As Object
   Dim ctxObj As Reflector
   ctxObj.Target = ctxObj.GetContext
   Return ctxObj.RunMethod("getPackageManager")
End Sub

تست کنین و خبرشو بدید

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

بایگانی شده

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

مهمان
این موضوع برای عدم ارسال قفل گردیده است.
  • کاربران آنلاین در این صفحه   0 کاربر

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