رفتن به مطلب

باز کردن فایل با intent


امین شاهدی

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

با سلام . یه آموزش دیگه راجع به اینتنت واسه باز کردن یک فایل که فکر نکنم جای دیگه بتونین اینو پیدا کنین... D:

مثلا باز کردن یه عکس با برنامه های خود گوشی مثل gallery , Photos یا ....

خوب کد به این صورت است :


Dim i As Intent
Dim q As String
File.Copy(File.DirAssets,"1.jpg",File.DirRootExternal,"1.jpg")
q="file://" & File.DirRootExternal&"/"&"1.jpg"
i.Initialize(i.ACTION_VIEW,q)
i.SetType("image/jpeg")
StartActivity(i)

توضیح:

خط1. یک متغیر intent به اسم i تعریف کردیم

خط2. یک متغیر string به اسم q تعریف کردیم که آدرس فایل رو بهش بدیم

خط3. گفتیم یه فایل رو از dirassest به DirRootExternal کپی کنه

نکته : فایل های با آدرس DirAssest یا DirInternal رو نمیشه آدرس داد چون این فایل ها private و گوشی نمیتونه بهش دسترسی داشته باشه واسه این کار اول فایل رو کپی کردیم به پوشه مموری گوشی

خط4. متن q که همون آدرس فایل رو رو تعریف کردیم

نکته : حتما قبل آدرس باید file:// باشه تا اینتنت بتونه اونو از url تشخیص بده به جای این کد میتونین از File.Combine هم استفاده کنین که راحت تره ولی اول اونم باید file:// باشه

خط5. اینتنت رو initialize کردیم با اکشن view و آدرس q

نکته : اگه خواستین یه فایل edit شه مثلا همین فایل jpg با جای ACTION_VIEW از ACTION_EDIT استفاده میکنیم تا از برنامه های مثل photo editor یا line Camera و... استفاده شه

خط6: نوع فایل رو تعریف میکنیم

نکته: هر فایل نوع مخصوص خوشدو داره که باید از طریق MIME Type اونو به اینتنت تعریف کنیم برای مثال application/zip برای فایل های زیپ یا text/plain برای فایل های txt

پایین این سایت لیست تمامی MIME Type ها داده شده :

http://www.freeformatter.com/mime-types-list.html

نکنه2: اگه خواستین نوع کلی رو فقط مشخص کنید و پسوند اونو نگید مثلا هر نوع image به این صورت MIME Type رو وارد میکنیم : Image/*

خط 7 : اینجام که گفتیم intent رو اجرا کنه .

امید وارم مفید بوده باشه

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

  • 1 ماه بعد...

درود بر شما

هم تکه کد مختصر و مفید بود و هم لینک بسیار خوبی دادید... *همینه*<iframe style="display: none; width: 0px; height: 0px;" scrolling="no" class="igtranslator-iframe" src="about:blank" frameborder="0"></iframe>

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

  • 1 ماه بعد...
  • 1 سال بعد...

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

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

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

بایگانی شده

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

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

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