برنامه نویسی اندروید - دانشگاه صنعتی قم

این وبلاگ کانال ارتباطی با دانشجویان درس«برنامه نویسی موبایل» دانشگاه صنعتی قم می باشد.

برنامه نویسی اندروید - دانشگاه صنعتی قم

این وبلاگ کانال ارتباطی با دانشجویان درس«برنامه نویسی موبایل» دانشگاه صنعتی قم می باشد.

محتویات این وبلاگ با هدف آموزش اندروید در دوره درسی "برنامه نویسی موبایل" در دانشگاه صنعتی قم توسط اینجانب گردآوری شده است.
تعداد زیادی از مطالب ترجمه شده در این وبلاگ توسط دانشجویان دانشگاه صنعتی قم به عنوان پروژه های این درس ترجمه شده است.
در صورتی که تصمیم به تماس با من دارید، می توانید از طریق آدرس ایمیل qut دات android در جی میل دات کام با من تماس بگیرید.
-------------------
اگر بتوانم به شما کمکی در زمینه برنامه نویسی اندروید بکنم، خوشحال خواهم شد با این حال اگر پرسشی را ارسال کردید و بنده نیز به دلیل مشکلات و مشغله نتوانستم پاسخگو باشم، پوزش بنده را پیشاپیش پذیرا باشید.
-------------------
چون افراد زیادی از من درخواست می کنند تا برنامه نویسان اندروید به خصوص در شهر قم را به آنها معرفی کنند، اگر تمایل دارید رزومه و یا مشخصات خود را برایم ارسال کنید تا در صورت وجود درخواستهایی از این دست به شما اطلاع دهم.
از نظر من محدویتی به شهر قم وجود ندارد، لذا اگر برنامه نویس اندروید در شهرهایی دیگر هستید و یا به دنبال نیروی برنامه نویس اندروید هستید با من در تماس باشید، شاید بتوانم در این زمینه به شما کمکی بکنم :)
ناگفته نماند از آنجایی که در فضای مجازی من شناختی از هیچ شخص یا شرکتی ندارم، اگر شخصی به دنبال نیروی کار باشد، به افرادی که با مشخصات درخواستی ایشان تطابق داشته باشند، اطلاع خواهم داد و توصیه می شود برنامه نویسان محترم نیز قبل از شروع به همکاری، ملاحظات لازم در این زمینه را به عمل آورند چون من نیز شناختی از طرف مقابل ندارم.

طبقه بندی موضوعی

05- دریافت داده های ساده از دیگر برنامه ها

جمعه, ۲ خرداد ۱۳۹۳، ۰۹:۴۷ ب.ظ

مترجم: مژگان پیرامن

آدرس مطلب اصلی: http://developer.android.com/training/basics/intents/index.html

همانطورکه App شما می تواند اطلاعات را به Apps دیگر ارسال کند، هم چنین می توانید آن داده را از Apps دریافت کنید.درباره چگونگی تعامل کاربران با Apps شما و چه نوع اطلاعاتی را شما می خواهید از Apps دیگر دریافت کنید، فکر می کنند. به عنوان مثال ، یک برنامه شبکه اجتماعی احتمالا علاقمند به دریافت محتوای متن باشد،مانند یک ادس وب جالب از App دیگر.

 Google+ Android application هر دو متن و یک یا چند تصویر می پذیرد.با این App ،یک کاربر به اسانی می تواند  شروع به ارسال عکس ها از Android Gallery app به Google+ جدید کند.

 

Update your Manifest

Intent filter اطلاع رسانی به سیستم که چه intents جزء App حاضر به پذیرش هست.مشابه که چگونه شما یک intent با عمل ACTION_SEND  در درس ارسال داده های ساده برای برنامه های دیگر بسازید ،intent filter به منظور قادر به دریافت intents با این عمل بسازید.شما یک intent filter  در manifest خود  با استفاده ازعنصر<intent-filter>تعریف می کنید.برای مثال ، اگر برنامه شما بکار ببرد دریافت محتوای متن، تصویر واحد از هر نوع، یا تصاویر چندگانه از هر نوع ، manifest  شما را نگاه خواهد کرد:

<activityandroid:name=".ui.MyActivity">
   
<intent-filter>
       
<actionandroid:name="android.intent.action.SEND"/>
       
