Coding01

Coding 点滴

0%

我们发现 iOS 自带的「股市」小组件有时候更新数据有问题,主要是因为使用雅虎的股票接口,在国内网络等因素,老出现拿不到数据。

所以今天我们根据这一情况,自己尝试使用国内一些主流股票接口,重新模仿写一个相似的股市小组件。

数据接口

由于国内一些类似百度智能云阿里云等都提供股票接口服务,所以我在选择其中几家性价比实惠的,自己封装成一个统一接口。

Read more »

在之前的写货币兑换的小组件文章中,我们采用 Enum 静态的方式写入我们的货币选择,今天我们改用动态的,一方面是学习如何通过代码的形式动态修改选项,另一方面是为了之后扩展需要,将选项放到接口中实时动态调整。

Enum && Type

Enum

简单的理解就是 Enums 是写死在 .intentdefinition 文件中的静态配置,只有发版才可以更新。

Type
Types 就灵活多了,可以在运行时动态的生成,一般而言我们使用 Types 来做自定义选项。

Read more »

这是我的第二个小组件,有关健康数据的获取和展示,今天我以「睡眠」时间为例。

设置权限

iOS 提供了 HealthKit 包,专门用于获取健康数据,在我的自我量化文章中有提到。

首先需要将 HealthKit 权限打开。

在 Info 中,加入获取健康权限的说明:

Read more »

有了「汇率转换工具」基本功能,我们还需要能自定义参数,配置任意两种货币之间的转换。

这里就需要 widgets 用户配置了。

widget 用户配置界面不需要手动编写,只要添加一个 SiriIntent 即可,用户只需要长按小部件后点击编辑即可配置 Widget 的数据了。

配置界面大致如下:

汇率兑换,肯定需要选择兑换的两种货币,这里就需要两个参数 from 和 to。同时,我们需要定义一个枚举 Enum,罗列常见的货币种类名称。

Read more »

Introducing WidgetKit

Easily build widgets and make them available across iOS, iPadOS, and macOS using the WidgetKit framework and the new widget API for SwiftUI. Widgets now come in multiple sizes, and users can visit the new widget gallery to search, preview sizes, and place them anywhere on the Home screen to access important details at a glance. They can also add Smart Stacks — sets of widgets that use on-device intelligence to surface the right widget at the right moment, based on factors like time, location, and activity.

文字和图片来自 Introducing WidgetKit

在项目中 File->New->Target 添加 Target:

Read more »

引用

1
2
3
4
5
6
7
8
9
10
11
12
13
14
import matplotlib.pyplot as plt
from typing import Dict, Text

import numpy as np
import tensorflow as tf

import tensorflow_datasets as tfds
import tensorflow_recommenders as tfrs
import os
import ssl

os.environ['HTTP_PROXY'] = 'http://0.0.0.0:8888'
os.environ['HTTPS_PROXY'] = 'http://0.0.0.0:8888'
ssl._create_default_https_context = ssl._create_unverified_context
Read more »

最近看了新书《简明的Tensoflow 2》,准备配置一个测试开发环境。

本文主要是使用 JupyterLab,可以用 conda 或者 pip 方式安装。

1
2
3
4
5
// conda 方式
conda install -c conda-forge jupyterlab

// or pip 方式
pip install jupyterlab

conda 源更新比较缓慢,推荐还是用 pip。

Read more »

今天想着如何快速的将 Rasa API 融入之前的项目中,如在我的公众号 coding01里增加一个自动回复聊天机器人。

长期以来,我一直用 Laradock,Laradock 本身也集成了一些好用的开发部署工具,如 Nginx,certbot 等,在学习使用 Rasa 时,想着以最快的速度构建开发部署 Rasa 接口,所以今天我主要采用常规的做法——基于 Nginx 和 Docker 部署 Rasa。

注:由于 Rasa X 自成体系,在学习过程中,我还是放在「学习 Kubernetes 的系列」中去了解 Rasa X 的使用。

前言

在之前的文章中,有描述过如何在公众号里加入自动聊天机器人的文章,欢迎大家查阅:有机器人要菜单没什么用,文章里利用 EasyWeChat 和 ChatterBot 简单搭建一个公众号「自动回复机器人」,利用 EasyWeChat 桥接好公众号和机器人。今天的目的其实就是「把 ChatterBot 替换成 Rasa」。

Read more »