رفتن به مطلب

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

سلام

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

الان این فرصت چند ساعته رو غنیمت دونستم و گفتم یک نمونه از کار با ContentChooser  که برای انتخاب فایل با هر Type واسشون قرار بدم.

دوستان مشکلی که در استفاده از این کلاس که مربوط به کتابخونه Phone  هستش داشتن این بود که نمیتونستن مسیر دایرکتوری و اسم فایل رو در بیارن و توی رویداد Result آرکومان های Dir  و Filename  یک رشته بر میگرونه که واسمون مبهم بود.و از همین جهت اقای Erel  خودشون تابعی رو برای این کار نوشته بودند که میاد یکسری کار هارو انجام میده و اسم فایل و مسیرش رو به ما بر میگردونه ( Return )

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

امیدوارم به کارتون بیاد

رمز فایل : basic4android.org

موفق مؤید باشید.

 

http://s6.picofile.com/file/8212268500/Get_Uri_In_ContentChooser.rar.html

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

  • 3 هفته بعد...

سلام

ممنون ولی داخل اندروید 5 ارور میده بقیه رو نمیدونم

درود

 

ضمن تشکر از اقای ارتا و اقای Erel :D

 

میلاد جان دسترسی زیرو از منیفست ادیتور اظافه کن مشکل حل میشه : 

AddPermission("android.permission.READ_EXTERNAL_STORAGE")
لینک ارسال
به اشتراک گذاری در سایت های دیگر

  • 2 هفته بعد...

سلام

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

توی یکیشون یه سورس واسه همین کانتنت چوزر درست کردم خیلی واضح همه چی رو نشون داده

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

  • 1 سال بعد...

دوستان از اینکه پست قدیمی رو میارم بالا عذرمیخوام.نمیخاستم پست جدید بزنم.چون ظاهرا خیلی ها این مشکل رو دارن و همینجا حلش بکنیم.

تو اندروید 5 این موضوع کار نمیکنه تو Log ارور زیر میاد و بجای آدرس فایل مقدار خالی برمیگرده .

java.lang.NullPointerException: name == null
    at java.io.File.<init>(File.java:150)
    at anywheresoftware.b4a.objects.streams.File.Size(File.java:121)
    at com.eboo.ocr.mainmenu._choose_result(mainmenu.java:644)
    at java.lang.reflect.Method.invoke(Native Method)
    at java.lang.reflect.Method.invoke(Method.java:372)
    at anywheresoftware.b4a.BA.raiseEvent2(BA.java:169)
    at anywheresoftware.b4a.BA.raiseEvent(BA.java:153)
    at anywheresoftware.b4a.phone.Phone$ContentChooser$1.ResultArrived(Phone.java:843)
    at anywheresoftware.b4a.BA$4.run(BA.java:513)
    at anywheresoftware.b4a.BA.setActivityPaused(BA.java:398)
    at com.eboo.ocr.mainmenu$ResumeMessage.run(mainmenu.java:296)
    at android.os.Handler.handleCallback(Handler.java:739)
    at android.os.Handler.dispatchMessage(Handler.java:95)
    at android.os.Looper.loop(Looper.java:135)
    at android.app.ActivityThread.main(ActivityThread.java:5910)
    at java.lang.reflect.Method.invoke(Native Method)
    at java.lang.reflect.Method.invoke(Method.java:372)
    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1405)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1200)

 

ضمنا من این کد رو هم به Manifest اضافه کردم . برای اندروید 4 خوبه کامل.برای اندروید 5 انتخاب از توی گالری هم خوبه.ولی اگر بجای گالری قسمت دانلودهای خود گوشی رو بزنه و از فایل منیجر استفاده نکنه و فایل انتخاب کنه کرش میکنه.کد زیر هم اضافه شده:

AddPermission("android.permission.READ_EXTERNAL_STORAGE")

راه حلی برای این مشکل دارین؟آیا براتون پیش اومده ؟

البته من فکر میکنم برای اندروید 5 نباید کد به این شکل باشه :

UriString.StartsWith("content://com.android.providers.media.documents")

اگر ممکنه راهنمایی کنین.

ممنون

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

  • 9 ماه بعد...
در در 1395/10/30, 11:29:50، mfg1372 گفته است :

دوستان از اینکه پست قدیمی رو میارم بالا عذرمیخوام.نمیخاستم پست جدید بزنم.چون ظاهرا خیلی ها این مشکل رو دارن و همینجا حلش بکنیم.

تو اندروید 5 این موضوع کار نمیکنه تو Log ارور زیر میاد و بجای آدرس فایل مقدار خالی برمیگرده .


java.lang.NullPointerException: name == null
    at java.io.File.<init>(File.java:150)
    at anywheresoftware.b4a.objects.streams.File.Size(File.java:121)
    at com.eboo.ocr.mainmenu._choose_result(mainmenu.java:644)
    at java.lang.reflect.Method.invoke(Native Method)
    at java.lang.reflect.Method.invoke(Method.java:372)
    at anywheresoftware.b4a.BA.raiseEvent2(BA.java:169)
    at anywheresoftware.b4a.BA.raiseEvent(BA.java:153)
    at anywheresoftware.b4a.phone.Phone$ContentChooser$1.ResultArrived(Phone.java:843)
    at anywheresoftware.b4a.BA$4.run(BA.java:513)
    at anywheresoftware.b4a.BA.setActivityPaused(BA.java:398)
    at com.eboo.ocr.mainmenu$ResumeMessage.run(mainmenu.java:296)
    at android.os.Handler.handleCallback(Handler.java:739)
    at android.os.Handler.dispatchMessage(Handler.java:95)
    at android.os.Looper.loop(Looper.java:135)
    at android.app.ActivityThread.main(ActivityThread.java:5910)
    at java.lang.reflect.Method.invoke(Native Method)
    at java.lang.reflect.Method.invoke(Method.java:372)
    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1405)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1200)

 

ضمنا من این کد رو هم به Manifest اضافه کردم . برای اندروید 4 خوبه کامل.برای اندروید 5 انتخاب از توی گالری هم خوبه.ولی اگر بجای گالری قسمت دانلودهای خود گوشی رو بزنه و از فایل منیجر استفاده نکنه و فایل انتخاب کنه کرش میکنه.کد زیر هم اضافه شده:


AddPermission("android.permission.READ_EXTERNAL_STORAGE")

راه حلی برای این مشکل دارین؟آیا براتون پیش اومده ؟

البته من فکر میکنم برای اندروید 5 نباید کد به این شکل باشه :


UriString.StartsWith("content://com.android.providers.media.documents")

اگر ممکنه راهنمایی کنین.

ممنون

سلام

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

کسی راه حلی براش پیدا نکرده ؟
راه بدون ارور برای انتخاب یک فایل کسی سراغ نداره ؟

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

بایگانی شده

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

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

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