You are on page 1of 37

Android

Final Exam
Subject
1. File & Storage
2. Dynamic layout
3. Library
4. Services
5. 2D Graphics
6. Data Base
‫‪File & Storage‬‬
‫‪ ‬نريد استخدام الملفات اما لقراءة بيانات منها او‬
‫لتخ‪C‬زين بيانات عليها ‪ ,‬ونريد انت تح‪C‬فظ هذه‬
‫الم‪C‬لفات على التطبيق الخاص بنا ‪-:‬‬
‫‪Reading from file‬‬

‫للقراء‪C‬ة من ملف يجب علينا اوال تحم‪C‬يل هذا الملف‬


‫واضافته لل ‪ resource file‬الموجود في ال‬
‫‪Android‬‬
‫‪1. Copy file‬‬
‫)‪2. Create new Directory in res file (raw‬‬
‫‪3. Paste the file in raw.‬‬
Open file With Scanner
Scanner in =new Scanner
(getResources().openRawResour
ce
(R.raw.read));

Þ “read represent file name”


Þ See the following example in
next slide .
Þ Read_from_file
https://drive.google.com/open?id=1knI8VWLpGDka-
nDaTjJcHjJ8PFCTby82
‫هكذا سيكون شكل البرنامج السابق بعد تنفيذه‬
• Write on file
C‫نريد ان نقوم اوال بانشاء الملف ثم نبداء‬
‫بادراج البيانات اليه وسنقوم بالعملية كاالتي‬
: ‫ ملف‬C‫انشاء‬
PrintStream
file_names=newPrintStream
(openFileOutput("app_orders“,MODE_P
RIVATE));
“app_orders” => file name
 MODE_PRIVATE => ‫ذا‬
CCC‫ب‬
C‫اص ه‬C‫ملفخ‬
C‫ال‬
‫تطبيق‬
C‫ ال‬.
https://drive.google.com/op
en?
id=1D8zzcG8VKGQDYN65jm
IxjZJdDCIUFlDQ
File’s Example
File

https://drive.google.com/open?
id=1uepuDONfMk4MOYMRE96f4Zf634bMlgND
‫‪Dynamic Layout‬‬
‫‪ ‬هي عملية اضافة عناصر أو واجهات رسومية للتطبيق‬
‫دون استخدام لغة ال ‪ xml‬فقط باستخدام ال ‪java‬‬

‫‪ ‬نستخدم هذه الطريقة عندما ال نمتلك القدرة على‬


‫تحديد‬
‫عدد العناصر التي نحتاجها في شاشة التطبيق أو في‬
‫حالة ارتباط ظهور العنصر بخيارت المستخدم ‪:‬‬

‫‪ ‬هنا نتعامل مع كل ال ‪ widgets‬كانها ‪ class‬ونحتاج‬


‫لتعريف ‪ object‬منها ولكل منها ‪ method‬خاصة‬
‫لنتحكم بخصائصها مثل الطول والعرض وحجم النص ‪.‬‬
How to use Dynamic
? Layout
linear« ‫ مثل‬Layout Manager ‫اضافة ال‬ .1
»layout
LinearLayout mainlayout=new
LinearLayout(this);
: ‫ واضافتها للشاشة الرئيسة‬widget ‫تعريف ال‬ .2
Button btn=new Button(this);
btn.setText(“Hello”);
Mainlayout.addView(btn);
‫تعين الشاشة الجديدة شاشة اساسية للتطبيق‬ .3
setContentView(mainlayout);
Example’s
Basic_dynamic_layout

https://drive.google.com/open?
id=1utDPE_idMUp0nrop52qSgF5BgJGgkU9N

Dynamic_Linear_Layout

https://drive.google.com/open?
id=1aXEHf4eenuUAmj_cH-ZaRh8g2FZiMtYv
Examples
Dynamic_Realative_layout
https://drive.google.com/open?
id=1sj_RKcm52GgomROBMhy0FQUr3FbNCyPz

Manage_Dynamic_Relative_layout

https://drive.google.com/open?
id=1GWX1tWrQr5KhYykC0a4ZqH_zOf_ljRpm
Exampel’s
Multiple_widget_with_dynamic_layo
ut
https://drive.google.com/open?
id=1F1rXzY-
R1QoOKEliHcMgv6zYccxDvFEM

Tryto Download XO game for your


Android Mobile :
X_O game
‫‪Library’s‬‬
‫‪‬استخدام المكتبات الخارجية أو المعروفة‬
‫باسم ‪API‬‬
‫‪‬قد تحتاج اثناء‪ C‬تطوريك لتطبيقات االندرويد‬
‫الى استخدام أو اضافة تقنيات تساعدك‬
‫في رفع جودة التطبيق وتحسين امكانياته‬
‫وخصائصه ‪.‬‬
‫وقد ال تمتلك الوقت الكافي لتطوير هذه‬
‫التقنيات بنفسك‬
‫لذلك تقدم لك ال ‪ Android‬امكانية اضافة‬
‫واس‪C‬تخدام تقنيات خارجية (‪ )API‬بكل‬
‫سهولة ويسر ولكن في البداية ماهي ال‬
‫‪API‬‬
‫‪Application‬‬ ‫‪Program Interface‬‬
‫‪‬عبارة عن ‪ package‬كامل يحتوي ‪class‬‬
‫واحد على االقل نقوم باستخدامه الضافة‬
‫تقنيات تحسن وترفع من جودة التطبيق‬
‫الخاص بنا ولكن كيف نضيف هذه ال ‪API‬‬
‫لل ‪. Android Studio‬‬
‫‪ .1‬اضافة تعريف للمكتبة داخل ملفات ال‬
‫‪Gradle‬‬
‫‪ .2‬استدعاء‪ C‬المكتبة داخل ملف ال ‪java‬‬
‫الخاص بالتطبيق ‪.‬‬
Add to gradle

1-open buid.gradle file


2-go to dependencies
3-add implementation line
Ex:
implementation
'com.jakewharton:butterknife:8.8.1‘
4- synchronize Application to add
library
5-import library in java package
6-start to use
Picasso Library-1
‫مكتبة تستخدم لتحميل صور من االنترنت‬
‫واستخدامها داخل التطبيق دون الحاجة الى‬
. ‫تنزيلها‬
How to Add & Use :-
1. Download the latest ARR from
google implementation
'com.squareup.picasso:picasso:2.71828'
2. Add library implementation to
gradle file
‫ لن تعمل المكتبة اال اذا تم‬: ‫مالحظة مهمة‬
‫السماح للتطبيق باالتصال باالنترنت عن‬
‫طريق استخدام هذا االذن واضافته في ملف‬
. package ‫ تحت اسم ال‬. manifest ‫ال‬
<uses-permission
android:name="android.permission.INTERNET"></uses-
permission>

Picasso_example

https://drive.google.com/open?
id=1vMgMkoD8Eryv9Mx62IQ3AT6loDPWfaGi
Daimajia-2
‫مكتبة تستخدم الضفاة تأثيرات حركية على‬
. ‫العناصر داخل شاشة التطبيق‬
How To Use & Add Daimajia ??

1. Add implementation to gradle file

implementation 'com.daimajia.easing:library:2.0@aar'
implementation
'com.daimajia.androidanimations:library:2.3@aar'

2. Synchronize your Application.


3. See the following example (picasso &
dimajia).
Diamajia_Example

https://drive.google.com/open?
id=1nsRMZd9qJ1JwebPsv0hvndgiqBccz89I
Butter Knife-3
‫ مكتبة رائعة مستخدمة لتقليل حجم الكود‬
‫داخل تطبيق اندرويد لرفع جودة التطبيق‬
‫وتسهيل عملية البرمجة‬
Advantages for use butter knife
=>
1. Group multiple views in a list of
array
2. Eliminate anonymous inner-class
for listeners.
3. Eliminate resource lookups by
How to use & Add Butter Knife ??
1. Add implementation to gradle file
implementation 'com.jakewharton:butterknife:8.8.1'
annotationProcessor 'com.jakewharton:butterknife-
compiler:8.8.1'

2. Synchronize your Application


3. See the following example to get
text & display it with toast
massage .
Butter_Knife_example
https://drive.google.com/open?
id=1CRYbSpK5uBCeeHvZaO95jbGu7OZSuaCK
‫‪Android_BootStrap-4‬‬
‫‪‬مكتبة جميلة جدا مستخدمة الضافة عناصر‬
‫بواجهات جذابة وهذه الواجهات ليست‬
‫متوفرة في ال ‪ Android‬بشكل اساسي ‪.‬‬

‫‪‬الهدف الرئيسي لهذه المكتبة هو جعل‬


‫المبرمجين يركزون اكثر على عملية‬
‫البرمجة بعيدا عن التركيز في تصميم‬
‫الشاشات الذي قد يأخذ وقتا طويال جدا وقد‬
‫ال ينجح لالسف في ارضاء العميل ‪.‬‬
How to use & Add Bootstrap in
Android ?
1. Add implementation to gradle file
implementation
'com.beardedhen:androidbootstrap:2.3.2'

2. Synchronize your Application


3. Add Bootstrap widget
AwesomeTextview to xml file
, Bootstrap
like :- , Bootstrap Button Grouup ,
Button
, Bootstrap Circle Thumbnail ,
Bootstrap EditText, Bootstrap label
Bootstrap Progress Bar , Bootstrap
Text
Bootstrap Thumbnail.
4. See the following example

Boot_strap_example

https://drive.google.com/open?
id=1jzfJEht0zvXDUaFnkpt0sx9oUU1CEdDl
‫‪Stanford Android Library-5‬‬
‫‪‬مكتبة خارجية ظهرت في عام ‪ 2016‬والهدف‬
‫االساسي منها تقليل حجم الكود المستخدم‬
‫لتطوير التطبيق ‪.‬‬

‫‪‬تقوم هذه المكتبة بتقديم ‪ methods‬جديدة‬


‫ذات طابع اسهل من ال ‪ method‬االصلية‬
‫وذلك من خالل ‪ class‬يسمى ‪simple‬‬
‫‪ Activity‬ويقوم بعمل ‪ extends‬لل ‪class‬‬
‫الرئيسي في االندرويد وهو‬
‫«‪»AppCompatActivity‬‬
How to Add & use Stanford
Library ???
1. Download library execution file
https://drive.google.com/open?
id=1HLc3RBJtU0OcTpArd3s0ekfGry-TVWZU

2.Add Library to Android Studio


 open project , open app file
,open libs file
Copy the downloaded file in libs
Right click in stanford.jar file then
chosse
Add as Library , Add to module
3. Add Implementation to gradle file
implementation fileTree(include: ['*.jar'], dir:
'libs')
implementation files('libs/stanford-android-
lib.jar')

4. See the following example :-

Stanford_Example
https://drive.google.com/open?id=1PMp-49457Z-
tSpcp0pmygHKyItGlz4NF
Text to Speech-6
android C‫هي مكتبة داخلية موجودة داخل ال‬
‫ا ما داخل‬C‫ يقرأ نص‬C‫والهدف منها جعل الهاتف‬
. ‫التطبيق‬
How to Use Text to Speech ??

1. Create object from TextToSpeach


2. Called Speak method & send it’s
parameter which are :- “text” &
TextToSpeach.QUEUE_ADD,null);
QUEUE_ADD /
“‫نقرأ النص بعد االنتهاء من النصوص التي يتم‬
‫”قرأتها‬
QUEUE_FlUSH / “‫باشرة‬C‫نص م‬ C‫قرأ ال‬
CC‫“ ن‬
example

Text_TO_Speach

https://drive.google.com/open?
id=1YFf-GTcGTK0XZDK9ROlMuZ-
1w9PkTM8I
‫‪Services‬‬
‫‪‬هي عبارة عن ‪ java class‬تعمل في‬
‫الخلفية‬
‫ال تظهر على الشاشة ) وهي تعمل على‬ ‫(‬
‫تنفيذ مجموعة عمليات ثم تقوم باعادة‬
‫ارسال النتائج لل ‪activity‬‬
‫من خالل ‪. broadcast‬‬
‫‪‬يتم استخدامها للقيام بمهمات طويلة او‬
‫لتقديم خدمة يتم استخدامها من قبل‬
‫التطبيق ‪.‬‬
‫‪‬‬ ‫?? ‪How to Add Services‬‬
‫‪1.‬‬ ‫‪Right click on java package‬‬
Services
1. After create services
2. Override onstartCommand
method
3. Inside onstartCommand method
write your code .
4. See the following example to run
music in background :-
Run_Music
https://drive.google.com/open?id=16U9-
h04W0aCFIJ4wUNwGcbcvs9KlO5Gu
Services example 2
Use Broadcast Resiever

Broad_Cast_Resiver

https://drive.google.com/open?id=1yXbDC6357l5Bednb3X-
pjTQgIfC1Lgea
2D Graphics
, ‫ لرسم اشكال‬java ‫ استخدام لغة ال‬
. ‫نصوص وتحركيها على شاشة التطبيق‬

How to Start Draw in our


Application ?
1. Create new class “Draw”
2. Extends the new class from View
3. Call Constructor with 2
parameter .
4. After constructor override
5. write drawing code inside on
Draw method

6. Call your Draw class in xml

7. Run You Application .


Example 1 :Draw Traffic
line
Traffic_Line

https://drive.google.com/open?
id=1b0HwD2X2YA8X7JJB8C4lSayn7yIIjIYH
Example 2 : Bounce Ball
Bounce_Ball

https://drive.google.com/open?id=1p-3H-
mYftOXC3IndUH3w6-Llu3Oc7AyL

You might also like