演示使用联系人的 Apple Xcode 项目
具有可访问性的演示Xcode联系人应用程序
这个应用程序被命名为“PhotoCaller”。这是一个正在进行的Apple iOS应用程序。 它显示用户的联系人。它旨在提高可访问性。
该应用程序最初是一个针对帕基森病患者的研究项目。 该疾病可引起运动困难、视力困难和认知困难。
该应用程序是开源且免费的。我们欢迎建设性的建议、拉动请求和捐赠。
截图
该应用程序将每个联系人显示为一张卡片,其中包含:
-
联系人的照片。
-
联系人的全名。
-
通过视频和语音连接的按钮。
-
用于在联系人之间前后导航的按钮。
寻求帮助
如果您患有帕金森病,或者正在照顾患有帕金森病的人,并且您愿意交谈,那么我们将非常乐意与您交谈。
如果您是 Apple iOS Swift 开发者,我们正在寻求志愿者开发者的帮助。
目标
对于遇到运动困难的人来说,良好的可用性。
- 如关节炎,或神经损伤,或反射性震颤等。
对于遇到视力障碍的人来说,良好的可用性。
- 如部分视力、复视、视力模糊、或视力朦胧等。
对于遇到认知困难的人来说,良好的可用性。
- 例如技术经验不足,或记忆丧失或混乱。
实现
颜色:
-
所有视图都使用高对比度、粗描边线条和纯色。
-
Not low-contrast, not thin-stroke lines, not gradient colors.
Actions:
-
All actions use buttons.
-
Not tab menus, not slideout grips, etc.
Gestures:
-
All gestures are taps.
-
Not flick-to-scroll, no pinch-to-zoom, etc.
Button taps:
-
All taps are single-tap.
-
Not double-tap, not long-tap, etc.
Button sizes:
-
All buttons are 2x size or larger.
-
Not default-size buttons, not sub-size buttons, etc.
Button locations:
-
All buttons are near the screen’s bottom and center, for easy reachability.
-
Not near the screen’s top or left/right edges, etc.
Button colors:
-
All buttons are black tint.
-
Not default tint, not blue tint, etc.
Button icons:
-
All buttons use the Apple SF Symbol circle icons e.g. “video.circle”, “arrow.left.circle”.
-
Not “video”, not “video.fill”, not “video.circle.fill”, etc.
UI/UX Current Scope
Read contacts.
- Beyond scope: create/update/delete contacts. For these, please use the Apple Contacts app.
One contact uses one phone number.
- Beyond scope: One contact uses multiple phone numbers. For these, please use the Apple Contacts app.
Stable contacts.
- Future scope: contacts that are rapidly changing and/or need synchronization.
Portrait orientation.
- Future scope: landscape orientation.
Apple ecosystem.
- Future scope: other ecosystems, starting with Android.
Current Apple iPhone, curent Apple iPad, curent iOS.
- Future scope: older Apple iPhone, older Apple iPad, older iOS; other devices such as Apple MacBook or Apple Watch.
Video connection uses FaceTime.
- Future scope: other video connections such as Zoom video, Meta WhatsApp video, Microsoft Teams video, etc. For these, we welcome help.
Contact image is cropped to square.
- Future scope: other image sizes, other image shapes.
Technical questions
We have technical questions and welcome advice from experienced developers:
-
How can iOS Swift detect if a CNContact has FaceTime capabilties?
-
How can the app ensure that open(“facetime://…”) succeeds, then after the call the person is returned to the app?