መተግበሪያዎችን ለ Android መፃፍ። በአንድሮይድ ስቱዲዮ ውስጥ ፕሮጀክት መፍጠር። የአንድሮይድ ስቱዲዮ ልማት አካባቢን በመጫን ላይ

በማንኛውም ንግድ ውስጥ በጣም አስቸጋሪው ነገር መጀመሪያ ነው. ብዙውን ጊዜ ወደ አውድ ውስጥ ለመግባት አስቸጋሪ ነው, ይህም የመጀመሪያውን አንድሮይድ መተግበሪያዬን ለማዘጋጀት ስወስን ያጋጠመኝ ነው. ይህ ጽሑፍ ለመጀመር ለሚፈልጉ ነው, ግን የት እንደሆነ አያውቁም.

ጽሑፉ ሙሉውን የመተግበሪያ ልማት ዑደት ይሸፍናል. አንድ ላይ አንድ ስክሪን ያለው ቀላል የቲክ-ታክ-ቶe ጨዋታ እንጽፋለን (በአንድሮይድ ኦኤስ ውስጥ ይህ እንቅስቃሴ ይባላል)።

የልማት ልምድ እጥረት የጃቫ ቋንቋአንድሮይድን ለመቆጣጠር እንቅፋት መሆን የለበትም። ስለዚህ, ምሳሌዎች ጃቫ-ተኮር ግንባታዎችን አይጠቀሙም (ወይም በተቻለ መጠን ይቀንሳሉ). ለምሳሌ ፒኤችፒን ከጻፉ እና የሶፍትዌር ልማት መሰረታዊ መርሆችን ካወቁ ይህ ጽሑፍ ለእርስዎ በጣም ጠቃሚ ይሆናል። ዞሮ ዞሮ እኔ የጃቫ ልማት ኤክስፐርት ስላልሆንኩ እንደዚያ መገመት ይቻላል። ምንጭ ኮድመለያውን አይጠይቅም " ምርጥ ልምዶችበጃቫ ውስጥ ልማት."

አስፈላጊዎቹን ፕሮግራሞች እና መገልገያዎችን መጫን

እዘረዝራለሁ አስፈላጊ መሣሪያዎች. ከእነዚህ ውስጥ 3ቱ አሉ፡-

  1. አይዲኢ ለአንድሮይድ ልማት ድጋፍ፡-
    • Eclipse + ADT ተሰኪ;
    • IntelliJ IDEAየማህበረሰብ እትም;
    • Netbeans + nbandroid ተሰኪ;

መገልገያዎቹ ከላይ በተጠቀሰው ቅደም ተከተል ተጭነዋል. ሁሉንም የተዘረዘሩ አይዲኢዎችን መጫን ምንም ፋይዳ የለውም (ትክክለኛውን ለመምረጥ ካልተቸገሩ በስተቀር)። እኔ IntelliJ IDEA Community Edition እየተጠቀምኩ ነው፣ በጣም የላቁ ከሆኑ አንዱ በአሁኑ ጊዜአይዲኢ ለጃቫ።

ምናባዊ መሣሪያ በመጀመር ላይ

AVD አስተዳዳሪን በማስጀመር እና ተጨማሪ ፓኬጆችን በመጫን (ኤስዲኬ የተለያዩ ስሪቶች), መፍጠር መጀመር ይችላሉ ምናባዊ መሳሪያአስፈላጊ ከሆኑ መለኪያዎች ጋር. በይነገጹን መረዳት አስቸጋሪ መሆን የለበትም.

የመሣሪያ ዝርዝር

ፕሮጀክት መፍጠር

በ IDE ውስጥ ፕሮጀክት መፍጠርን ጨምሮ የቅድመ ዝግጅት ስራዎችን በመቀነስ ወደ ሥራ ለመግባት ሁል ጊዜ እጓጓለሁ ፣ በተለይም ፕሮጀክቱ ትምህርታዊ ከሆነ እና ለማምረት ካልፈለገ።

ስለዚህ፣ ፋይል->አዲስ ፕሮጀክት፡-

የ F6 ቁልፍን በመጫን ፕሮጀክቱ በምናባዊው መሳሪያ ላይ ይሰበሰባል, ይሰበስባል እና ይጀምራል.

የፕሮጀክት መዋቅር

የቀደመው ቅጽበታዊ ገጽ እይታ የፕሮጀክቱን መዋቅር ያሳያል. በዚህ ጽሑፍ ውስጥ ሙሉ ለሙሉ ተግባራዊ ግቦችን ስለምንከተል, በስራ ሂደት ውስጥ በምንጠቀምባቸው አቃፊዎች ላይ ብቻ እናተኩራለን. እነዚህ የሚከተሉት ማውጫዎች ናቸው። ዘፍ, ሪስእና ኤስአርሲ.

በአንድ አቃፊ ውስጥ ዘፍፕሮጀክቱ ሲገነባ በራስ ሰር የሚፈጠሩ ፋይሎች አሉ። እራስዎ ሊለውጧቸው አይችሉም.

የሪስ አቃፊው እንደ ስዕሎች ፣ ጽሑፎች (ትርጉሞችን ጨምሮ) ፣ ነባሪ እሴቶችን ፣ አቀማመጦችን ለማከማቸት የታሰበ ነው።

ኤስአርሲ- ይህ የሥራው ዋና ክፍል የሚከናወንበት አቃፊ ነው, ምክንያቱም ፋይሎች ከ ጋር ምንጭ ጽሑፎችየእኛ ፕሮግራም.

የመጀመሪያ መስመሮች

የእንቅስቃሴ (የመተግበሪያ ማያ ገጽ) እንደተፈጠረ, onCreate () ዘዴ ይባላል. IDE በ2 መስመሮች ሞላው፡-
ሱፐር.onCreate(savedInstanceState); setContentView(R.layout.main);
የsetContentView ዘዴ (ከዚህ.setContentView ጋር እኩል) የ xml አቀማመጥን ያዘጋጃል። የአሁኑ ማያ ገጽ. በሚከተለው ውስጥ የ xml አቀማመጦችን "አቀማመጥ" እና "እንቅስቃሴ" ስክሪን እንላቸዋለን. በመተግበሪያው ውስጥ ያለው አቀማመጥ እንደሚከተለው ይሆናል.

TableLayout ለዚህ መተግበሪያ ተስማሚ ነው። መታወቂያ ለማንኛውም ምንጭ ሊመደብ ይችላል። ውስጥ በዚህ ጉዳይ ላይ, TableLayout የተመደበው መታወቂያ = main_l. FindViewById() የሚለውን ዘዴ በመጠቀም እይታውን መድረስ ትችላለህ፡-
የግል የጠረጴዛ አቀማመጥ አቀማመጥ; // ይህ የKrestikinolikiActivity ክፍል ህዝባዊ ባዶ onCreate(Bundle saveInstanceState) (ሱፐር.onCreate(savedInstanceState)፤ setContentView(R.layout.main)፤ አቀማመጥ = (TableLayout) FindViewById(R.id.main_l) ንብረት ነው፤ buildGameField );

አሁን የBuildGameField() ዘዴን መተግበር አለብን። ይህንን ለማድረግ በማትሪክስ መልክ መስክ ማፍለቅ ያስፈልግዎታል. ይህ በጨዋታ ክፍል ይከናወናል. በመጀመሪያ ለሴሎች የካሬ ክፍል እና የተጫዋች ክፍል መፍጠር አለቦት እቃዎቹ እነዚህን ሴሎች የሚሞሉ ናቸው።

ካሬ.ጃቫ

ጥቅል com.ለምሳሌ; የህዝብ ክፍል ካሬ (የግል ተጫዋች = ባዶ፤ የህዝብ ባዶ ሙላ(ተጫዋች ተጫዋች) () (ተመላሽ ተጫዋች;))

ተጫዋች.ጃቫ

ጥቅል com.ለምሳሌ; የሕዝብ ክፍል ተጫዋች (የግል ሕብረቁምፊ ስም፣ የሕዝብ ተጫዋች (የሕብረቁምፊ ስም) ( this.name = name;) public CharSequence getName () (የቁምፊ ቅደም ተከተል) ስም; ))

ሁሉም የመተግበሪያችን ክፍሎች በ src አቃፊ ውስጥ ይገኛሉ።

ጨዋታ.ጃቫ