<categoryandroid:name="android.intent.category.DEFAULT"/>
       
<dataandroid:mimeType="image/*"/>
   
</intent-filter>
   
<intent-filter>
       
<actionandroid:name="android.intent.action.SEND"/>
       
<categoryandroid:name="android.intent.category.DEFAULT"/>
       
<dataandroid:mimeType="text/plain"/>
   
</intent-filter>
   
<intent-filter>
       
<actionandroid:name="android.intent.action.SEND_MULTIPLE"/>
       
<categoryandroid:name="android.intent.category.DEFAULT"/>
       
<dataandroid:mimeType="image/*"/>
   
</intent-filter>
</activity>

هنگامی که App  دیگری سعی  می کند به اشتراک گذاری هر یک از این کارها با ساختن یک intent  وانتقال ان به ()startActivity ، App شما به عنوان یک گزینه  در انتخاب intent  ذکر خواهد شد. اگر کاربر App شما رو انتخاب کند، فعالیت های مربوطه ( در مثال بالا ui.MyActivity. ) اغاز خواهد شد.پس ان بالا برای شما بمنظور رسیدگی محتوای مناسب در کد و UI  (رابط کاربر) خود هست.

 

Handle the Incoming Content(بکاربردن محتوا ورودی)

بکاربردن محتوا تحویل داده شده توسط یک  intent  ، شروع میکنه به فراخوانی ()getIntent ، برای گرفتن شی intent  .هنگامی که شما دارای یک شی ، شما می توانید بررسی کنید محتوای ان برای مشخص کردن چه چیزی بعدش  انجام بده .بخاطر داشته باشید که  این فعالیت می توانید شروع کنید از دیگر قسمت های سیستم مانند یک  launcher.پس شما باید این را در نظر داشته باشید هنگامی که بررسی میکنید .intent

voidonCreate(BundlesavedInstanceState){
   
...
   
// Get intent, action and MIME type
   
Intentintent=getIntent();
   
String action =intent.getAction();
   
String type =intent.getType();

   
if(Intent.ACTION_SEND.equals(action)&& type !=null){
       
if("text/plain".equals(type)){
            handleSendText
(intent);// Handle text being sent
       
}elseif(type.startsWith("image/")){
            handleSendImage
(intent);// Handle single image being sent
       
}
   
}elseif(Intent.ACTION_SEND_MULTIPLE.equals(action)&& type !=null){
       
if(type.startsWith("image/")){
            handleSendMultipleImages
(intent);// Handle multiple images being sent
       
}
   
}else{
       
// Handle other intents, such as being started from the home screen
   
}
   
...
}

voidhandleSendText(Intent intent){
   
StringsharedText=intent.getStringExtra(Intent.EXTRA_TEXT);
   
if(sharedText!=null){
       
// Update UI to reflect text being shared
   
}
}

voidhandleSendImage(Intent intent){
   
UriimageUri=(Uri)intent.getParcelableExtra(Intent.EXTRA_STREAM);
   
if(imageUri!=null){
       
// Update UI to reflect image being shared
   
}
}

voidhandleSendMultipleImages(Intent intent){
   
ArrayList<Uri>imageUris=intent.getParcelableArrayListExtra(Intent.EXTRA_STREAM);
   
if(imageUris!=null){
       
// Update UI to reflect multiple images being shared
   
}
}

 اپدیت UI  ( رابط کاربر) می تواند به سادگی تعدادی EditText، یا می توان آن را پیچیده تر مانند استفاده از یک فیلتر عکس جالب به یک تصویرباشد .براستی  این مشخص میکند App  شما چه چیزی بعدن اتفاق می افتد.

  • وهاب صمدی بخارایی

نظرات  (۰)

هیچ نظری هنوز ثبت نشده است

ارسال نظر

کاربران بیان میتوانند بدون نیاز به تأیید، نظرات خود را ارسال کنند.
اگر قبلا در بیان ثبت نام کرده اید لطفا ابتدا وارد شوید، در غیر این صورت می توانید ثبت نام کنید.
شما میتوانید از این تگهای html استفاده کنید:
<b> یا <strong>، <em> یا <i>، <u>، <strike> یا <s>، <sup>، <sub>، <blockquote>، <code>، <pre>، <hr>، <br>، <p>، <a href="" title="">، <span style="">، <div align="">
تجدید کد امنیتی