فتح تطبيق الكاميرا , والتقاط صورة

السلام عليكم ورحمة الله

درس اليوم بسيط و سهل ,   سوف نتعلم كيفية فتح تطبيق الكاميرا المدمج بالهاتف والتقاط صورة ثم اضافتها إلى القائمة GridView التي قمنا بصنعها في  الدرس السابق .

في البدادية يجب إضافة صلاحيات فتح تطبيق الكاميرا بداخل ملف AndroidManifest.xml :

<uses-permission android:name="android.permission.CAMERA" />
<uses-feature android:name="android.hardware.camera" />

ثم قم بإنشاء زر جديد بلاويت الخاصة بأكتيفيتي  SelectPhoto  بجانب زر upload الذي أنشأناه لأخذ صورة من الاستديو في الدرس السابق , الآن سوف ننشئ زر آخر لفتح تطبيق الكاميرا

كود xml للزر :

<Button
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="TakePhoto"
            android:id="@+id/takephoto"
            android:layout_gravity="center_vertical"
            android:layout_marginLeft="50dp" />

سوف نقوم بتعيين onClick للزر بداخل اكتيفيتي SelectPhoto :

openCamera = (Button)findViewById(R.id.takephoto);
        
        openCamera.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                
            }
        });

لفتح الكاميرا سوف نستخدم طريقة مماثلة للتي استخدمناها لفتح الاستديو , أولا ننشئ انتنت ونقوم بوضع مسار فتح الكاميرا داخل البارامتر , وبعدها نستخدم startActivtyForResult لفتح الانتنت واستقبال الصورة في onActivityResult 

ضع هذا الكود بداخل حدث onClick للزر :

Intent openCamera = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
                startActivityForResult(openCamera,2);

وبداخل onActivityResult  فقط قم بتغييرر الأمر داخل if :

if (requestCode == 1 ||requestCode == 2 && resultCode == RESULT_OK) {
            photo_uri = data.getData();
            if (photo_uri.getPath() != null) {
                Picasso.with(Gallery_main.this).load(photo_uri).resize(300, 300).centerCrop().into(uploadedPhoto);
                OK.setVisibility(View.VISIBLE);
            }
        }

لاحظ أنني استعملت requestCode آخر لتمييز فتح الكاميرا عن الاستديو , لكن بما انه كود جلب الصورة من الكاميرا بعد التقاتها هو نفسه كود جلب الصورة من الاستديو بعد اختيارها , لذلك لن نحتاج إلى if أخرى

جرب تشغيل البرنامج الآن والتقط صورة 🙂

أتمنى أن يكون الشرح واضح , واذا كان هناك شيء غير مفهوم  بإمكانك مراجعة الدرس السابق من هنا  لأنني شرحت هذه المفاهيم في هذا الدرس … وسوف أقوم بإضافة مزايا جديدة للبرنامج قريبا

شكرا على القراءة … والسلام عليكم 

 

 

عن Yaser Alosh

ياسر , من سوريا , أحب أن استخدم الحاسوب وأتعلم كل ما يتعلق به ,, بدأت بتعلم البرمجة , " كهواية " منذ بضعة أشهر , أعجبني مجال الأندرويد لأنه بسيط وسهل التعلم ثم بدأت بتعلم برمجة تطبيقاته , ولقد ساعدني موقع "اندرودي عربي " كثير في ذلك

شاهد أيضاً

التقنيات التي نستطيع برمجة تطبيقات والعاب الاندرويد بها

هل أنت محتار من أين تريد البدأ في مجال برمجة التطبيقات للهواتف الذكية أو الألعاب عالية الاداء ؟ تعرف في هذا المقال عن اللغات والتقنيات واختر منها ما يناسبك لدخول هذا المجال

تعلم برمجة تطبيق اندرويد لمدونتك البلوجر (1)

هل لديك تدوينة أو موقع إخباري ؟ أو معرض يعرض الكثير من البيانات من وسائط ؟ وبحاجة لعرضها في تطبيق اندرويد ؟ هذه فرصتك من هنا وللمبتدئين تعلم برمجة تطبيق لمدونتك

عرض صورة في التطبيق من فايربيس

بسم الله الرحمن الرحيم اليوم سيكون شرحنا عن كيفية عرض صورة  في التطبيق من قاعدة …

4 تعليقات

  1. مرحبا .. اشكرك ع المعلومات الي قدمتها لنا 🙂 استفدت منك كتير …
    أتمنى منك دروس او دوره كامله عن استخدام الكاميرا في تطبيق وأيضا” دوره في انشاء تطبيق محادثات ومكالمات الفيديو
    والصوتي .. دروه بالفيديو 🙂
    أتمنى اني اتابع واتعلم هيك دروس ,,
    او اذا مجوده بموقع غير ياليت تفيدوني
    وشكرا

    • مرحبا ,, rose , بالنسبة عن استخدام الكاميرا في تطبيق ممكن توضح أكثر لكي أعرف ما الذي تريد إضافته للبرنامج
      أما المحادثات ومكالمات الفيديو أنصحك أن تبحث موقع يقدم هذه الخدمة مثل Backendless, هذا الموقع يوفر خدمات مثل موقع parse ويوجد العديد من المواقع الأخرى التي تشبهه ,,, وممكن اكتب دروس عن استخدام backendless في المستقبل 🙂

  2. عفوا ولكن كيف يتم حفظ الصوره المختاره بداخل الابلكيشن عند فتح الابلكيشن كل مره

  3. وكيف استخدمها كخلفيه للاياوت عندي وتظل هكذا.

ضع بصمتك بتعليق يعبر عن امتنانك

هذا الموقع يستخدم Akismet للحدّ من التعليقات المزعجة والغير مرغوبة. تعرّف على كيفية معالجة بيانات تعليقك.