简诗App的环境搭建

概述

该文档记录自己搭建“简诗”App开发环境的过程,仅供学习参考。如有问题,请通过邮件形式反馈。

下载

1
2

git clone https://github.com/wingjay/jianshi.git

搭建

后台服务

配置Python虚拟环境

  1. 在pycharm中导入server文件夹。

  2. 按”ctrl + alt + s”打开”Settings”, 切换到”Project:server”标签的“Project Interpreter”子标签。

  3. 点击右上角的“齿轮”图标,点击“Show All…”,打开“Project Interpreter”对话框。

  4. 在“Project Interpreter”对话框中,点击右侧“+”按钮,打开“Add Python Interpreter”对话框。

  5. 选择右侧“Virtualenv Environment”标签,在右侧面板中选择“New environment”单选按钮。在“Location”项中选择“Virtualenv Environment”的文件夹。点击“OK”。

配置数据库

  1. 打开navicat,连接mysql服务器,创建数据库“jianshi”。

  2. 导入数据库脚本:

1
2
3
4
5
6

jianshi\server\server\db\schema\0001\diary.sql

jianshi\server\server\db\schema\0001\event_log.sql

jianshi\server\server\db\schema\0001\user.sql

配置文件

  1. 复制jianshi\server\conf\prod.py到jianshi\server\conf\dev.py。

  2. 修改dev.py内容:

1
2

TEST_CONFIG = 'dev'
  1. 创建jianshi\server\instance\config.py。

  2. 编辑config.py:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22

# NOTICE!!! DEBUG Must be turn-on in prod env
#DEBUG = False

# NOTICE!!! Don't ever lost these keys, otherwise old user won't be able to login with false key
# safety constant. The real key is stored in other config, which isn't included in this open-source repo

# 注意,AES KEY必须为16位字符
DEFAULT_KEY = '*jianshijianshi*'
AUTH_TOKEN_ENCRYPT_KEY = '*jianshijianshi*'
SYNC_TOKEN_ENCRYPT_KEY = '*jianshijianshi*'

# mysql
MYSQL_LOCAL_HOST = 'localhost'
MYSQL_USER = 'jianshi'
MYSQL_PASSWORD = '123456'
MYSQL_DB_NAME = 'jianshi'


#Email
EMAIL_ADDRESS = 'email'
EMAIL_PASSWORD = 'password' # client authorization code from mail.126.com

运行

  1. 在pycharm中运行jianshi\server\runserver.py,输出:
1
2
3
4
5
6
7
8
9
10
11

192.168.1.109
D:\android\jianshi\server\server
* Restarting with stat
pydev debugger: process 13244 is connecting

192.168.1.109
D:\android\jianshi\server\server
* Debugger is active!
* Debugger PIN: 136-653-648
* Running on http://192.168.1.109:5000/ (Press CTRL+C to quit)

Android

  1. 在Android Studio中打开jianshi\android项目文件夹。

  2. 修改jianshi\android\app\build.gradle:

1
2

classpath 'io.fabric.tools:gradle:1.+'

改为

1
2

classpath 'io.fabric.tools:gradle:1.27.1'
  1. 修改jianshi\android\build.gradle:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19

buildscript {
repositories {
jcenter(){url 'http://jcenter.bintray.com/'}
}
dependencies {
classpath 'com.android.tools.build:gradle:2.2.2'
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
classpath 'com.neenbedankt.gradle.plugins:android-apt:1.8'
}
}

allprojects {
repositories {
jcenter(){url 'http://jcenter.bintray.com/'}
maven { url "https://www.jitpack.io" }
}
}
  1. 点击“sync project”

问题

  • E/UserManager: signup failure java.net.ConnectException: Failed to connect to /127.0.0.1:5000

Android底层是Linux内核,Android本身就是一个操作系统;因此,这时我们在模拟器的浏览器中输入的localhost或127.0.0.1所代表的是 Android模拟器(Android虚拟机),而并非是你的电脑。这也是你在模拟器中使用localhost时会报“找不到网页”的原因。

参考

给世界留下最美好的财富,感谢您支持并鼓励我继续创作!