BAPrayerTimes 1.4.1

BAPrayerTimes 1.4.1

测试已测试
语言语言 CC
许可 MIT
发布最后发布2020年4月

Ameir Al-Zoubi维护。



  • Bagoul Apps

#BAPrayerTimes

Build Status Coverage Status

BAPrayerTimes是一个用于计算伊斯兰祷告时间的Objective-C库。它提供了一个方便的Objective-C接口来访问ITL祷告时间库,使得在iOS和OS X上正确计算祷告时间变得容易。

##ITL 伊斯兰工具和库(ITL) 是一个广泛使用的、用C编写的伊斯兰工具库。它是一个由arabeyes组织维护的开源项目。由于它用C编写,因此可以原生地在iOS和OS X上运行。它被用于许多流行的Linux实用工具中,也是此库计算祷告时间的来源。

##安装要使用BAPrayerTimes,最简单的方法是使用CocoaPods。

pod 'BAPrayerTimes', '~> 1.4'

您还可以直接下载源码并将其包含到您的项目中。必要的文件包括BAPrayerTimes.h,BAPrayerTimes.c,prayer.h,prayer.c,astro.h和astro.c。

##要求BAPrayerTimes在iOS 6及以上版本和OS X 10.8及以上版本得到官方支持。它可能还适用于更早的系统,但是尚未进行测试以验证这一点。

##使用首先导入BAPrayerTimes.h,然后初始化一个BAPrayerTimes对象。您可以根据需要添加多少自定义,使用几种不同的初始化器来创建BAPrayerTimes对象。最基础的初始化器是:

BAPrayerTimes *prayerTimes = [[BAPrayerTimes alloc] initWithDate:date
                                                        latitude:35.779701
                                                       longitude:-78.641747
                                                        timeZone:timezone
                                                          method:BAPrayerMethodMWL
                                                          madhab:BAPrayerMadhabShafi];

在这里,您提供祷告时间的日期、用户的纬度、经度和时区,以及Fajr和Isha的计算方法以及用于Asr的派什湾(madhab)。还有一些额外的初始化器,您也可以包括自定义计算方法的角和每个祷告的手动调整。

对象初始化后,您可以访问特定祷告的属性来获取任何祷告时间。

prayerTimes.fajrTime

您可以访问Fajr、日出、Dhuhr、Asr、Maghrib、Isha和明天的Fajr的时间。要获取其他日期的祷告时间,只需更新日期属性。

prayerTimes.date = newDate;

我们在示例目录中提供了一个示例应用程序,展示了BAPrayerTimes在iOS中的基本实现。

##计算方法BAPrayerTimes提供了一个枚举,包含ITL库的所有选项。但是,它不会为特定位置自动设置计算方法,因为没有明确的标准资源。以下是一些提议使用特定计算方法的地点。这份名单绝对不是最终版本,我们希望收到任何对名单进行调整的拉取请求。

欧姆·阿尔-库拉 (BAPrayerMethodUmmQurra)

沙特阿拉伯

海湾 (BAPrayerMethodFixedIsha)

阿拉伯联合酋长国、科威特、巴林、阿曼、也门、卡塔尔

全球望月委员会 (代码:BAPrayerMethodMCW

美国、加拿大、英国

埃及总测量局 (代码:BAPrayerMethodNewEgyptianAuthority

埃及、苏丹、利比亚、阿尔及利亚、摩洛哥、黎巴嫩、约旦、叙利亚、巴勒斯坦、伊拉克、土耳其、马来西亚

卡拉奇伊斯兰科学大学 (代码:BAPrayerMethodKarachiHanafi

巴基斯坦、印度、孟加拉国、阿富汗

伊斯兰世界联盟 (代码:BAPrayerMethodMWL

德国、西班牙、法国、新加坡、印度尼西亚、菲律宾

北美 (代码:BAPrayerMethodNorthAmerica

不推荐

贡献

我们真诚地希望开发者采用这个库,并为它做出贡献,为所有开发者提供高标准的祈祷时间计算。如果您想为Objective-C接口做出贡献,请为此仓库创建pull请求。如果您想为计算时间的基于C的库做出贡献,请为ITL仓库创建pull请求。我们希望尽快添加单元测试,以缓解大家对计算时间正确性的担忧,并确保代码更改不会产生任何不良影响。

许可

BAPrayerTimes采用MIT许可。参见LICENSE文件获取更多信息。