อะไรคือความแตกต่างที่สำคัญระหว่างการประยุกต์ใช้มัลติทาสกิ้งแอพพลิเคชั่น Android และ iPhone?


9

อะไรคือความแตกต่างหลักระหว่าง Android และ iPhone ที่ใช้มัลติทาสกิ้งในระดับแอพพลิเคชั่น

(อย่าเปลี่ยนสิ่งนี้ให้เป็นข้อโต้แย้งของแฟนบอยที่เป็นอัตนัยใช่ไหม?)

คำตอบ:


6

นี่ไม่ใช่คำตอบสำหรับคำถามของคุณ แต่มันคุ้มค่าที่จะอธิบายว่าทั้งสองระบบปฏิบัติการทำงานหลายอย่างพร้อมกัน [1] ภายใต้ประทุน (เท่าที่จะทำได้และรันหลายกระบวนการ)

คำถามของคุณชัดเจนเกี่ยวกับการทำงานมัลติทาสกิ้งระดับแอปพลิเคชัน ("ฉันสามารถปล่อยให้แอปพลิเคชันหนึ่งทำงานในขณะที่ใช้อีกแอปพลิเคชันได้หรือไม่?") ซึ่งเป็นการใช้คำศัพท์ใหม่ค่อนข้างใหม่ ตัวอย่าง (เช่นฟังแพนโดร่าขณะอ่านอีเมล) โดยเฉพาะแอปพลิเคชันจำนวนมากไม่จำเป็นต้องทำงานในพื้นหลังเพื่อนำเสนอตัวเองให้กับผู้ใช้ราวกับว่าพวกเขาไม่เคยหยุดทำงานตราบใดที่พวกเขาบันทึก / กู้คืนสถานะของพวกเขา แอปพลิเคชันที่ต้องดำเนินการเป็นระยะ (เช่นการตรวจสอบจดหมายหรือส่งสัญญาณเตือนภัย) ไม่จำเป็นต้องทำงานในพื้นหลังอย่างต่อเนื่อง สามารถเรียกใช้งานได้เป็นครั้งคราวโดยระบบปฏิบัติการ ปัญหาใหญ่มักจะเป็นแอพพลิเคชั่นที่ต้องการ CPU คงที่ในขณะที่ทำงานอยู่เบื้องหลังเช่น Pandora

โดยทั่วไปแล้วแอปเปิลทำงานหนักกว่าเดิมเพื่อกีดกันหรือป้องกันแอปพลิเคชั่นแบ็คกราวน์ที่ทำงานอย่างต่อเนื่องในขณะที่ Android ดูเหมือนเปิดกว้างกว่า แต่พวกเขากำลังบรรจบกันเนื่องจากแอปเปิ้ลอนุญาตให้แอพอย่าง Pandora ทำงานในพื้นหลังและ Android มีเครื่องมือที่สมบูรณ์ยิ่งขึ้นที่จะกีดกันงานพื้นหลังที่ไม่จำเป็นเมื่อโพลหรือสถานะที่บันทึกไว้เพียงพอ

[1] http://en.wikipedia.org/wiki/Computer_multitasking


1
จุดดี. ฉันจะแก้ไขคำถามของฉัน

3

เท่าที่ฉันสามารถบอกได้

การทำงานหลายอย่างของ iPhone ถูก จำกัด มากขึ้น กิจกรรมมัลติทาสก์ต้องเป็นหนึ่งในสิ่งต่อไปนี้:

  • เสียงพื้นหลัง
  • VoIP
  • ตำแหน่งพื้นหลัง
  • แจ้งเตือนผลักดัน
  • การแจ้งเตือนท้องถิ่น
  • ภารกิจเสร็จสิ้น
  • สลับแอปอย่างรวดเร็ว

[ขอบคุณGizmodo !]

ในทางกลับกัน Android ช่วยให้สามารถทำงานมัลติทาสกิ้งอย่างแท้จริงในลักษณะที่คล้ายกับพีซี

ก่อนที่ฉันจะถูกกล่าวหาว่าเป็นแฟนโบ Android ให้ฉันอธิบายบางสิ่งบางอย่าง รูปแบบมัลติทาสกิ้งของ iPhone นั้นเพียงพอสำหรับสถานการณ์ส่วนใหญ่และหลีกเลี่ยงปัญหามากมาย (เช่นการขาดแคลนหน่วยความจำ) ที่มาพร้อมกับระบบ Android


