Pocket CastsAutomattic 旗下播客应用

联合创作 · 2023-09-29 20:23

Pocket Casts 是最知名、功能最强大的播客平台之一,Pocket Casts 归属于 Automattic,后者还拥有 WordPress 和 Tumblr。此次开源的是 Pocket Casts 的移动端应用(iOS 和 Android)。

构建说明(Android)

  1. 确保已安装 Android Studio
  2. 在 Android Studio 中,从本地存储库中打开项目。
  3. 转到工具 → 设备管理器并创建一个模拟设备。
  4. 转到运行 → 编辑配置... 并创建一个 Android App 配置。
  5. 选择模块 “pocketcasts-android.app.main”。
  6. 运行

构建和测试(Android)

从命令行构建、安装和测试项目:

$ ./gradlew :app:assembleDebugProd          # assemble the debug .apk
$ ./gradlew :app:installDebugProd           # install the debug .apk to a connected device
$ ./gradlew :app:testDebugUnitTest          # assemble, install and run unit tests
$ ./gradlew :app:connectedDebugAndroidTest  # assemble, install and run Android tests

目录结构(Android)

.
├── app                    # Mobile app
├── automotive             # Automotive app
├── modules
│   ├── features
│   │   ├── account        # Create account and sign in pages.
│   │   ├── cartheme       # Automotive resources needed for the account pages.
│   │   ├── discover       # Discover section.
│   │   ├── filters        # Filters section.
│   │   ├── navigation     # Navigation utilities.
│   │   ├── player         # Full screen player
│   │   ├── podcasts       # Podcasts section.
│   │   ├── profile        # Profile section.
│   │   ├── search         # Search pages.
│   │   └── settings       # Settings pages.
│   └── services
│       ├── compose        # Shared Compose code.
│       ├── images         # Image resources.
│       ├── localization   # Contains the strings in English and localized strings from GlotPress. 
│       ├── model          # The database logic and entities. Also transfer objects required which aren't stored in the database.
│       ├── preferences    # Stores the user preferences and configuration settings.
│       ├── repositories   # Provides accessing to the data from the 'servers' and 'model' modules.
│       ├── servers        # Provides the network calls to the servers. The UI layer should access these through the 'repositories' module.
│       ├── ui             # Shared UI code for the 'compose' and 'views' modules. This includes the themes.
│       ├── utils          # Utility classes.
│       └── views          # Shred Only the old views code.

设置(iOS)

需要安装 Bundler:

gem install bundler

接下来,需要使用此脚本安装 CocoaPods 和 FastLane 所需的所有依赖项:

make install_dependencies

外部贡献者

如果你是外部贡献者,请运行 make external_contributor。之后就应该能够构建和运行该项目。

运行(iOS)

打开 .xcworkspace 文件,选择 Pocket Casts 项目和要在其上运行的模拟器设备,然后点击 play 按钮。

浏览 13
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报