ጥቅል com.ለምሳሌ; የሕዝብ ክፍል ጨዋታ (/** * ሜዳ */ የግል ካሬ ሜዳ፤ /** * ገንቢ * */ የሕዝብ ጨዋታ() (መስክ = አዲስ ካሬ፣ ካሬ ቆጣሪ = 0; // መስኩን መሙላት ለ (int i = 0, l) = የመስክ.ርዝመት;

በKrestikinoliki እንቅስቃሴ ገንቢ ውስጥ የጨዋታ መጀመር።
የሕዝብ Krestikinoliki እንቅስቃሴ () (ጨዋታ = አዲስ ጨዋታ()፤ ጨዋታ.ጀምር()፤ // በኋላ ላይ ተግባራዊ ይሆናል)

የKrestikinolikiActivity ክፍል የBuildGameField() ዘዴ። እሱ በተለዋዋጭ ረድፎችን እና አምዶችን ወደ ጠረጴዛው (የጨዋታ ሜዳ) ያክላል፡
የግል አዝራር አዝራሮች = አዲስ አዝራር;
//(....) የግል ባዶ ግንባታGameField () (የካሬ ሜዳ = game.getField ()፤ ለ (int i = 0፣ lenI = field.length; i
መስመር 8 የ View.OnClickListener በይነገጽን ተግባራዊ የሚያደርግ ነገር ይፈጥራል. የጎጆ የአድማጭ ክፍል እንፍጠር። ከKrestikinolikiActivity ብቻ ነው የሚታየው።
የሕዝብ ክፍል አድማጭ View.OnClickListener (የግል int x = 0፤ የግል int y = 0፤ የሕዝብ አድማጭ (int x, int y) ( this.x = x; this.y = y;) የሕዝብ ባዶ በ ላይ ጠቅ ያድርጉ (እይታ) (የአዝራር አዝራር = (አዝራር) እይታ;))
የጨዋታውን አመክንዮ ተግባራዊ ለማድረግ ይቀራል.

የሕዝብ ክፍል ጨዋታ (/** * ተጫዋቾች */ የግል ተጫዋች ተጫዋቾች፤ /** * ሜዳ */ የግል ካሬ ሜዳ፣ /** * ጨዋታው ተጀምሯል? የተጫዋች ንቁ ተጫዋች; /** * የተሞሉ ሴሎች ብዛት ይቆጥራል */ የግል int ተሞልቷል; /** * ገንቢ * */ የህዝብ ጨዋታ () = 0; // መስኩን መሙላት (int i = 0, l = field.length; i

የአሸናፊው ውሳኔ ከርዝመት ጋር እኩል ነው
መስኮች በአቀባዊ ፣ ወይም በአግድም ፣ ወይም በሰያፍ። ወደ አእምሮ የሚመጣው የመጀመሪያው ሀሳብ ለእያንዳንዱ ጉዳይ ዘዴዎችን መጻፍ ነው. እኔ እንደማስበው በዚህ ጉዳይ ላይ የኃላፊነት ሰንሰለት ንድፍ በጥሩ ሁኔታ ይሠራል። በይነገጹን እንግለጽ
ጥቅል com.ለምሳሌ; ይፋዊ በይነገጽ WinnerCheckerInterface (የወል ተጫዋች ቼክ አሸናፊ();)

ጨዋታው አሸናፊውን የመወሰን ሃላፊነት ስላለበት ይህንን በይነገጽ ተግባራዊ ያደርጋል። ምናባዊ “መስመሮች” ለመፍጠር ጊዜው አሁን ነው ፣ እያንዳንዱም ጎኑን ያረጋግጣል። ሁሉም የ WinnerCheckerInterface በይነገጽን ተግባራዊ ያደርጋሉ።

አሸናፊCheckerHorizontal.java ጥቅል com.ለምሳሌ; የህዝብ ክፍል WinnerChecker አግድም WinnerCheckerInterface ተግባራዊ ያደርጋል (የግልየጨዋታ ጨዋታ

;

ጥቅል com.ለምሳሌ; የህዝብ ክፍል WinnerCheckerVertical ተግባራዊ የሚሆነው WinnerCheckerInterface (የግል ጨዋታ ጨዋታ፣የወል WinnerCheckerVertical (የጨዋታ ጨዋታ)) (ይህ ጨዋታ =ጨዋታ) የህዝብ ተጫዋች ቼክ አሸናፊ () (የካሬ ሜዳ = game.getField()፣ የተጫዋች currPlayer፣ የተጫዋች lastPlayer = null; ለ ​​(int) i = 0, len = field.length;

አሸናፊCheckerDiagonalLeft.java

ጥቅል com.ለምሳሌ; የህዝብ ክፍል WinnerCheckerDiagonalLeft የ WinnerCheckerInterface (የግል ጨዋታ ጨዋታ፣ የህዝብ አሸናፊCheckerDiagonalLeft(የጨዋታ ጨዋታ)(ይህ ጨዋታ =ጨዋታ)የወል ተጫዋች ቼክአሸናፊን()( የካሬ ሜዳ = game.getField() የተጫዋች currPlayer፣ ተጫዋች lastPlayer = null; int successCounter = 1; ለ (int i = 0, len = field.length; i

አሸናፊCheckerDiagonalRight.java

ጥቅል com.ለምሳሌ; የህዝብ ክፍል WinnerCheckerDiagonalRight የ WinnerCheckerInterface (የግል ጨዋታ ጨዋታ፣ ይፋዊ WinnerCheckerDiagonalRight(የጨዋታ ጨዋታ) (ይህ ጨዋታ = ጨዋታ) የህዝብ ተጫዋች ቼክ አሸናፊ () (የካሬ ሜዳ = game.getField()፣ የተጫዋች currPlayer፣ ተጫዋች lastPlayer = null; int successCounter = 1; ለ (int i = 0, len = field.length; i
በጨዋታ ገንቢ ውስጥ እናስጀምራቸው፡-
//(....) /** * "ዳኞች" =). ከእያንዳንዱ እንቅስቃሴ በኋላ አሸናፊ መኖሩን ለማረጋገጥ */የግል አሸናፊ ቼከርበይነገጽ አሸናፊ ቼከርስ;
//(....) ህዝባዊ ጨዋታ() (//(....) አሸናፊ ቼከርስ = አዲስ የ WinnerCheckerInterface፤ አሸናፊ ቼከርስ = አዲስ አሸናፊ ቼከር አግድም(ይህ)፤ አሸናፊ ቼከር = አዲስ WinnerCheckerVertical (ይህ) አሸናፊ ቼከር = አዲስ አሸናፊCheckerDiagonalLeft(ይህ); WinnerCheckers = አዲስ WinnerCheckerDiagonalRight (ይህ);
የቼክ አሸናፊ () ትግበራ
ይፋዊ የተጫዋች ቼክ ዊነር () (ለ (WinnerCheckerInterface winChecker፡ WinnerCheckers) (የተጫዋች አሸናፊ = winChecker.checkWinner () ከሆነ (አሸናፊ != ባዶ) (ተመላሽ አሸናፊ፡ )) ባዶ መመለስ፤ )
ከእያንዳንዱ እንቅስቃሴ በኋላ አሸናፊውን እናረጋግጣለን. በአድማጭ ክፍል onClick() ዘዴ ላይ ኮድ እንጨምር
የህዝብ ባዶ onክሊክ (እይታን ይመልከቱ) (የአዝራር አዝራር = (አዝራር) እይታ፤ ጨዋታ g = ጨዋታ፤ ተጫዋች ተጫዋች = g.getCurrentActivePlayer()፤ ከሆነ (makeTurn(x, y)) (button.setText(player.getName()) ;) የተጫዋች አሸናፊ = g.checkWinner () ከሆነ (አሸናፊ!= null) ( gameOver (አሸናፊ) ከሆነ (g.isFieldFilled ()) (// ሜዳው gameOver ከሆነ)
የግል ባዶ ጨዋታ ኦቨር(ተጫዋች ማጫወቻ) ( CharSequence text = "ተጫዋች \"" + player.getName () + "\" አሸንፏል!"፤ Toast.makeText(ይህ፣ ጽሑፍ፣ Toast.LENGTH_SHORT)። አሳይ()፤ game.reset (); አድስ () የግል ባዶ gameOver () ( CharSequence ጽሑፍ = "መሳል"; Toast.makeText (ይህ, ጽሑፍ, Toast.LENGTH_SHORT) . አሳይ (); game. ዳግም አስጀምር (); ማደስ ();)
ለጃቫ፣ gameOver(ተጫዋች ማጫወቻ) እና gameOver() - የተለያዩ ዘዴዎች. Builder Toast.makeTextን በመጠቀም የሜዳውን ሁኔታ የሚያዘምን ማሳወቂያ በፍጥነት መፍጠር እና ማሳየት ይችላሉ።
የግል ባዶ እድሳት() (የካሬ ሜዳ = game.getField()፤ ለ (int i = 0፣ len = field.length; i

ዝግጁ! ይህ ጽሑፍ በ አንድሮይድ ልማት ዓለም ውስጥ ምቾት እንዲኖርዎት እንደረዳዎት ተስፋ አደርጋለሁ። ስለ ትኩረትዎ እናመሰግናለን!

የተጠናቀቀው መተግበሪያ ቪዲዮ

እንዴት መፍጠር እንደሚቻል የሞባይል መተግበሪያአንድሮይድ ስቱዲዮ

አንድሮይድ ስቱዲዮ በ IntelliJ IDEA ላይ የተመሰረተ የተቀናጀ የእድገት አካባቢ (IDE) ነው፣ ጎግል ይፋዊ IDE ብሎ የሚጠራው። አንድሮይድ መተግበሪያዎች.

ይህ መመሪያ ይገልፃል። የ android መተግበሪያ ልማት:

  • ፋይል ኤክስፕሎረር በመጠቀም በፋይሎች መካከል ያስሱ
  • የAndroidManifest.xml ፋይልን በመጫን ላይ
  • ፋይሎችን ወደ ፕሮጀክት በማስመጣት ላይ
  • የላቀ አቀማመጥ አርታዒ ከተለዋዋጭ ቅድመ እይታ ባህሪ ጋር
  • ትግበራዎችን ለማረም Logcat እና አንድሮይድ ሞኒተርን በመጠቀም

በአንድሮይድ ስቱዲዮ በመጀመር ላይ

አንድሮይድ ስቱዲዮን በመስኮት ያስጀምሩ አንድሮይድ ስቱዲዮ ማዋቀር አዋቂይምረጡ አዲስ አንድሮይድ ስቱዲዮ ፕሮጀክት ጀምር(አዲስ ፕሮጀክት ጀምር)

በመስኮቱ ውስጥ አዲስ ፕሮጀክት ይፍጠሩይምረጡ የመተግበሪያ ስም(የመተግበሪያ ስም) እንደ ፎርቹን ኳስ, የኩባንያውን ጎራ አስገባ; በመስክ ላይ የፕሮጀክት ቦታአፕሊኬሽኑ የሚቀመጥበትን ቦታ ይምረጡ። ጠቅ ያድርጉ ቀጥሎ.

ከፊትህ መስኮት አለ። አንድሮይድ መሣሪያዎችን ዒላማ ያድርጉ. ይምረጡ ስልክ እና ታብሌት. በመስክ ላይ ዝቅተኛው ኤስዲኬእባክዎን ይጠቁሙ ኤፒአይ 15. ጠቅ ያድርጉ ቀጥሎ.

በመስኮቱ ውስጥ እንቅስቃሴ ወደ ሞባይል ያክሉይምረጡ መሰረታዊ እንቅስቃሴ. ሁሉንም አማራጮች ይገምግሙ, ይህ መስኮት የሚገኙትን አቀማመጦች አጠቃላይ እይታ ያቀርባል.

ጠቅ ያድርጉ ቀጥሎ.

በመስኮቱ ውስጥ እንቅስቃሴውን ያብጁ, ከታች የተለጠፈው ቅጽበታዊ ገጽ እይታ, መለወጥ ይችላሉ የእንቅስቃሴ ስም(የእንቅስቃሴ ስም); የአቀማመጥ ስም(የአቀማመጥ ስም) ርዕስ(የጋራ ስም) እና የምናሌ ምንጭ ስም(የመርጃ ምናሌ ስም)። ነባሪ እሴቶችን ይተው እና ጠቅ ያድርጉ ጨርስ.

ከጥቂት ሰከንዶች በኋላ የሚከተለው መስኮት ይታያል.

ተመሳሳይ መስኮት በመሳሪያዎ ወይም በ emulator ላይ ይታያል. ኢሙሌተር እንደ መሳሪያ ይሰራል እና ለመጫን የተወሰነ ጊዜ ይወስዳል።

ይህ አስቀድሞ መተግበሪያ ነው። እሱ ብዙ ይጎድለዋል, አሁን ግን ወደሚቀጥለው ደረጃ መሄድ ይችላል.

የፕሮጀክት እና የፋይል መዋቅር

መስኮቱ የፕሮጀክት ፋይሎችን ያሳያል.

ተቆልቋይ ምናሌው (ከታች ያለው ቅጽበታዊ ገጽ እይታ) ለፋይሎች ብዙ ማጣሪያዎች አሉት። ዋናዎቹ ፕሮጄክት እና አንድሮይድ ናቸው።

የፕሮጀክት ማጣሪያው ሁሉንም የመተግበሪያ ሞጁሎችን ያሳያል - እያንዳንዱ ፕሮጀክት ቢያንስ አንድ ሞጁል ይይዛል። ከሌሎች የሞጁሎች ዓይነቶች መካከል ከቤተ-መጻሕፍት ሞጁሎች አሉ። የሶስተኛ ወገን ገንቢዎች, ወይም ከሌሎች አንድሮይድ መተግበሪያዎች (እንደ አንድሮይድ Wear መተግበሪያዎች፣ አንድሮይድ ቲቪ ያሉ) ሞጁሎች። እያንዳንዱ ሞጁል የራሱ ባህሪያት ስብስብ አለው, gradle ፋይል ጨምሮ, ሀብቶች እና ምንጭ ፋይሎች(ጃቫ ፋይሎች)።

ማስታወሻ. ፕሮጀክቱ ክፍት ካልሆነ በቅጽበታዊ ገጽ እይታው ላይ እንደሚታየው በፓነሉ በግራ በኩል ያለውን የፕሮጀክት ትርን ጠቅ ያድርጉ. በነባሪ ተጭኗል አንድሮይድ ማጣሪያ፣ በየትኞቹ ይሰበሰባል። የተወሰነ ዓይነት. በከፍተኛ ደረጃ የሚከተሉትን አቃፊዎች ያያሉ:

  • ይገለጣል
  • የግራድል ስክሪፕቶች

የሚቀጥሉት ክፍሎች እያንዳንዳቸው እነዚህን አቃፊዎች በዝርዝር ይገልጻሉ, ከማንፀባረቅ ጀምሮ.

የAndroidManifest.xml አጠቃላይ እይታ

እያንዳንዱ አንድሮይድ መተግበሪያ አንድሮይድManifest.xml ፋይል አለው፣ እሱም በማኒፌስት ማህደር ውስጥ ይገኛል። ይህ የኤክስኤምኤል ፋይል ስለመተግበሪያው መስፈርቶች ለስርዓትዎ ይነግራል። የዚህ ፋይል መገኘት ግዴታ ነው, ምክንያቱም እሱ የሚፈቅድ ነው አንድሮይድ ስርዓትመተግበሪያ ይፍጠሩ.

የማኒፌስት ማህደርን እና AndroidManifest.xmlን ክፈት። ድርብ ጠቅታ ፋይሉን ይከፍታል።

አንጸባራቂው እና አፕሊኬሽኑ መለያዎች ለማንፀባረቅ ያስፈልጋሉ እና አንድ ጊዜ ብቻ ይታያሉ።

እያንዳንዱ መለያ ከኤለመንት ስም ጋር የባህሪዎችን ስብስብ ይገልጻል። ለምሳሌ፣ በመተግበሪያ ውስጥ ያሉ አንዳንድ ባህሪያት እንደዚህ ሊሆኑ ይችላሉ፡-

አንድሮይድ፡ አዶ፡ አንድሮይድ፡ መለያ እና አንድሮይድ፡ ገጽታ

ከሌሎች ነገሮች በተጨማሪ የሚከተሉት በአንጸባራቂ ውስጥ ሊታዩ ይችላሉ፡

  • አጠቃቀም-ፍቃድ፡- በትክክል እንዲሰራ ለመተግበሪያው የተሰጠ ልዩ ፍቃድ ይጠይቃል። ለምሳሌ፣ አፕሊኬሽኑ ተጠቃሚውን ወደ አውታረ መረቡ ለመግባት ፍቃድ መጠየቅ አለበት - የ android.permission.INTERNET ፍቃድ ካከሉ።
  • እንቅስቃሴ፡ ለእይታ UI እና ሎጂክ በከፊል ተጠያቂ የሆነ እንቅስቃሴን ሪፖርት ያደርጋል። በመተግበሪያው ውስጥ የሚቀርበው ማንኛውም እንቅስቃሴ ወደ አንጸባራቂው መታከል አለበት - ስርዓቱ ያልታወቀ እንቅስቃሴን አያስተውልም እና በመተግበሪያው ውስጥ አይታይም።
  • አገልግሎት፡ ለረጅም ጊዜ የሚሰሩ ስራዎችን ወይም የላቀ የኤፒአይ ግንኙነቶችን ከሌሎች መተግበሪያዎች ጋር ለመተግበር ሊጠቀሙበት ያሰቡትን አገልግሎት ይጨምራል። በዚህ ጉዳይ ላይ አንድ ምሳሌ አንድ መተግበሪያ ውሂብ የሚቀበልበት የአውታረ መረብ ጥሪ ነው። እንደ እንቅስቃሴዎች፣ አገልግሎቶች የተጠቃሚ በይነገጽ የላቸውም።
  • ተቀባይ፡- ምስጋና ለተቀባዩ መልዕክቶችን ማሰራጨትመተግበሪያው ስለ ምልክቶችን ይቀበላል የስርዓት መልዕክቶችወይም ከሌሎች መተግበሪያዎች የመጡ መልዕክቶች፣ ሌሎች የመተግበሪያ ክፍሎች በማይሄዱበት ጊዜም እንኳ። የእንደዚህ አይነት ሁኔታ ምሳሌ ያለው ባትሪ ነው ዝቅተኛ ደረጃይህንን ለስርዓተ ክወናው ክፍያ እና ማሳወቅ.

የተሟላ የመለያዎች ዝርዝር በአንድሮይድ ገንቢ ድህረ ገጽ ላይ ባለው አንጸባራቂ ፋይል ውስጥ ይገኛል።

የፋይል ቅንብሮችን አሳይ

የሚከተለውን ባህሪ ወደ ተግባር ያክሉ።

android፡screenOrientation="የቁም ሥዕል"። ማያ ገጹን ወደ የቁም ሁነታ ብቻ ለመገደብ. ይህ ካልተደረገ, ስክሪኑ, በመሳሪያው ቦታ ላይ በመመስረት, የመሬት ገጽታ ወይም የቁም ሁነታ. ባህሪውን ካከሉ ​​በኋላ አንጸባራቂ ፋይልቅጽበታዊ ገጽ እይታውን ይመስላል።

መተግበሪያውን ይፍጠሩ እና ያሂዱ። በመሳሪያዎ ላይ እየሞከሩ ከሆነ, ያብሩት, ማያ ገጹ እንደማይንቀሳቀስ ያረጋግጡ የመሬት አቀማመጥ ሁነታይህንን ችሎታ በAndroidManifest ውስጥ ከገደቡ።

Gradle አጠቃላይ እይታ

ወደ ግራድል እንሂድ። Gradle የአንድሮይድ ፕሮጀክት በመሳሪያዎች ላይ ሊጫን ወደሚችል ኤፒኬ ይቀይረዋል። የBuild.gradle ፋይል በGradle ስክሪፕቶች፣ በሁለት ደረጃዎች አለ፡ ሞዱል እና ፕሮጀክት።

የ build.gradle ፋይልን ይክፈቱ (ሞዱል: መተግበሪያ)። ነባሪውን የግራድል ጭነት ያያሉ፡-

ተሰኪን ተግብር፡ "com.android.application" አንድሮይድ (የSdkVersion 25buildToolsVersion "25.0.2" defaultConfig (applicationId "com.raywenderlich.fortuneball" minSdkVersion 15targetSdkVersion 25versionCode 1versionCode 1versionName የአንድሮይድሮይድሮይድ ደጋፊ።እና tR unner") buildTypes (የሚለቀቁት (minifyEnabled falseproguardFiles getDefaultProguardFile("proguard-android.txt")፣ "proguard-rules.pro")) ጥገኛ (ፋይልTree ያጠናቅራል(dir: "libs", የሚያካትቱት: ["*.jar"))androidTestCompile ( " com.android.support.test.espresso:espresso-core:2.2.2", (ቡድን: "com.android.support", ሞጁል: "ድጋፍ-ማብራሪያዎችን" ሳይጨምር) "com.android.support:appcompat ያጠቅልል። - v7:25.1.0"ኮምፓል"com.android.support:design:25.1.0"testCompile "junit:junit:4.12"

ዋና ዋናዎቹን ክፍሎች እንመልከታቸው፡-

  • ተግብር ተሰኪ፡ 'com.android.application' ተፈጻሚ ይሆናል። አንድሮይድ ፕለጊን።በወላጅ ደረጃ እና የተግባር መገኘትን ያረጋግጣል ከፍተኛ ደረጃ, አፕሊኬሽኑን ለመፍጠር የሚያስፈልጉት.
  • ከ android(...) ክፍል ቀጥሎ እንደ targetSdkVersion ያሉ የቅንጅቶች አማራጮች አሉ። የመተግበሪያዎ ኢላማ ኤስዲኬ በ ላይ መቀመጥ አለበት። የመጨረሻው ደረጃኤፒአይ ሌላ አስፈላጊ አካል- minSDKVersion (መተግበሪያው እንዲሠራ በመሣሪያው ላይ መጫን ያለበትን አነስተኛውን የኤስዲኬ ስሪት ይገልጻል)። ለምሳሌ የኤስዲኬ ስሪት 14 ከሆነ አፕሊኬሽኑ በዛ መሳሪያ ላይ መስራት አይችልም ምክንያቱም በዚህ ሁኔታ ዝቅተኛው የሚደገፈው ስሪት 15 ነው።
  • የመጨረሻው አካል ጥገኞች (...) ነው። 'com.android.support:appcompat-v7:VERSION' ማጠናቀር እና 'com.android.support:design:VERSION' ማጠናቀርን ልብ ማለት ያስፈልጋል። የአዳዲስ እና አሮጌ ኤፒአይዎች ባህሪያት ድጋፍ እና ተኳኋኝነት ይሰጣሉ።

ከአንድሮይድ ጋር ተኳሃኝነት ቤተ-ፍርግሞች በተጨማሪ የሶስተኛ ወገን ቤተ-ፍርግሞችን ወደ ጥገኞች(...) ክፍሎች ማከል ይችላሉ። የተጠቃሚ በይነገጽ. ጥገኝነቶችን ይፈልጉ፣ ከዚያ የሚከተሉትን ሁለት መስመሮች ወደ ታች ያክሉ።

ጥገኞች (... "com.daimajia.easing:library:2.0@aar" ማጠናቀር "com.daimajia.androidanimations:library:2.2@aar")

እዚህ የሶስተኛ ወገን ጥገኛዎችን ማከል ይችላሉ. ቤተ-መጻሕፍት በራስ-ሰር ይወርዳሉ እና ወደ አንድሮይድ ስቱዲዮ ይዋሃዳሉ። እነዚህን ጥገኞች ወደ መተግበሪያዎ ለማዋሃድ አሁን አስምርን ጠቅ ያድርጉ።

ማመሳሰል ጥቂት ሰከንዶች ይወስዳል። የግራድል ዝማኔዎች በታችኛው ፓነል የመልእክቶች ትር ውስጥ ይታያሉ።

እነዚህ ለአሁን በGradle ውስጥ የሚያስፈልጓቸው ሁሉም ቅንብሮች ናቸው። እንደነዚህ ያሉ ማጭበርበሮች ለመተግበሪያው አኒሜሽን ይጨምራሉ።

ፋይሎችን በማስመጣት ላይ

አንድሮይድ አፕሊኬሽን ሲሰራ ከሌሎች ግብአቶች ጋር መቀላቀል አስፈላጊ ነው፡ ምስሎች፣ ብጁ ቅርጸ-ቁምፊዎች፣ ድምጾች፣ ቪዲዮዎች፣ ወዘተ.እነዚህ ሀብቶች ወደ አንድሮይድ ስቱዲዮ ገብተው በተገቢው አቃፊዎች ውስጥ ይቀመጣሉ፣ ይህም ያስችላል። ስርዓተ ክወናለመተግበሪያው ትክክለኛ ምንጮችን ይምረጡ. የእኛ የፎርቹን ኳስ መተግበሪያ ምስሎችን ወደ ሊሳቡ የሚችሉ አቃፊዎች ማስመጣት አለበት። እነዚህ አቃፊዎች ምስሎችን ወይም ልዩ ነገሮችን ሊይዙ ይችላሉ። የኤክስኤምኤል ፋይሎችመሳል (ማለትም የኤክስኤምኤል ኮድ በመጠቀም ቅርጾችን መሳል እና በአቀማመጦችዎ ውስጥ መጠቀም ይችላሉ)።

በአንድሮይድ ስቱዲዮ ከአንድሮይድ ወደ ፕሮጀክት ይሂዱ

የሪስ አቃፊውን ይክፈቱ (መተግበሪያ > src > ዋና)። አልቅሱ የቀኝ አዝራር mouse በ res ፎልደር ላይ፣ አዲስ > አንድሮይድ መርጃ ማውጫ የሚለውን ይምረጡ።

አዲስ የመረጃ ማውጫ የሚባል መስኮት ይመጣል።

ከ Resource አይነት ተቆልቋይ ዝርዝሩ ውስጥ ሊሳል የሚችል አማራጭን ይምረጡ። በቀረበው የብቃት ዝርዝር ውስጥ ጥግግት የሚለውን ይምረጡ እና በስክሪፕቱ ላይ የደመቀውን ቁልፍ ጠቅ ያድርጉ።

በሚቀጥለው መስኮት ከ Density ዝርዝር ውስጥ XX-High Density የሚለውን ይምረጡ። እሺን ጠቅ ያድርጉ።

ሊሳቡ የሚችሉ-xhdpi፣ drawable-HDpi እና drawable-mdpi አቃፊዎችን ለመፍጠር ሁሉንም ነገር ይድገሙ። ከ Density ዝርዝር እንደቅደም ተከተላቸው X-High፣ ከፍተኛ እና መካከለኛ ጥግግት ይምረጡ።

ጥግግት መመዘኛ ያለው እያንዳንዱ አቃፊ (ማለትም፣ xxhdpi፣ xhdpi፣ hdpi) ከተወሰነ ጥግግት ወይም ጥራት ጋር የተቆራኙ ምስሎችን ይይዛል። ለምሳሌ፣ drawable-xxhdpi አቃፊ ምስል ይዟል ከፍተኛ እፍጋት, ይህ ማለት አንድሮይድ መሳሪያ ስክሪን ያለው ነው ከፍተኛ ጥራትምስሉን ከዚህ ማህደር ያወጣል። ምስሉ ለሁሉም ሰው ጥሩ ይሆናል አንድሮይድ መሳሪያዎችየስክሪን ጥራት ምንም ይሁን ምን. ተጨማሪ መረጃለስክሪን እፍጋት የአንድሮይድ ሰነድ ይመልከቱ።

ሁሉንም "የተሳሉ" ማህደሮች ከፈጠሩ በኋላ ወደ ማይታሸገው ይዘት ተመልሰው በአቃፊው ውስጥ ተመልሰው (cmd + C) ምስሉን ከእያንዳንዱ ማህደር እና ቦታ (cmd + V) በተዛማጅ ውስጥ መቅዳት ይችላሉ. አንድሮይድ አቃፊስቱዲዮ.

አንዴ ፋይሎቹን ካስቀመጡ በኋላ የመገልበጥ መስኮቱን ያያሉ. እሺን ይምረጡ።

የኤክስኤምኤል እይታ እና ተለዋዋጭ አቀማመጥ ቅድመ እይታዎች

ተጠቃሚዎች መስተጋብር መፍጠር የሚችሉበት አቀማመጥ መፍጠር የሂደቱ አስፈላጊ አካል ነው። በአንድሮይድ ስቱዲዮ ውስጥ ይህ በአቀማመጥ አርታኢ ውስጥ ሊከናወን ይችላል። content_main.xml ከres/አቀማመጥ ክፈት። በንድፍ ትር ውስጥ የበይነገጽ ክፍሎችን (አዝራሮችን, የጽሑፍ መስኮችን) ማንቀሳቀስ ይችላሉ.

በንድፍ በስተቀኝ ኤክስኤምኤልን በአቀማመጡ ውስጥ እንዲያርትዑ የሚያስችል የጽሑፍ ትር አለ።

ከመፈጠሩ በፊት መልክ, አንዳንድ እሴቶችን መግለፅ ያስፈልግዎታል. strings.xml በሬስ/እሴቶች ትር ውስጥ ይክፈቱ እና የሚከተለውን ያክሉ።

ጥያቄውን ይጠቁሙ, የትኛው ትችላለህ“አዎ” ወይም “አይደለም” ብለው ይመልሱ፣ ከዚያ የአስማት ኳሱን ጠቅ ያድርጉ።

strings.xml በመተግበሪያው ውስጥ የሚታዩትን ሁሉንም ሕብረቁምፊዎች ይዟል. እነዚህን መስመሮች ወደ ውስጥ በመከፋፈል ፋይሎችን መለየትዓለም አቀፋዊነትን ቀላል ያደርገዋል ምክንያቱም በመተግበሪያው ውስጥ ለሚፈለገው ለእያንዳንዱ ቋንቋ የሕብረቁምፊ ፋይል ብቻ ያስፈልግዎታል። መተግበሪያዎን ወደ ሌሎች ቋንቋዎች ለመተርጎም ባትፈልጉም የstring ፋይልን መጠቀም ሁልጊዜ ይመከራል።

dimens.xmlን res/values ​​ውስጥ ይክፈቱ እና የሚከተለውን ያክሉ።

15 ሴፕ20 ሴፕ

dimens.xml የልኬት እሴቶችን ይይዛል፣ የአቀማመጦች ክፍተቶችን ይገድባል፣ የጽሁፍ መጠን፣ ወዘተ.ይህን ውሂብ በፋይል ውስጥ ለማስቀመጥ ይመከራል ስለዚህ ወደፊት አቀማመጦችን ለመፍጠር ይጠቅማል።

ወደ content_main.xml ይመለሱ እና የፋይሉን አጠቃላይ ይዘት በሚከተለው ኮድ ይተኩ፡

ይህ በጣም ትልቅ ኮድ ፎርቹን ቦል ለሚባል መተግበሪያ አቀማመጥ ይፈጥራል። በከፍተኛ ደረጃ አንጻራዊ አቀማመጥ አክለዋል (አንጻራዊ አቀማመጥ የልጁን ክፍሎች ከወላጅ ክፍል አንጻር ያለውን ቦታ ይገልጻል)። አንጻራዊ አቀማመጥ ከወላጅ አካል መጠን ጋር እንዲገጣጠም ሊዘረጋ ይችላል።

አንጻራዊ ምልክት ማድረጊያ ሁለት የጽሑፍ ክፍሎች፣ ምስል እና አዝራር ይጨምራል። እነዚህ ሁሉ ዝርዝሮች በተጨመሩበት ቅደም ተከተል ይታያሉ. ይዘታቸው በ strings.xml (ጽሑፍ) እና ሊሳል የሚችል (ምስሎች) ውስጥ ሊነበብ ይችላል።

content_main.xml ን በማዘመን ላይ ሳለ፣የቅድመ እይታ መስኮቱ ዩአይን እንደሚያዘምን አስተውል፡

ማሳሰቢያ: የቅድመ እይታ መስኮቱ የማይታይ ከሆነ, በጽሑፍ ትሩ ውስጥ, በቀኝ በኩል ባለው የማርክ ማፕ አርታኢ ፓነል ላይ ያለውን ቅድመ እይታ አዝራርን ጠቅ ያድርጉ.

ይፍጠሩ እና ያስጀምሩ።

እና አሁን የመተግበሪያውን አቀማመጥ ፈጥረዋል. ግን በዚህ ደረጃ ላይ ቆንጆ ምስል ብቻ ነው - አዝራሩን ጠቅ ማድረግ ወደ ምንም ነገር አይመራም.

እንቅስቃሴን እና እይታን በማጣመር

በመተግበሪያው ውስጥ ምክንያታዊ ግንኙነቶችን ለመፍጠር በመተግበሪያ/src/main/java ውስጥ የሚገኙትን የጃቫ ፋይሎችን መጠቀም ትችላለህ።

MainActivity.java ን ይክፈቱ እና ይህን ውሂብ ከነባር ስር ያክሉት፡-

java.util.Random አስመጣ፤ android.view.እይታ፤አንድሮይድ.widget.Button አስመጣ፤ android.widget.ImageView፤ android.widget.TextView አስመጣ፤ አስመጣ com.daimajia.androidanimations.library.ቴክኒኮች;com.daimajia.androidanimations.library.YoYo አስመጣ;

የመጀመሪያዎቹ አምስት አስመጪዎች በኮድዎ ውስጥ ያሉትን ተዛማጅ ክፍሎች ያመለክታሉ፡ Random፣ View፣ Button፣ ImageView እና TextView። የሚከተሉት ሁለት ማስመጣቶች ሁለት ክፍሎችን ከቤተ-መጽሐፍት እንደሚጠቀሙ ያመለክታሉ, ጨምሮ. build.gradle ለአኒሜሽን. በ MainActivity.java፣ በ MainActivity ክፍል ውስጥ፣ ያክሉ፡

String fortuneList = ("አትቁጠሩበት"" በኋላ እንደገና ጠይቅ" "በእሱ ሊተማመኑበት ይችላሉ" "ያለምንም ጥርጥር" "አመለካከት በጣም ጥሩ አይደለም" "በተወሰነ መልኩ ነው" ምልክቶች አዎ ጠቁም "" አዎ በእርግጠኝነት" "አዎ" "የእኔ ምንጮች አይ ይላሉ"); TextView mFortuneText; አዝራር mGenerateFortuneButton;ImageView mFortuneBallImage;

በዚህ አጭር ኮድ ውስጥ ለእንቅስቃሴው 4 ተለዋዋጮችን አዘጋጅተሃል። የመጀመሪያው ሊሆኑ የሚችሉ ግዛቶችን የሚገልጹ መስመሮች ናቸው, ሌሎቹ ሦስቱ በአቀማመጥ / ምልክት ማድረጊያ ውስጥ የፈጠርካቸው የ UI አካላት ናቸው.

አሁን የonCreate() ዘዴን ይዘቶች በሚከተለው ይተኩ፡

// 1:super.onCreate(savedInstanceState)፤// 2:setContentView(R.layout.activity_main)፤የመሳሪያ አሞሌ መሣሪያ አሞሌ = (የመሳሪያ አሞሌ) findViewById(R.id.toolbar);setSupportActionBar(የመሳሪያ አሞሌ);// 3:mFortuneText = (TextView) findViewById(R.id.fortuneText)፤mFortuneBallImage = (ImageView) findViewById(R.id.fortunateImage);mGenerateFortuneButton = ( አዝራር) FindViewById (R.id.fortuneButton); // 4:mGenerateFortuneButton.setOnClickListener(አዲስ) ይመልከቱ.OnClickListener() (@overridepublic void on Click() ይመልከቱእይታ) (// 5:int index = አዲስ በዘፈቀደ().nextInt (fortuneList.length);mFortuneText.setText(fortuneList);// 6:YoYo.with (ቴክኒኮች.ስዊንግ) ቆይታ (500) .playOn (mFortuneBallImage);)));

  • እንቅስቃሴው ዝግጁ መሆኑን ያረጋግጡ (ከፍተኛ ደረጃ ትግበራ)።
  • የዚህ እንቅስቃሴ አቀማመጥ ቀደም ሲል በፈጠሩት አቀማመጥ እንደሚወከለው ይግለጹ, የመሳሪያ አሞሌውን ያረጋግጡ.
  • የ FindViewById ዘዴን በመጠቀም በአቀማመጥ እይታ ክፍሎች ውስጥ ቀደም ብለው የፈጠሯቸውን የሶስት ተለዋዋጮች እሴቶችን ይሙሉ። የመታወቂያው ዋጋ በኤክስኤምኤል አቀማመጥ ውስጥ ካለው ጋር ተመሳሳይ ነው።
  • በአዝራሩ ላይ OnClickListener ያክሉ። ይህ አንድ አዝራር ጠቅ የሚጠራውን ተግባር የሚያካትት (ጥቅሎችን) የሚያጠቃልል ቀላል ክፍል ነው።
  • ለዚህ መተግበሪያ ከFortuneList ውስጥ ብጁ ምርጫን ይምረጡ እና ለማሳየት የሀብቱን ጽሑፍ ያዘምኑ።
  • ጥገኝነቱን ወደ gradle ፋይል ለመጨመር እና አኒሜሽን ወደ መተግበሪያ ለመጨመር የሶስተኛ ወገን ቤተ-መጽሐፍትን ይጠቀሙ።

ዝግጁ ነው ማለት ይቻላል። ነገር ግን ተንሳፋፊውን ቁልፍ ማስወገድ ያስፈልግዎታል. ወደ res/አቀማመጥ ይሂዱ እና እንቅስቃሴ_main.xmlን ይክፈቱ።

ይህ የአቀማመጥ ፋይል ከዚህ ቀደም ያረሙት የይዘት_main.xml አገናኝ አለው። ይዘቱን በነባሪነት ይገልፃል (የመሳሪያ አሞሌ እና ተንሳፋፊ የድርጊት ቁልፍ)። ነገር ግን, በዚህ ልዩ መተግበሪያ (Fortune Ball), ተንሳፋፊ አዝራር አያስፈልግም. ስለዚህ የሚከተለውን የኮድ እገዳ ከ xml ፋይል ያስወግዱ፡

ከታች በቀኝ ጥግ ላይ ተንሳፋፊ አዝራር የለም.

ጥያቄ ይጠይቁ (ሀብቴ ምንድን ነው?) - ቁልፉን ይጫኑ። ማመልከቻውን ይፈትሹ.

አንድሮይድ ማሳያ

አንድሮይድ ስቱዲዮ ብዙ አይነት መሳሪያዎችን ይዟል። በአንድሮይድ ስቱዲዮ መስኮት ስር ያለውን የአንድሮይድ ሞኒተር ትርን ይክፈቱ።

እዚህ ለገንቢው ብዙ አማራጮችን ያገኛሉ.

  • በግራ በኩል ያለው የካሜራ እና የማጫወቻ ቁልፍ ቅጽበታዊ ገጽ እይታዎችን እንዲያነሱ እና ቪዲዮዎችን እንዲቀዱ ያስችሉዎታል።
  • የማጉያ መነጽር እንደ የመተግበሪያውን ማህደረ ትውስታ መተንተን ያሉ በርካታ ተጨማሪ አማራጮችን ይከፍታል.
  • የአቀማመጥ መርማሪው የመተግበሪያው በይነገጽ ለምን የተወሰነ መንገድ እንደሚመስል የሚወስን ምስላዊ በይነገጽ ያቀርባል።

LogCat የስርዓት መልእክቶችን ዝርዝር መግለጫ ይሰጣል የተወሰኑ የመተግበሪያ ውሂቦችን መፈተሽ ወይም የተወሰኑ ቁምፊዎችን ካልያዙ መልዕክቶችን ለማጣራት የፍለጋ አሞሌውን ይጠቀሙ።

ከላይ ባለው የቅጽበታዊ ገጽ እይታ ላይ እንደሚታየው ከላይ በቀኝ ጥግ ላይ የተመረጠውን መተግበሪያ ብቻ አሳይ የሚለውን መምረጥዎን ያረጋግጡ። አሁን የመተግበሪያዎ መልዕክቶች ብቻ ናቸው የሚታዩት።

በ MainActivity.java ውስጥ የሚከተለውን ወደ አስመጪዎች ዝርዝር ያክሉ።

android.util.Log አስመጣ;

በ MainActivity.java ውስጥ onCreate() መጨረሻ ላይ የሚከተለውን መስመር ያክሉ።

Log.v("FORTUNE APP TAG""በCreateየተጠራ");

Log.v ሁለት መለኪያዎችን ይጠራል - መለያ እና መልእክት። በዚህ አጋጣሚ መለያው "FORTUNE APP TAG" ተብሎ ይገለጻል እና መልእክቱ "onCreateCalled" ተብሎ ይገለጻል.

በLogcat ፓነል ውስጥ የምዝግብ ማስታወሻውን ለማየት መተግበሪያውን ያሂዱ።

የLogCatን ይዘቶች አጣራ፣ onCreateCalledን ከኮንሶሉ በላይ ባለው የፍለጋ አሞሌ አስገባ፡

ከዚያ ሁሉንም የምዝግብ ማስታወሻ መልእክቶች ለማየት የፍለጋ ጽሑፉን ሰርዝ።

ሌላው ጠቃሚ ባህሪ ሎግካት ነው, እሱም የስህተት መልዕክቶችን የመመልከት ችሎታ ነው. ነገሮች እንዴት እንደሚሠሩ ለማየት ፍፁም በሆነ ተግባራዊ መተግበሪያዎ ላይ ሳንካ ያክሉ።

ወደ MainActivity.java ይሂዱ እና የሚከተለውን መስመር በonCreate() ውስጥ ይቀይሩት፦

// mFortuneText = (TextView) findViewById (R.id.fortuneText);

መተግበሪያውን ያስጀምሩ. የእኔ ዕድል ምንድን ነው? አይሰራም!

ስህተት እንዳለ ካላወቁ ስህተቱን እንዴት ማስተካከል ይችላሉ? Logcat በዚህ ላይ ይረዳል.

ወደ Logcat ፓነል ይሂዱ - እንደዚህ ያለ ነገር ይመስላል

እዚህ ብዙ ቀይ ጽሑፍ አለ። በዚህ አጋጣሚ ችግሩ በ MainActivity.java ፋይል ​​ውስጥ መስመር 50 ነው። LogCat ይህን አገናኝ ወደ ሰማያዊ hyperlink ለውጦታል። ከጫኑት, ችግሩ ምን እንደሆነ ማወቅ ይችላሉ.

mFortuneText = (TextView) findViewById(R.id.fortuneText) በመቀየር ተለዋዋጭ ፈጥረዋል ነገርግን ዋጋውን አልገለጹም - ስለዚህም የኑል ጠቋሚው ልዩነት። ይመለሱ እና ኮዱን ይቀይሩ, መተግበሪያውን ያሂዱ. በዚህ ጊዜ ሁሉም ነገር በተቃና ሁኔታ ይሰራል. Logcat ስህተቶችን ለማግኘት ጠቃሚ መሣሪያ ነው።

ይህን ጽሑፍ አጋራ፡

ተዛማጅ ጽሑፎች

በየዓመቱ የአንድሮይድ ኦፐሬቲንግ ሲስተም ለተራ ተጠቃሚዎች ተስማሚ ስርዓተ ክወና ብቻ ሳይሆን ለገንቢዎችም ኃይለኛ መድረክ ይሆናል። ደህና፣ ምን ማድረግ ትችላለህ፡ ጎግል ሁል ጊዜ ገንቢዎችን በግማሽ መንገድ ይገናኛል፣ ብዙ እድሎችን እና ኃይለኛ መሳሪያዎችን ያቀርባል፣ በመረጃ ሰጭ ሰነዶች የተቀመመ።
በተጨማሪም, አንድ ሰው "አረንጓዴ ሮቦት" በሞባይል ኦፕሬቲንግ ሲስተሞች ዘንድ ተወዳጅነት ያለው መሪ መሆኑን መዘንጋት የለበትም. ይህ የሚያመለክተው ለአንድሮይድ ፕሮግራም በማዘጋጀት ብዙ ታዳሚዎች ይኖሩዎታል ይህም በኋላ ላይ ትርፍ ያስገኛል. በአጠቃላይ አንድሮይድ ለገንቢዎች የ"oasis" አይነት ነው። ስለዚህ፣ ለዚህ ​​ስርዓተ ክወና ልዩ የፕሮግራሚንግ ቋንቋዎች ምርጫ እና እንዲሁም የልማት አካባቢዎችን አዘጋጅተናል።
ትኩረት, ለጀማሪዎች ትንሽ ምክር
አንድሮይድ ፕሮግራሚንግ መጀመሪያ ላይ ከባድ ወይም በጣም ብቸኛ ሊመስል ይችላል። ጠቃሚ ምክር ከመጀመርዎ በፊት ወደ ጠቃሚ ሰነዶች የሚወስዱትን አገናኞች ይመልከቱ፣ እና በአንድሮይድ ላይ ፕሮግራም ማውጣት ለእርስዎ ችግር አይሆንም።

ጃቫ ለአንድሮይድ ገንቢዎች ዋና መሳሪያ ነው።

የልማት አካባቢዎችአንድሮይድ ስቱዲዮ (IntelliJ IDEA)፣ Eclipse + ADT ተሰኪ
ተስማሚሰፊ ተግባራት
ጃቫ ለአንድሮይድ ፕሮግራመሮች ዋና ቋንቋ ነው፣ ለጀማሪዎች የግድ የግድ ነው። ዋናው የአንድሮይድ ምንጭ ኮድ የተፃፈው በዚህ ቋንቋ ነው፣ ስለዚህ ብዙ ሰዎች ለምን ይህን ቋንቋ እንደሚመርጡ ለመረዳት ቀላል ነው። በጃቫ የተፃፉ አፕሊኬሽኖች በአንድሮይድ ላይ የሚሰሩት ART ቨርቹዋል ማሽን (ወይም ዳልቪክ በጄሊ ቢን እና ቀደምት የ አንድሮይድ ስሪቶች) የጃቫ ቨርቹዋል ማሽን አናሎግ በመጠቀም ነው ጎግል ከኦራክል ጋር ከባድ ህጋዊ ፍልሚያ አለው።

ጉግል በአሁኑ ጊዜ በIntellij IDEA ከJetBrains የተገነባውን ትክክለኛ ኃይለኛ የአንድሮይድ ስቱዲዮ ልማት አካባቢን በይፋ ይደግፋል። እንዲሁም ከግጥሚያ_parent እና wrap_content ጀምሮ እስከ ግንበኞች ፣ቋሚዎች እና ዋና ዘዴዎች የጃቫኤችትፕConnection ክፍል ሁሉንም ነገር የሚሸፍነውን በጣም ዝርዝር የGoogle ሰነዶችን አይርሱ - በእርግጠኝነት ማንበብ ጠቃሚ ነው።

እንዲሁም ለጃቫ ፕሮግራመሮች በጣም ተወዳጅ አካባቢ የሆነውን Eclipseን አይርሱ። ከGoogle በሚመጣው የ ADT ፕለጊን ይህ የመሳሪያ ስብስብ በእጆችዎ ውስጥ ኃይለኛ እና ቀላል ክብደት ያለው መሳሪያ ይሆናል። ነገር ግን ከ Mountain View የመጡት ሰዎች ካለፈው ክረምት ጀምሮ Eclipseን መደገፍ አቁመው ለአዲሱ አንድሮይድ ስቱዲዮ መንገድ ሰጡ። በደካማ ፒሲዎች ላይ ለመጠቀም የሚመከር።

አስፈላጊ ሰነዶች:

C++ በጌታ እጅ የሚገኝ ኃይለኛ መሳሪያ ነው።

ዋና ልማት አካባቢአንድሮይድ ስቱዲዮ (ስሪት 1.3 እና ከዚያ በላይ)፣ ቪዥዋል ስቱዲዮ 2015፣ QtCreator
ተስማሚየጨዋታ ሞተሮች እና ሀብቶች-ተኮር መተግበሪያዎች።
C++ መካከለኛ እድሜ ያለው ግን በጣም ኃይለኛ የፕሮግራሚንግ ቋንቋ ነው ባለፈው አመት ሰላሳኛ ዓመቱን ያከበረ። እ.ኤ.አ. በ 1985 የተፈጠረው በጓደኛ Björn Stroustrup ጥረት ምስጋና ይግባውና አሁንም በጣም ታዋቂ የፕሮግራም ቋንቋዎችን ከፍተኛ ቦታዎችን ይይዛል። "ፕሮስ" ሙሉ በሙሉ የተግባር ነፃነት ይሰጥዎታል, ምክንያታዊ በሆነው ላይ ብቻ ይገድባል.


በጠቅላላው የአንድሮይድ ሕልውና፣ ለC++ ብዙ ማዕቀፎች እና ማሻሻያ መሳሪያዎች ተፈጥረዋል። በተለይ የታወቁትን Qt እና IDE QtCreator ማድመቅ እፈልጋለሁ፣ ይህም ለዊንዶውስ፣ ለዊንዶውስ ስልክ፣ ለዊንዶውስ RT፣ ለ iOS፣ ለ SailfishOS እና ለአንድሮይድ (ይህ ዝርዝር አንዴ ሲምቢያን ተካቷል) አቋራጭ አፕሊኬሽኖችን እንዲያዳብሩ ያስችሎታል። በተጨማሪም ፣ የጃቫ እና አንድሮይድ ምርጡን የሚስብ ምቹ የቱሊፕ ቤተ-መጽሐፍት ኮንቴይነሮች ፣ ስልተ ቀመሮች እና አብነቶች ያገኛሉ። እና በመጨረሻም ከስርዓቱ ጋር ለከፍተኛ እና ዝቅተኛ ደረጃ ስራ ብዙ የተለያዩ የ QT ሞጁሎችን ያገኛሉ። ትሁት አገልጋይህ በተለይ በC++ እና Qt.

ባለፈው ዓመት በዊንዶውስ: በሚቀጥለው ቻምፒተር ኮንፈረንስ ላይ ለትክክለኛው ታዋቂ የልማት አካባቢ ቪዥዋል ስቱዲዮ 2015 ሰፊ ትኩረት ተሰጥቷል. ከዋናዎቹ ፈጠራዎች አንዱ ለዊንዶውስ ፎን እና ለአንድሮይድ መተግበሪያዎችን ለማዘጋጀት ድጋፍ ነበር - ማይክሮሶፍት ቁጥሩን እንደምንም ለመጨመር ሞክሯል የእርስዎ ስርዓተ ክወና መተግበሪያ።

ኦፊሴላዊው አንድሮይድ ስቱዲዮ NDKን መደገፍ እንደጀመረ መጥቀስ አይቻልም። በኤንዲኬ እገዛ ከአንድሮይድ ጋር ሲሰሩ የOpenGL ግራፊክስን መጠቀም ይችላሉ። ፍጥነት እና ቅልጥፍና ከፈለጉ - NDK ይምረጡ! ይህ የእድገት ዘዴ ከፍተኛ አፈፃፀም ለሚያስፈልጋቸው የጨዋታ ሞተሮች ምርጥ ነው.

በC ወይም C++ ውስጥ የአንድሮይድ ልማት ከጃቫ ቀላል ሊመስል ይችላል ነገር ግን ቋንቋው ሙሉ በሙሉ የመተግበር ነፃነት ቢሰጥዎትም እና በደረጃዎ ላይ የማይገድበው ቢሆንም ለመማር ብዙ ጊዜ የሚወስድ የተወሰኑ ባህሪያት አሉት - ያለምክንያት አይደለም C ++ ከ nunchucks (በአጋጣሚ ትልቅ ችሎታ የሚጠይቅ በጣም ጥሩ መሳሪያ) ጋር ተነጻጽሯል. ሆኖም አንድሮይድ አፕሊኬሽኖችን በC እና C++ ማዘጋጀት አስደሳች ሊሆን ይችላል።

አስፈላጊ ሰነዶች:

ሌሎች ቋንቋዎች

ስለ ሌሎች ታዋቂ ያልሆኑ ፣ ግን ለእነሱ አስደሳች ቋንቋዎች እና ማዕቀፎች ለመነጋገር ጊዜው አሁን ነው። ሆኖም፣ በብዙ ምክንያቶች፣ በጃቫ እና በሲ++ ስኬታማ ለመሆን አትችልም።

ኮሮና (LUA ስክሪፕት)


ተስማሚጨዋታዎችን እና ቀላል መተግበሪያዎችን መፍጠር
በሆነ ምክንያት ጃቫን መማር ካልፈለጉ ወይም በኤክስኤምኤል በኩል በይነገጽ መገንባት ካልፈለጉ ይህንን IDE ለራስዎ መምረጥ ይችላሉ። ኮሮና ቀላል ክብደት ያለው የእድገት አካባቢ ነው፣ ኮድ በቀላል ክብደት LUA ውስጥ መፃፍ አለበት (የፓስካል አፍቃሪዎች ያደንቃሉ)።

ይህ የመሳሪያ ኪት ቀላል 2D ጨዋታዎችን ስትጽፍ ይረዳሃል ለዚህም ለ 2D ነገሮች፣ድምጾች፣ኔትወርክ እና የጨዋታ ሞተር ቤተመጻሕፍት አሉ። ጨዋታዎች የተፈጠሩት ከOpenGL ጋር ነው፣ ይህም ማለት ከፍተኛ ብቃት ማለት ነው። ለጀማሪዎች በጣም ጥሩ፣ ምናልባት አንድሮይድ ላይ የመጀመሪያውን የሞባይል መተግበሪያዎን መፍጠር የሚችሉበት ይህ ሊሆን ይችላል!


አስፈላጊ ሰነዶች:

አዶቤ ስልክ ጋፕ (HTML5፣ JavaScript፣ CSS)


ተስማሚሀብት-ተኮር ያልሆኑ መተግበሪያዎችን መፍጠር
ኤችቲኤምኤልን፣ ሲኤስኤስን እና ጃቫስክሪፕትን የምታውቁት ከሆነ፣ እንደ አማራጭ PhoneGapን መሞከር ይችላሉ። ይህ አይዲኢ ከላይ በተጠቀሱት የፕሮግራም አወጣጥ እና ማርክ ቋንቋዎች የተዘጋጁ ሙሉ አፕሊኬሽኖችን እንድትገነቡ ይፈቅድልሃል።

እንዲያውም ከ PhoneGap የመጡ ዝግጁ የሆኑ አፕሊኬሽኖች ጃቫ ስክሪፕትን በመጠቀም በጣም ቀላሉ የድር እይታዎች ናቸው። የተለያዩ ኤፒአይዎችን በመጠቀም ልክ እንደ ቤተኛ መተግበሪያዎች የተለያዩ የመሳሪያ ተግባራትን መጠቀም ትችላለህ። የሚገርመው አፕሊኬሽኑ በአገልጋዩ ላይ ተሰብስቦ ከዚያ በ iOS፣ አንድሮይድ፣ ዊንዶውስ ስልክ፣ ድር ኦኤስ እና ብላክቤሪ ኦኤስ ላይ ለመጠቀም መዘጋጀቱ ነው። እንደዚህ ባለ ሰፊ መድረክ አቋራጭ ተግባር የመተግበሪያ ልማት በከፍተኛ ሁኔታ ማፋጠን ይችላል።


አስፈላጊ ሰነዶች:

ፊውዝ (ጃቫስክሪፕት እና ዩኤክስ)


ተስማሚሁለቱንም ቀላል እና ውስብስብ አፕሊኬሽኖች መፍጠር
ሰዎች ስለ አንድሮይድ ልማት መሳሪያዎች ሲናገሩ ብዙውን ጊዜ ስለ Fuse ያስባሉ። ይህ መሳሪያ በዓይነቱ በጣም ለተጠቃሚ ምቹ ከሆኑ አንዱ ነው፣ እና ለገንቢው ሰፊ እድሎችን እና ጥቅሞችን ሊያቀርብ ይችላል።

የ Fuse አፕሊኬሽኖች ዋና አመክንዮ የተገነባው በጃቫ ስክሪፕት - ቀላል እና ለመረዳት የሚቻል ቋንቋ ዝቅተኛ የመግቢያ ገደብ ያለው ነው። የበይነገጽ ፋውንዴሽን በ UX ማርክ ይወከላል - ለሁሉም ሰው ሊረዳ የሚችል። ደህና፣ የአካባቢ “ቡንስ” አፕሊኬሽኑ በእርስዎ መሳሪያ ወይም ኢምፔላተር ላይ በሚሰራበት ጊዜ ለውጦችን በቀጥታ እንዲተገብሩ ይፈቅድልዎታል - ልክ እንደ አንድሮይድ ስቱዲዮ 2.0 እና ከዚያ በላይ። በ Fuse የአንድሮይድ መተግበሪያ ልማት ቀላል እና አስደሳች ሊሆን ይችላል።

አስፈላጊ ሰነዶች:

"ወደ መጨረሻው" የሚሉት ቃላት

በእርግጥ አሁን ያሉትን ሁሉንም የልማት መሳሪያዎች አላሳየንም። በዚህ ጽሑፍ አንድሮይድ ገንቢ መሆን ብዙ ጊዜ ጥረት እና ጽናትን የሚጠይቅ ቢሆንም ያን ያህል ከባድ እንዳልሆነ ልንገልጽልዎት እንፈልጋለን። ለሞባይል መድረኮች የዕድገት ዓለም ለእርስዎ ክፍት ነው ፣ ግን ያስታውሱ-የመጀመሪያው እርምጃ ሁል ጊዜ የእርስዎ ነው።

ስለዚህ ለአንድሮይድ ኦፐሬቲንግ ሲስተም የሞባይል መተግበሪያ ገንቢ ለመሆን ወስነዋል። ይህ በጣም ጥሩ መፍትሄ ነው, ነገር ግን የተወሰነ እውቀት ከሌለ አይሰራም. ቢያንስ ፕሮግራሚንግ መማር ያስፈልግዎታል። ብዙ የፕሮግራም አወጣጥ ቋንቋዎች አሉ, እና በየትኛው እንደሚጀምሩ መምረጥ ያስፈልግዎታል. በመካከላቸው ልዩነት አለ, እና ለመረዳት በጣም ቀላል ላይሆን ይችላል.

የወደፊት አንድሮይድ ገንቢ ሊያስብባቸው የሚችላቸው የፕሮግራም ቋንቋዎች እነኚሁና፡

  • ጃቫ ለአንድሮይድ ይፋዊ የልማት ቋንቋ ሲሆን በGoogle ልማት አካባቢ የሚደገፍ ነው። ለመማር ያን ያህል ቀላል ላይሆን ይችላል።
  • ኮትሊን - ይህ ቋንቋ ሁለተኛው በይፋ የሚደገፍ ቋንቋ ሆኖ አስተዋወቀ። በብዙ መልኩ ከጃቫ ጋር ይመሳሰላል፣ ግን ለመጀመር ቀላል ነው።
  • C/C++ - አንድሮይድ ስቱዲዮ C++ን ይደግፋል። ይህ ቋንቋ የበለጠ ውስብስብ ነው, ነገር ግን በጨዋታ እድገት ውስጥ በንቃት ጥቅም ላይ ይውላል.
  • C # - ይህ ቋንቋ ጀማሪዎችን ሊስብ ይችላል። በዩኒቲ እና በሐማሪን የልማት አካባቢዎች ይደገፋል። ለተለያዩ መድረኮች ጨዋታዎችን እና ምርቶችን ሲገነቡ ጥቅሞችን ይሰጣሉ።
  • መሰረታዊ - ይህ ቋንቋ በ B4A IDE የተደገፈ ነው, ይህም ቀላል ግን ኃይለኛ መሳሪያ ነው.
  • Corona/LUA - የLUA አካባቢ ተሻጋሪ ምርቶችን ለማልማት ጥሩ ነው። አፕሊኬሽኖችን መፍጠርን በእጅጉ ያቃልላል እና ወደ ቤተ-መጽሐፍት መዳረሻ ይሰጣል።
  • PhoneGap (HTML, CSS, JavaScript) - ይህ አማራጭ በይነተገናኝ ድረ-ገጾችን እንዴት መፍጠር እንደሚችሉ ለሚያውቁ ተስማሚ ነው. በ PhoneGap በተመሳሳይ መንገድ ተሻጋሪ መተግበሪያዎችን መፍጠር ይችላሉ።

አሁን እነዚህን አማራጮች በበለጠ ዝርዝር እንመልከታቸው.

ጃቫ

ወደ አንድሮይድ ልማት ሲመጣ ወደ አእምሮ የሚመጣው የመጀመሪያው የጃቫ ፕሮግራሚንግ ቋንቋ ነው። ጃቫ በ 1995 በ Sun Microsystems ተለቀቀ. ለተለያዩ የመተግበሪያ ዓይነቶች ጥቅም ላይ ይውላል. ወደ አንድሮይድ አፕሊኬሽን ስንመጣ ጃቫ በአንድሮይድ ልማት ውስጥ ቀድመው ለመጥለቅ ለሚፈልጉ ምርጥ ምርጫ ነው። ይሁን እንጂ ለጀማሪዎች በጣም ጥሩው ቋንቋ አይደለም. በእርግጠኝነት ችግሮች ያጋጥሙዎታል. ጀማሪ ከሆንክ ጨዋታ መፍጠር ከፈለክ ወይም መማር መጀመር ከፈለክ ነገር ግን ምን አይነት ውጤት ማግኘት እንደምትፈልግ ገና ካልወሰንክ በቀላል ነገር መጀመር ትፈልግ ይሆናል።

ኮትሊን

ኮትሊን፣ ልክ እንደ ጃቫ፣ ለአንድሮይድ መተግበሪያ ልማት ጥሩ ነው። ልዩነቱ ኮትሊን ለጀማሪዎች ቀላል ነው, ግን አሁንም ከብዙ ሌሎች አማራጮች ቀላል አይደለም. ማየት ተገቢ ነው ምክንያቱም ቋንቋው ወጣት ነው እና ከእሱ ጋር በአንድሮይድ ስቱዲዮ ውስጥ መስራት ይችላሉ ይህም ትልቅ ፕላስ ነው።

ሲ/ሲ++

ቀላል መተግበሪያዎችን ለመፍጠር ምርጥ ምርጫ አይደለም. አንድሮይድ ኤንዲኬን በመጠቀም በአንድሮይድ ስቱዲዮ ከቋንቋው ጋር መስራት ይችላሉ ነገርግን ከጃቫ እና ኮትሊን በተቃራኒ በጃቫ ቨርቹዋል ማሽን ላይ አይሰራም። ነገር ግን፣ በመሣሪያው ላይ ቤተኛ ይሰራል፣ ይህም ተጨማሪ የማህደረ ትውስታ አማራጮችን ይሰጥዎታል። በእሱ አማካኝነት በ3-ል ጨዋታዎች የተሻለ አፈጻጸም ማሳካት ይችላሉ። ይህ የእርስዎ ምርጫ ከሆነ ለችግር ይዘጋጁ. ጨዋታዎችዎን ለመፍጠር ዝግጁ የሆነ የጨዋታ ሞተር ቢጠቀሙ የተሻለ ሊሆን ይችላል።

ሲ#

C # በማይክሮሶፍት የተሰራ ቀላል የC እና C++ ስሪት ነው። በዚህ ቋንቋ፣ ልክ እንደ ጃቫ ስለ ማህደረ ትውስታ አስተዳደር መጨነቅ አያስፈልገዎትም። ይሁን እንጂ C # ከጃቫ ጋር ሲነጻጸር የበለጠ ዘመናዊ እና ንጹህ ነው. C # እና አንድነት ጨዋታዎችን ለማዳበር በጣም ጠቃሚ እና ቀላል ይሆናሉ። ለትግበራ ልማት, የአንድነት አካባቢ ያን ያህል ጥሩ አይደለም. C # በጣም ጥሩ ምርጫ ነው፣ ግን ፕሮፌሽናል አንድሮይድ ገንቢ ለመሆን ከፈለጉ አማራጮችዎን ይገድባል።

መሰረታዊ

ይህ ቋንቋ ለጀማሪዎች ምርጥ አማራጭ ነው። በ B4A ልማት አካባቢ ሊጠቀሙበት ይችላሉ። ይህ ጥምረት ጨዋታዎችን ለመስራት ጥሩ አይደለም፣ ግን እንዴት ማዳበር እንደሚቻል ለመማር ፍጹም ነው። ብዙ ጥረት ሳታደርጉ ብዙ አዳዲስ ነገሮችን መማር እና ጥሩ መተግበሪያዎችን መፍጠር ትችላለህ። ይሁን እንጂ ለእነዚህ ሁሉ ደስታዎች በገንዘብ መክፈል ይኖርብዎታል. አዲስ ነገር ይማራሉ፣ ነገር ግን በ BASIC እንዴት ፕሮግራም ማድረግ እንዳለቦት የሚያውቁ ከሆነ ባለሙያ መሆን አይችሉም።

ኮሮና

ኮሮና ከLUA ጋር በመተባበር ለአንድሮይድ ብቻ ሳይሆን ለማዳበር ያስችላል፣ እና ጃቫን ከመማር የበለጠ ቀላል ነው። እርስዎ ይወዳሉ እና በውጤቶቹ ይደሰታሉ, ነገር ግን ችሎታዎትን ለማዳበር, ሌላ ነገር መማር አለብዎት. እንደ BASIC፣ ባለሙያ ለመሆን ምንም መንገድ የለም።

የስልክ ክፍተት

የመጨረሻው አማራጭ በድር ልማት ጥሩ ለሆኑ እና ኤችቲኤምኤል ፣ ሲኤስኤስ እና ጃቫስክሪፕትን በመጠቀም በይነተገናኝ ድር ጣቢያ መፍጠር ለሚችሉ ተስማሚ ነው። PhoneGap ተመሳሳይ መሳሪያዎችን በመጠቀም መተግበሪያ እንዲፈጥሩ ይፈቅድልዎታል. ይህ አማራጭ ከአንድሮይድ ልማት ጋር ያለው ግንኙነት በጣም ትንሽ ነው ፣ ግን የተወሰኑ ግቦች ካሉዎት እና ለወደፊቱ አንድሮይድ ለማዳበር ካላሰቡ ተስማሚ ነው።

ብዙ አማራጮች አሉ። ትክክለኛውን ምርጫ ማድረግ እንደሚችሉ እርግጠኞች ነን.

በአንድሮይድ ባለስልጣን ላይ የተመሰረተ

የአንድሮይድ ኦፐሬቲንግ ሲስተም ዛሬ በዓለም ላይ በጣም ታዋቂ ከሆኑ የሞባይል መድረኮች አንዱ ነው። ሁሉም የአንድሮይድ ስማርትፎን ባለቤት በአንድ የተወሰነ ጉዳይ ላይ ለእሱ ተስማሚ የሆነ ልዩ አፕሊኬሽን ማግኘት ይፈልጋል ነገር ግን ሁልጊዜ እንደዚህ አይነት መተግበሪያ ማግኘት አይቻልም። በዚህ ጽሑፍ ውስጥ ነፃ ዘዴዎችን በመጠቀም አንድሮይድ መተግበሪያን እራስዎ እንዴት እንደሚሠሩ እንነጋገራለን ።

በአንድሮይድ መድረክ ፈጣን እድገት ምክንያት የተገለጹት ፕሮግራሞች አንዳንድ ተግባራት ሊለወጡ ይችላሉ, ስለዚህ ማንኛውንም ዝርዝሮች ለማብራራት, በአስተያየቶች ውስጥ ይጻፉ. የመጨረሻው እትም - 01/20/2018.

በተፈጥሮ ፣ ግስጋሴው ዝም ብሎ አይቆምም እና በ Android OS ልማት ለእሱ ተስማሚ የሆኑ የተለያዩ አይነት አፕሊኬሽኖችን ለመፍጠር ዕድሎች እየበዙ ነው። እና በቅርብ ጊዜ, ይህንን በተቋሙ ውስጥ ያጠኑ ልዩ ባለሙያተኞች ብቻ ሊፈጥሩት ይችላሉ, አሁን እሱ ማድረግ ይችላል ማንኛውም የስልክ ወይም የጡባዊ ተኮ ባለቤትአንድሮይድ መስመር ላይ።

ተጠቃሚዎች በልዩ ፕሮግራም እራሳቸውን ለማስደሰት ሲሉ የራሳቸውን መተግበሪያ መፍጠር ይችላሉ። ወይም የተወሰነ ገንዘብ ለማግኘት ሲሉ ሊያደርጉት ይችላሉ። ዛሬ በይነመረብ ለዚህ ሁሉንም እድሎች ያቀርባል.

ከዚህ በታች የተገለጹት መሳሪያዎች የራስዎን መተግበሪያ በበርካታ ደረጃዎች እንዲፈጥሩ ይፈቅድልዎታል.

አንዳንድ የቀረቡት ፕሮግራሞች እርስዎ እንዲያደርጉ ብቻ ሳይሆን እንዲያደርጉ ያስችሉዎታል ወዲያውኑ ገቢ መፍጠርየእሱ. እንዲሁም ማንኛውም የተፈጠሩ መተግበሪያዎች በ Google Play ስርዓት ላይ ሊቀመጡ ይችላሉ.

አንድሮይድ መተግበሪያን እራስዎ ለማድረግ አራት መንገዶች

ከዚህ በታች እንደዚህ አይነት መተግበሪያ በፍጥነት እና ያለ ልዩ እውቀት እንዲፈጥሩ የሚያስችልዎትን አራት "መሳሪያዎች" ያገኛሉ. እንደዚህ ያሉ ፕሮግራሞች እርስዎ የሚፈልጉትን ሁሉ እንዲፈጥሩ የሚያስችልዎ የግንባታ ቁሳቁሶችን የሚያስታውሱ ናቸው ብሎክ በብሎክ ፣ የታወቀውን የ LEGO የግንባታ ስብስብ ከመገጣጠም ጋር ጥሩ ተመሳሳይነት።

እዚህ የቀረቡት ሁሉም ፕሮግራሞች በሚከተሉት መስፈርቶች ተመርጠዋል.

  • ምቹ አጠቃቀም. በተፈጥሮ፣ እነዚህ ቅናሾች በሰለጠኑ ስፔሻሊስቶች ጥቅም ላይ አይውሉም ፣ ግን እንደ እርስዎ እና እኔ ባሉ ተራ ተጠቃሚዎች። ለዚህም ነው አፕሊኬሽኑ በጣም ምቹ፣ የሚሰራ እና ለአጠቃቀም ቀላል መሆን ያለበት።
  • ሊታወቅ የሚችል ቀላል በይነገጽ. በአመክንዮአዊ አነጋገር, ይህ ነጥብ ከቀዳሚው ጋር የተከተለ ይመስላል, ይህም ማለት ፕሮግራሙ ምቹ ብቻ ሳይሆን ሊታወቅ የሚችል መሆን አለበት.
  • ታላቅ ተግባር. አፕሊኬሽኑን ለመፍጠር ሰፊው የተለያዩ መንገዶች የተወሰነ ተጨማሪ ነው። ምንም እንኳን ሁሉም የቀረቡት ፕሮግራሞች በአማካይ ተመሳሳይ ተግባራት ቢኖራቸውም, ከአንዳንድ ጥቃቅን ዝርዝሮች በስተቀር.

ከዚህ በታች የመጀመሪያውን መተግበሪያዎን ለመፍጠር የሚያግዙዎትን የመሳሪያዎች ምርጫ እንመለከታለን.

መተግበሪያ ገንቢ - መተግበሪያዎችን ለመፍጠር ቀላል መሣሪያ

ይህ አማራጭ የራስዎን መተግበሪያዎች በፍጥነት ለመፍጠር ጥሩ መንገድ ነው. ያለ ጥርጥር, ጥሩ ዜናው አንድ ሳንቲም ሳያስገቡ ሊጠቀሙበት ይችላሉ, ይህም ማለት ነው በነጻ. ምንም እንኳን እዚህም ድክመቶች ቢኖሩም, ቢያንስ ሙሉ በሙሉ በእንግሊዝኛ (በዲሴምበር 2017 ከተሻሻለ በኋላ, ሩሲያኛ ተጨምሯል).

የፕሮግራሙ ባህሪያት

  • መተግበሪያ ለመፍጠር ትልቅ የአብነት ምርጫ አለ። በአእምሮ ውስጥ አንዳንድ ቀላል መተግበሪያ ካለዎት, ከዚያም ይህ ፕሮግራም በቀላሉ አብነት ለመምረጥ ይረዳናል;
  • መተግበሪያውን ከፈጠሩ በኋላ ስታቲስቲክሱን መከታተል ይችላሉ;
  • አንድ መተግበሪያ ከፈጠሩ እና ግምገማን ካለፉ፣ በGoogle ፕሌይ ስቶር ላይ በቀላሉ እና በትክክል ሊዘረዝሩ ይችላሉ።

AppsGeyser - ከፍተኛ ጥራት ያላቸውን አንድሮይድ አፕሊኬሽኖችን በራስዎ የመፍጠር ጣቢያ

ኦፊሴላዊ ድር ጣቢያ - https://www.appsgeyser.com

ይህ መሳሪያ ከቀዳሚው የተሻለ ነው, ምክንያቱም የራስዎን መተግበሪያ ለመፍጠር ብዙ ተጨማሪ እድሎች አሉ. ጣቢያው በጥቂት ደቂቃዎች ውስጥ የራስዎን ፕሮግራም እንዲፈጥሩ ይፈቅድልዎታል. ይህ አርታኢ ካጋጠሙን ሁሉ ቀላሉ ነው። እርስዎ እንዲሰሩ የሚረዳዎት የመተግበሪያዎች ዝርዝር በጣም ትልቅ ነው, ከመደበኛው አሳሽ ጀምሮ በራስዎ መልእክተኛ ይጨርሳሉ.

የAppsGeyser ጥቅሞች

  • አፕሊኬሽኑ በፍጥነት የተጻፈ ነው፣ በጥሬው በጥቂት ጠቅታዎች ውስጥ።
  • ለ Android ቀላል ጨዋታዎችን እንዲፈጥሩ ይፈቅድልዎታል, ምክንያቱም ዛሬ እያንዳንዱ መሳሪያ ይህን ማድረግ እንደማይችል መቀበል አለብዎት;
  • አንዴ አፕሊኬሽኑ ዝግጁ ከሆነ በ Google Play መደብር ውስጥ በቀላሉ ሊቀመጥ ይችላል;
  • በተጨማሪም፣ በAppsGeyser አገልግሎት በቀጥታ በፕሮግራምዎ ገቢ መፍጠር ይችላሉ። ይህ ጠቃሚ ተግባር ነው, ምክንያቱም ሀሳብዎን በማሳየት, ከእሱ ገንዘብ ማግኘት ይችላሉ;
  • በግል መለያዎ ውስጥ መተግበሪያ ይፍጠሩ፣ ያርትዑ፣ ያትሙ (ውጤቶቹ እንዲቀመጡ)።

IbuildApp - የራስዎን ፕሮጀክቶች ለማዳበር ኃይለኛ ሞተር

ይህ መሳሪያ በትክክል የተሟላ እይታ ሊሰጠው ይገባል. ከላይ እንደተነጋገርነው አንድሮይድ መተግበሪያዎችን ለመፍጠር የፕሮግራሚንግ ቋንቋ ማወቅ አያስፈልግዎትም። የእድገት መድረክ በጣም ቀላል ስለሆነ የራስዎን መተግበሪያ መፍጠር በጣም ቀላል ይሆናል. ሂደቱ ጥቂት ደቂቃዎችን ብቻ ይወስዳል, ግን ውጤቱ ግልጽ ይሆናል.

የIbuildApp ድህረ ገጽ ሁለቱም የሚከፈልባቸው እቅዶች (የአንድ ግለሰብ መተግበሪያ ልማት፣ ከተጨማሪ ልማት ጋር) እና ነጻ አብነቶች አሉት፣ ከእነዚህም ውስጥ ብዙ ናቸው።

የሩሲያ ኦፊሴላዊ ድር ጣቢያ - https://russia.ibuildapp.com

ምን ማድረግ እንደሚችል እንይ፡-

  • በተለያዩ ርዕሰ ጉዳዮች ላይ ትልቅ የርእሶች መዝገብ፡ ምግብ ቤቶች፣ ካፌዎች፣ የስፖርት እንቅስቃሴዎች እና ሌሎች ብዙ ርዕሶች ሊሆን ይችላል የሚፈልጉትን ማንኛውንም ነገር እንዲመርጡ ያስችልዎታል። የሚያስፈልግህ አንድ የተወሰነ ነገር መምረጥ እና ከዛ ፍላጎትህን ለማሟላት አርትዕ ማድረግ ብቻ ነው።
  • የተፈጠረውን መተግበሪያ ለማስተዋወቅ አብሮ የተሰሩ መንገዶችም አሉት። ፕሮግራሙ በፍጥነት መተግበሪያን ለመፍጠር ብቻ ሳይሆን ለማስተዋወቅም ይረዳል። በሌሎች ሁኔታዎች, ይህ ሂደት በጣም ረጅም ጊዜ ይወስዳል;
  • በተጨማሪም, መተግበሪያውን ከማስታወቂያ አውታር ጋር ማገናኘት ይችላሉ, ይህም ማለት ከእሱ ገንዘብ ያገኛሉ.

AppsMakerstore - ቀላል ፕሮግራሞችን ለመፍጠር መድረክ

ኦፊሴላዊ ድር ጣቢያ - https://appsmakerstore.com

አንድሮይድ መተግበሪያዎችን ለመፍጠር የተነደፈው አራተኛው አሪፍ መድረክ። ምናልባት ከዋናዎቹ ጥቅሞች አንዱ የAppsMakerStore ድረ-ገጽን በመጠቀም ብዙ ፕላትፎርም የሚሆኑ ፕሮግራሞችን መፍጠር ይችላሉ (ለምሳሌ በአንድሮይድ፣ iOS እና Windows Phone ላይ)

የመድረኩን ጥቅሞች እንመልከት፡-

  • ከዲዛይነር ጋር መሥራት በመስመር ላይ ይከናወናል;
  • የነፃ ምዝገባ ዕድል;
  • ዝግጁ-አቀማመጦችን በመጠቀም መተግበሪያዎችን መጻፍ ፣በርዕሱ ላይ ትልቅ የአብነት ምርጫ ለእያንዳንዱ ተጠቃሚ ይሰጣል።

ኤፒኬ ፈጣሪን በመጠቀም መተግበሪያ ለመፍጠር የቪዲዮ መመሪያዎች


ያ ብቻ ነው፣ የሚፈልጉትን እንዳገኙ እና በምርጫችን እንደረኩ ተስፋ እናደርጋለን። ይህ የመሳሪያዎች ስብስብ ለጀማሪ ፕሮግራመር ልዩ ነገር ይሆናል እና ቀላል አፕሊኬሽኖችን በነጻ የመፍጠር ውስብስብ ነገሮችን ለመረዳት ያስችላል።