ทำงานมัลติทาสกิ้งอย่างแท้จริง? ฉันไม่คิดว่าผู้คนใน WebOS หรือ Symbian จะเห็นด้วย ...
Ivo Flipse

2

Android มีแนวคิดที่แตกต่างกันเกี่ยวกับการทำงานมัลติทาสกิ้งระดับแอปพลิเคชันกว่าพีซี มีการยกเลิกการเชื่อมต่อระหว่างข้อมูลวิธีดูข้อมูลและวิธีการใช้งานข้อมูล

คุณสามารถเปิดดูแอปได้ครั้งละหนึ่งรายการเท่านั้น แต่การดำเนินการกับข้อมูลสามารถดำเนินการในพื้นหลังได้ สิ่งนี้ทำให้ผู้พัฒนาแอปพลิเคชั่นรู้สึกว่ายากเหมือนเดสก์ท็อปเมื่อสลับระหว่างแอพออกจากแอพและเริ่มแอพใหม่ บางครั้งมันรู้สึกว่าเป็นไปไม่ได้ที่จะฆ่าแอพ แต่บางครั้งมันก็รู้สึกเหมือนว่ามันเป็นไปไม่ได้ที่จะเปลี่ยนไปทำงานหนึ่งและกลับมาอีกครั้ง ขึ้นอยู่กับว่านักพัฒนาแอปทำอย่างไร

คุณสามารถมีกระบวนการพื้นหลังได้หลายครั้งพร้อมกันและมีกำหนดเวลาเหมือนแอพเดสก์ท็อป เคอร์เนล Linux จะเลือกวิธีการจัดลำดับความสำคัญของสิ่งที่ได้รับทรัพยากรหน่วยความจำและ CPU เมื่อโทรศัพท์ตัดสินใจว่าหน่วยความจำไม่พอเครื่องจะเริ่มฆ่าสิ่งต่างๆเพื่อเพิ่มหน่วยความจำ สิ่งนี้ทำแตกต่างจากวิธีที่ Linux หรือ OS อื่น ๆ ส่วนใหญ่ทำงานตามปกติ

ข้อมูลของโปรแกรมพร้อมใช้งานเสมอ ตราบใดที่แอพมีสิทธิ์ในการเข้าถึงข้อมูลก็สามารถใช้ได้ คุณไม่จำเป็นต้องให้บริการทำงานในพื้นหลังเพื่อให้พร้อมใช้งาน

Apple มีวิธีเฉพาะเจาะจงที่คุณสามารถทำงานหลายอย่างได้ นี่เป็นส่วนย่อยของวิธีที่ Android อนุญาต เฉพาะแอปบางประเภทเท่านั้นที่สามารถทำงานในพื้นหลังและต้องตั้งโปรแกรมให้ทำ

เดสก์ท็อปนั้นแตกต่างจากทั้งสองอย่างมาก ตรรกะมุมมองข้อมูลและการประมวลผลข้อมูลของแอปพลิเคชันแต่ละครั้งมักถูกล็อคเข้าด้วยกัน ฉันจะบอกว่า WebOS, Symbian และ Maemo / Meego เป็นตัวอย่างของสิ่งนี้บนอุปกรณ์มือถือ หากแอปพลิเคชั่นเปิดเผยข้อมูลและการประมวลผลเบื้องหลังกับ "มุมมอง" อื่น ๆ ก็จะเป็นแอปพลิเคชันพิเศษมาก


สำหรับเร็กคอร์ดนั้น Linux มี OOM Killer ในทุกสาขา แต่ไม่ใช่เฉพาะ Android อย่างไรก็ตามในพีซีคุณต้องใช้พื้นที่สว็อปของคุณรวมถึง RAM จริงก่อนที่จะเริ่มฆ่าสิ่งต่าง ๆ

ไม่ได้โปรดดู: wiki.kldp.org/wiki.php/AndroidPortingOnRealTarget#s-3.1.5 มันเป็นหนึ่งในสิ่งที่ยากลำบากเกี่ยวกับ Android ไม่ใช่การใช้ Linux ในการที่จะต้องติดตั้งโปรแกรมนี้ลงในเคอร์เนลเพื่อให้ทำงานได้ ลองใช้ Dalvik บนเคอร์เนลหุ้นและสิ่งนี้จะป้องกันไม่ให้คุณดำเนินการต่อ
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.