آموزش های این وب سایت به صورت رایگان در دسترس است. اطلاعات بیشتر
بروز خطا
   [message]
اشتراک در سوال
رای ها
[dataList]

آیا می دانید(...)

Shadow  9 سال پیش  9 سال پیش
+4 0

خوب می خوایم توی این قسمت یه چالش بزاریم :

آیا می دانید چطور وقتی ما یه مطلبی را می خوایم به اشتراک بزاریم توی یه اپ یا روی یه لینک کلیک می کنیم یا می خوایم ایمیلش کنیم اندروید چجوری می فهمه که کدوم اپ ها مناسب هستند برای این کار؟!!!!!

0 0
باید توی منیفست یه چیزایی رو اضافه کنید که مشخص بشه برنامه شما یه دانلودره یا لانچر یا... که در مواقع لزوم بالا بیاد. دقیقا یادم نیست چیه ولی توی Stackoverflow سرچ کنید کدشو پیدا می کنید. (9 سال پیش)
+1 0
از intent filter ها استفاده میشود (9 سال پیش)
0 0
آقای حسینی میشه لطفا توضیح بدید ؟ (9 سال پیش)
+1 0
برای دادن این امکان به برنامه های دیگه که بتونم یک اکتیویتی رو در برنامتون باز کند باید از intent filter ها در manifest در اون اکتیویتی استفاده کنید. در intent filter مشخص میکنید که برنامه های دیگه برای چه کاری میتونن اکتیویتی رو باز کنه مثلا اشتراک گذاشتن پیام( فرضا برنامه شما شبکه اجتماعی هست) و همچنین چه اطلاعاتی رو باید به اکتیویتی ارسال کنن که تو این مثال میشه text. حالا اینکه اندروید از کجا میفهمه برنامه شمارو در لیست برنامه های پیشنهادی(زمانی که کاربر می خورد یک متن رو اشتراک بزاره) نشون بده اینه که وقتی کاربر برنامه رو نصب می کنه از طریق intent filter سیستم عامل متوجه میشه که برنامه میتونه متن به اشتراک بزاره و برنامه رو توی اطلاعاتش همراه با برنامه های دیگه که چنین امکانی رو دارن ذخیره می کنه. برای توضیح کامل و بهر یاد گرفتن بهترین سایت مستندات گوگل هست لینک (9 سال پیش)
0 0
ممنون از جوابی صحیح شما . حالا جواب : خودم -> گفتیم که مثلا توی یه اپی شما می خواین مثلا یه متن رو به اشتراک بزارید وقتی روی share میزنید یه دیالوگ باز میشه و چندتا اپ رو میاره حالا اندروید ازکجا تشخیص میده که این برنامه ها این قابلیت رو دارند : سیستم عامل اندروید میاد میگرده و هر کجا (اپ) که به اکشن تعریف شده مورد نظر رسید اون اپ رو به کاربر نشون میده . کدهاشم که دوستان زحمت کشیدن گذاشتن. (9 سال پیش)
 برای این سوال 2 پاسخ وجود دارد.
پاسخ به سوال 
sami  9 سال پیش
+6 0

 اگه بخوایم نرم افزاری که ما می نویسم هم توی لیست نرم افزارایی که می تونن مثلا یه عکس رو به اشتراک بذارن،توسط سیستم عامل اندروید، نمایش داده بشه،باید از intent-filter استفاده کنیم.

برای مثال باید یه همچین چیزی رو تو AndroidManifest بنویسیم :


<intent-filter>
<action android:name="android.intent.action.SEND" />
<category android:name="android.intent.category.DEFAULT" />
<data android:mimeType="image/*"/>
</intent-filter>
 

این کار باعث میشه که وقتی که کاربر بخواد یه عکس رو به اشتراک بذاره،نرم افزار شما هم توی لیست اشتراک نمایش داده بشه.(البته باید کدای لازم برای دریافت اون عکس ارسالی از اینتنت ، رو هم توی نرم افزارتون بنویسید...).

سایر mimeType ها :

برای فایل صوتی : "*/audio"

برای فایل تصویری : "*/video"

و ...

پاسخ به سوال 
Criss  9 سال پیش
+3 0

برای تشخیص لینک ها برای اون اکتیوتی که باید Intent رو بگیره بصورت زیر کد میزنید :

           <activity
android:name="com.freestyler.satrap.Acivity.ActivityNews"
android:configChanges="keyboard|keyboardHidden|orientation"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.VIEW" >
</action>

<category android:name="android.intent.category.DEFAULT" >
</category>
<category android:name="android.intent.category.BROWSABLE" >
</category>

<data
android:host="kangannews.ir"
android:scheme="http" >
</data>
<data
android:host="salas.ir"
android:scheme="http" >
</data>
</intent-filter>
</activity>

بصورت زیر هم دیتا رو دریافت میکنید در اکتیوتی مورد نظر :

     Uri uri = intent.getData();

 


پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .