當前位置:首頁 » 編程語言 » flaskpython教程

flaskpython教程

發布時間: 2022-12-23 17:20:51

python flask 怎麼組織程序

1.初始化

所有的flask程序都必須創建一個程序實例

web伺服器使用wsgi介面協議,把接收客戶端的請求都轉發給這個程序實例來進行處理。這個程序實例就是flask對象

from flask import Flask
app = Flask(__name__)
#__name__決定程序的根目錄,以便以後能找到相對於程序根目錄的資源文件位置


2.路由和視圖函數

程序實例需要知道接收請求後,需要知道url請求應該運行哪些代碼。所以保存了一個url和python函數的映射關系;這個映射關系就叫做路由

flask程序中路由的寫法:

2.1#使用app.route裝飾器,把修飾的函數注冊為路由。例如

@app.route('/')def index(): return "<h1>Hello World</h1>"

#函數的名字不是必須寫index的,只是和裝飾器關聯的時候寫的函數名而已

#把index函數注冊為程序根路徑的處理程序。函數的返回值稱為響應,是客戶端接收的內容。

像index這樣的函數稱為試圖函數,試圖函數返回的響應可以是包含html的簡單字元串,也可以是復雜的東西

2.2#可變url部分映射,使用特定的裝飾器語法就可以

@app.route('/user/<name>')def user(name): return "<h1>hello %s</h1>"%(name)

裝飾器中的<name>指定可變內容為name,name對user(name)函數中的傳遞參數,這2個部分內容必須一致

調用試圖函數時候,flask會自動的將動態部分作為參數傳入參數,這個函數中,參數用於生成個人的歡迎信息

#備註:路由中的動態部分默認使用字元串類型,可以使用int,float,path來定義;例如<int:id>;path類型也是字元串,但不把斜線視作分隔符,而將其當做動態片段的一部分

3.啟動伺服器

調用程序實例app的run方法啟動flask集成開發的web伺服器

if __name__ == "__main__":
app.run(debug=True)

debug=True代表的是調試模式,這個flask自帶的run方法開啟的伺服器不適合在生產中使用,此處只用來測試

4.一個完整的Flask程序

啥也不說,先上例子hello.py

Ⅱ 怎麼實現python寫網頁後台實現與資料庫交互

1、批處理腳本中,要想與用戶實行交互,需要用到命令set 配合/p參數一起使用。

Ⅲ 在python3下怎樣用flask-sqlalchemy對mysql資料庫操作

這個問題經常難道新手一下,因為大部分教程里(包括經典的《Flask Web開發》一書),告訴了我們如何使用flask-sqlalchemy操作sqlite,但在生產環境(線上網站)上,我們肯定是使用MySQL或其他,而大部分的教程里,又告訴我們flask-sqlalchemy使用MySQL的方式是:
mysql://username:password@server/db

結果我們照葫蘆畫瓢的來一下,發現壓根不行,寫好的網站一跟資料庫沾邊就報錯。

Python和MySQL是「兩個國家的人」,他們互不相通,因而需要一個中間代理,讓雙方互通有無,跟翻譯一樣(這比喻不準確,但足夠你明白意思就行)。翻譯又有很多選擇,不同的翻譯各有特色。
題主解決問題選擇的翻譯是「flask-mysqldb」,其背後的主子是「MySQL-python」。恩,說到這里你應該知道,「flask-xxx」這樣的包都是對背後主子進行了適合Flask封裝的插件,跟包子皮一樣,裡面的餡才是重點,「flask-mysqldb」的餡是「MySQL-python」。

而我要推薦的是另一個翻譯:PyMySQL,這玩意的好處是可以做非同步(「MySQL-python」也可以,個人口味罷了),簡而言之,網站訪問量大了就需要考慮非同步,現在別管這是啥子。這玩意的安裝方式是:
pip install PyMySQL
之後,資料庫連接由:
mysql://username:password@server/db

改為
mysql+pymysql://username:password@server/db

就可以了。

Ⅳ 如何部署簡單python + flask應用

  1. python是一款應用非常廣泛的腳本程序語言,谷歌公司的網頁就是用python編寫。python在生物信息、統計、網頁製作、計算等多個領域都體現出了強大的功能。python和其他腳本語言如java、R、Perl 一樣,都可以直接在命令行里運行腳本程序。工具/原料
    python;CMD命令行;windows操作系統
    方法/步驟
    1、首先下載安裝python,建議安裝2.7版本以上,3.0版本以下,由於3.0版本以上不向下兼容,體驗較差。

    2、打開文本編輯器,推薦editplus,notepad等,將文件保存成 .py格式,editplus和notepad支持識別python語法。
    腳本第一行一定要寫上 #!usr/bin/python
    表示該腳本文件是可執行python腳本
    如果python目錄不在usr/bin目錄下,則替換成當前python執行程序的目錄。
    3、編寫完腳本之後注意調試、可以直接用editplus調試。調試方法可自行網路。腳本寫完之後,打開CMD命令行,前提是python 已經被加入到環境變數中,如果沒有加入到環境變數,請網路

    4、在CMD命令行中,輸入 「python」 + 「空格」,即 」python 「;將已經寫好的腳本文件拖拽到當前游標位置,然後敲回車運行即可。

Ⅳ 怎麼使用python flask搭建靜態伺服器

Frozen-Flask freezes aFlaskapplication into a set of static files. The result can be hosted without any server-side software other than a traditional web server.

Note:This project used to be called Flask-Static.

Installation

Install the extension with one of the following commands:

$ easy_install Frozen-Flask

or alternatively if you have pip installed:

$ pip install Frozen-Flask

or you can get thesource code from github.

Context

This documentation assumes that you already have a workingFlaskapplication. You can run it and test it with the development server:

from myapplication import appapp.run(debug=True)

Frozen-Flask is only about deployment: instead of installing Python, a WGSI server and Flask on your server, you can use Frozen-Flask tofreezeyour application and only have static HTML files on your server.

Getting started

Create aFreezerinstance with yourappobject and call itsfreeze()method. Put that in afreeze.pyscript (or call it whatever you like):

from flask_frozen import Freezerfrom myapplication import appfreezer = Freezer(app)if __name__ == '__main__':
freezer.freeze()

This will create abuilddirectory next to your application』, with your application』s content frozen into static files.

Note

Frozen-Flask considers it 「owns」 its build directory. By default, it willsilently overwritefiles in that directory, andremovethose it did not create.

Theconfigurationallows you to change the destination directory, or control what files are removed if at all.

This build will most likely be partial since Frozen-Flask can only guess so much about your application.

Finding URLs

Frozen-Flask works by simulating requests at the WSGI level and writing the responses to aptly named files. So it needs to find out which URLs exist in your application.

The following URLs can be found automatically:

  • Static files handled by Flask for your application or any of itsblueprints.

  • Views with no variable parts in the URL, if they accept theGETmethod.

  • New in version 0.6:Results of calls toflask.url_for()made by your application in the request for another URL. In other words, if you useurl_for()to create links in your application, these links will be 「followed」.

  • This means that if your application has an index page at the URL/(without parameters) and every other page can be found from there by recursively following links built withurl_for(), then Frozen-Flask can discover all URLs automatically and you』re done.

    Otherwise, you may need to write URL generators.

    URL generators

    Let』s say that your application looks like this:

  • @app.route('/')def procts_list():

  • return render_template('index.html', procts=models.Proct.all())@app.route('/proct_<int:proct_id>/')def proct_details():

  • proct = models.Proct.get_or_404(id=proct_id)

  • return render_template('proct.html', proct=proct)

  • If, for some reason, some procts pages are not linked from another page (or these links are not built byurl_for()), Frozen-Flask will not find them.

    To tell Frozen-Flask about them, write an URL generator and put it after creating yourFreezerinstance and before callingfreeze():

  • @freezer.register_generatordef proct_details():

  • for proct in models.Proct.all():

  • yield {'proct_id': proct.id}

  • Frozen-Flask will find the URL by callingurl_for(endpoint,**values)whereendpointis the name of the generator function andvaluesis each dict yielded by the function.

    You can specify a different endpoint by yielding a(endpoint,values)tuple instead of justvalues, or you can by-passurl_forand simply yield URLs as strings.

    Also, generator functions do not have to bePython generatorsusingyield, they can be any callable and return any iterable object.

    All of these are thus equivalent:

  • @freezer.register_generatordef proct_details(): # endpoint defaults to the function name

  • # `values` dicts

  • yield {'proct_id': '1'}

  • yield {'proct_id': '2'}@freezer.register_generatordef proct_url_generator(): # Some other function name

  • # `(endpoint, values)` tuples

  • yield 'proct_details', {'proct_id': '1'}

  • yield 'proct_details', {'proct_id': '2'}@freezer.register_generatordef proct_url_generator():

  • # URLs as strings

  • yield '/proct_1/'

  • yield '/proct_2/'@freezer.register_generatordef proct_url_generator():

  • # Return a list. (Any iterable type will do.)

  • return [

  • '/proct_1/',

  • # Mixing forms works too.

  • ('proct_details', {'proct_id': '2'}),

  • ]

  • Generating the same URL more than once is okay, Frozen-Flask will build it only once. Having different functions with the same name is generally a bad practice, but still work here as they are only used by their decorators. In practice you will probably have a mole for your views and another one for the freezer and URL generators, so having the same name is not a problem.

    Testing URL generators

    The idea behind Frozen-Flask is that you canuse Flask directlyto develop and test your application. However, it is also useful to test yourURL generatorsand see that nothing is missing, before deploying to a proction server.

    You can open the newly generated static HTML files in a web browser, but links probably won』t work. TheFREEZER_RELATIVE_URLSconfigurationcan fix this, but adds a visibleindex.htmlto the links. Alternatively, use therun()method to start an HTTP server on the build result, so you can check that everything is fine before uploading:

  • if __name__ == '__main__':

  • freezer.run(debug=True)

  • Freezer.run()will freeze your application before serving and when the reloader kicks in. But the reloader only watches Python files, not templates or static files. Because of that, you probably want to useFreezer.run()only for testing the URL generators. For everything else use the usualapp.run().

    Flask-Scriptmay come in handy here.

    Controlling What Is Followed

    Frozen-Flask follows links automatically or with some help from URL generators. If you want to control what gets followed, then URL generators should be used with the Freezer』swith_no_argument_rulesandlog_url_forflags. Disabling these flags will force Frozen-Flask to use URL generators only. The combination of these three elements determines how much Frozen-Flask will follow.

    Configuration

    Frozen-Flask can be configured using Flask』sconfiguration system. The following configuration values are accepted:

  • FREEZER_BASE_URL

  • Full URL your application is supposed to be installed at. This affects the output offlask.url_for()for absolute URLs (with_external=True) or if your application is not at the root of its domain name. Defaults to'http://localhost/'.

  • FREEZER_RELATIVE_URLS

  • If set toTrue, Frozen-Flask will patch the Jinja environment so thaturl_for()returns relative URLs. Defaults toFalse. Python code is not affected unless you userelative_url_for()explicitly. This enables the frozen site to be browsed without a web server (opening the files directly in a browser) but appends a visibleindex.htmlto URLs that would otherwise end with/.

    New in version 0.10.

  • FREEZER_DEFAULT_MIMETYPE

  • The MIME type that is assumed when it can not be determined from the filename extension. If you』re using the Apache web server, this should match theDefaultTypevalue of Apache』s configuration. Defaults toapplication/octet-stream.

    New in version 0.7.

  • FREEZER_IGNORE_MIMETYPE_WARNINGS

  • If set toTrue, Frozen-Flask won』t show warnings if the MIME type returned from the server doesn』t match the MIME type derived from the filename extension. Defaults toFalse.

    New in version 0.8.

  • FREEZER_DESTINATION

  • Path to the directory where to put the generated static site. If relative, interpreted as relative to the application root, next to . Defaults tobuild.

  • FREEZER_REMOVE_EXTRA_FILES

  • If set toTrue(the default), Frozen-Flask will remove files in the destination directory that were not built ring the current freeze. This is intended to clean up files generated by a previous call toFreezer.freeze()that are no longer needed. Setting this toFalseis equivalent to settingFREEZER_DESTINATION_IGNOREto['*'].

    New in version 0.5.

  • FREEZER_DESTINATION_IGNORE

  • A list (defaults empty) offnmatchpatterns. Files or directories in the destination that match any of the patterns are not removed, even ifFREEZER_REMOVE_EXTRA_FILESis true. As in.gitignorefiles, patterns apply to the whole path if they contain a slash/, to each slash-separated part otherwise. For example, this could be set to['.git

Ⅵ python使用Flask框架獲取用戶IP地址的方法

主要介紹了python使用Flask框架獲取用戶IP地址的方法,實例分析了Python使用Flask框架remote_addr獲取IP的`技巧,非常具有實用價值,需要的朋友可以參考下。

下面的代碼包含了html頁面和python代碼,非常詳細,如果你正使用Flask,也可以學習一下最基本的Flask使用方法。

python代碼如下:

?

1

2

3

4

5

6

7

8

9

10

11

12

13

from flask import Flask, render_template, request

# Initialize the Flask application

app = Flask(__name__)

# Default route, print user's IP

@app.route('/')

def index():

ip = request.remote_addr

return render_template('index.html', user_ip=ip)

if __name__ == '__main__':

app.run(

host="0.0.0.0",

port=int("80")

)

html代碼如下:

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

<!DOCTYPE html>

<html lang="en">

<head>

<link href="bootstrap/3.0.0/css/bootstrap.min.css"

rel="stylesheet">

</head>

<body>

<p class="container">

<p class="header">

<h3 class="text-muted">How To Get The IP Address Of The User</h3>

</p>

<hr/>

<p>

You IP address is: <strong>{{user_ip}}</strong>

<p class="header">

<h3 class="text-muted">Code to retrieve the IP</h3>

</p>

<hr/>

<pre>

from flask import Flask, render_template, request

# Initialize the Flask application

app = Flask(__name__)

# Default route, print user's IP

@app.route('/')

def index():

ip = request.remote_addr

return render_template('index.html', user_ip=ip)

</pre>

</p>

</p>

</body>

</html>

希望本文所述對大家的Python程序設計有所幫助。

Ⅶ 如何部署簡單python + flask應用

我們先寫一個最基本的flask應用:

demo.py

from flask import Flask
app = Flask(**name**)
@app.route('\')
def index():
return 'Hello World.'
if __name__ == __main__:
app.run()
運行這個py文件,打開瀏覽器訪問127.0.0.1:5000就能看到顯示Hello World的頁面 .
如果讓這個flask引用監聽來自公網ip的請求,理論上你跑此程序的機器就相當於一個伺服器了,然而這個伺服器並不完美,所以我們需要nginx和gunicorn來增加它的功能,讓它真刀真槍上生產環境的時候能按要求運行。

flask自帶的WSGI框架性能很差勁,只能適用於開發環境調試使用。我們用專業一點的gunicorn(還有很多其他優秀的框架)替代flask自帶的WSGI框架。

配置完後,通過命令』/usr/local/bin/gunicorn -b127.0.0.1:5000『啟動應用。打開瀏覽器訪問127.0.0.1:5000,同樣能夠得到返回頁面

然而gunicorn也僅僅是一個python的WSGI框架而已,要讓它真正處理來自互聯網的各類訪問功能還是有點欠缺,這時候就需要用到大名鼎鼎的nginx 伺服器來替gunicorn遮風擋雨了。

Ubuntu下安裝nginx可以用命令

sudo apt-get install nginx

安裝後需要進行下配置:

cd /etc/nginx/sites-available

sudo vi test (test為配置名稱,可以根據自己項目進行命名)

test文件的配置為:
server {
listen 80; # 監聽80埠
location / {

proxy_pass http://127.0.0.1:5000; # 代理本機127.0.0.1:5000的服務

}
location /static {

alias /home/ubuntu/myproject/myblog/app/static; # 負載均衡

}
}

cd ..

cd sites-enable

sudo ln -s ../sites-available/lwhile . (創建軟鏈接,別漏掉最後的.)

sudo service nginx reload

sudo service nginx restart

這樣nginx的基本配置文件就寫好了 接下來我們配置進程管理工具supervisor supervisor可以在後面啟動你的python進程,這樣很方便
1.cd /etc/supervisor/conf.d

2.sudo vi test.conf (test為文件名)

[program:test]
command = /usr/local/bin/gunicorn -b127.0.0.1:5000 /home/ubuntu/myproject/test.py

3.sudo supervisorctl

4.reload

5.start test

如果一切正常,做完這所有步驟之後,現在公網的ip訪問你的主機,就可以打開你的flask應用了

Ⅷ python教程哪裡下載

一、Python入門到進階的 廖雪峰 Python & JS & Git 教程PDF版 鏈接:

密碼:wbod 笨辦法學python(第3版) 中文PDF版 鏈接:

密碼:k89v 編程小白的第一本 Python 入門書 PDF版 鏈接:

密碼:4hd5 Python基礎教程(第2版) 中文PDF版 鏈接:

密碼:it37 Python核心編程(第2版) 中文PDF版 鏈接:

密碼:9tk5 Python學習手冊(第4版) 中文PDF版 鏈接:

密碼:2n3f 像科學家一樣思考(Python版) 中文PDF版 鏈接:

密碼:jw7c python絕技:運用python成為頂級黑客 中文PDF版 鏈接:

密碼:3t84 Python Cookbook(第3版) 中文PDF版 鏈接:

密碼:g758 深入Python 3 中文PDF版 鏈接:

密碼:oud4 二、關於Python Web開發的 《Python Web開發指南》中文PDF版 鏈接:https://pan..com/s/1d3zRT6GyhLNtOU_NhZJeCg 密碼:acp Django Web開發指南 中文PDF版 鏈接:

密碼:0w6h Flask Web開發:基於python的web應用開發實戰(狗書) 中、英文PDF版 鏈接:

密碼:hi18 Python web介面開發與測試 PDF版 鏈接:

密碼:rqim JavaScript DOM編程藝術 中文PDF版 鏈接:

密碼:px85 輕量級django 中文翻譯PDF版 鏈接:

密碼:eva6 The Django Book 中文翻譯PDF版 鏈接:

密碼:ur6v Head First HTML與CSS 中文PDF版 鏈接:https://pan..com/s/1O5WMh_M59j2O0c0AUjVlCg 密碼:jl1 圖解HTTP PDF版 鏈接:

密碼:y2la 第一本Docker書 中文PDF版 鏈接:

密碼:uqk1 三、利用Python進行數據分析的 用Python寫網路爬蟲 中文PDF版 鏈接:

密碼:xodi Python數據挖掘入門與實踐 中文PDF版 鏈接:

密碼:m5xx Python數據分析與挖掘實戰 PDF版 鏈接:

密碼:o3tz Python數據可視化編程實戰 中文PDF版 鏈接:

密碼:fm57 利用Python進行數據分析 中文PDF版 鏈接:

密碼:y66p 數據可視化之美 中文PDF版 鏈接:

密碼:4nzy 數據挖掘導論 中文PDF版 鏈接:

密碼:3z7g Python金融大數據分析 中文PDF版 鏈接:

密碼:bcv9 四、其他 機器學習 周志華 PDF版 鏈接:

密碼:233s 演算法導論 PDF版 鏈接:

密碼:bqfw

Ⅸ 如何在Python Flask框架中運行重復任務

Flask是一個使用Python編寫的輕量級Web應用框架,憑借更靈活、輕便、安全且容易上手的特性,成為企業常用的Python框架之一。在完成Web前端、Linux以及MySQL相關的課程之後,專業的杭州Python學習班都會講解Flask框架知識,以下是整理的相關知識點。

Flask是一個基於Python開發並且依賴jinja2模板和Werkzeug WSGI服務的一個微型框架,對於Werkzeug本質是Socket服務端,其用於接收http請求並對請求進行預處理,然後觸發Flask框架。開發人員基於Flask框架提供的功能對請求進行相應的處理,並返回給用戶,如果要返回給用戶復雜的內容時,需要藉助jinja2模板來實現對模板的處理,即:將模板和數據進行渲染,將渲染後的字元串返回給用戶瀏覽器。

默認情況下,Flask不包含資料庫抽象層、表單驗證,或是其它任何已有多種庫可以勝任的功能。然而,Flask支持用擴展來給應用添加這些功能,如同是Flask本身實現的一樣。眾多的擴展提供了資料庫集成、表單驗證、上傳處理、各種各樣的開放認證技術等功能。

Flask框架的特點:
1)Flask自由、靈活,可擴展性強,第三方庫的選擇面廣,開發時可以結合自己最喜歡用的輪子,也能結合最流行最強大的Python庫;
2)入門簡單,即便沒有多少web開發經驗,也能很快做出網站;
3)非常適用於小型網站;
4)非常適用於開發Web服務的API;
5)開發大型網站無壓力,但代碼架構需要自己設計,開發成本取決於開發者的能力和經驗。

Flask框架運行解釋
1.app = Flask(__name__)
創建Flask對象app,Flask類的構造函數只有一個必須指定的參數,即程序主模塊或包的名字。在大多數程序中,Python的__name__變數就是所需要的值。

[email protected]('/')
web瀏覽器把請求發送給Web伺服器,Web伺服器再把請求發送給Flask程序實例。程序實例需要知道對每個URL請求運行哪些代碼,所以保存了一個URL到Python函數的映射關系。處理URL和函數之間的關系的程序稱為路由。在Flask程序中定義路由的最簡便方式,是使用程序實例提供的app.route修飾器,把修飾的函數注冊為路由。route()裝飾器告訴 Flask什麼樣的URL 能觸發我們的函數。這和Java中的注釋有異曲同工之妙。修飾器是Python語言的標准特性,可以使用不同的方式修改函數的行為。慣常用法是使用修飾器把函數注冊為事件的處理程序。

3.def index():函數
index()函數放在@app.route('/')後面,所以就是把index()函數注冊為路由。如果部署程序的伺服器域名為http://127.0.0.1:5000/,在瀏覽器中訪問http://127.0.0.1:5000/後,會觸發伺服器執行index()函數。

[email protected]('/user/')
同@app.route('/'),如果部署程序的伺服器域名為http://127.0.0.1:5000/,在瀏覽器中訪問http://127.0.0.1:5000/後,會觸發伺服器執行下方修飾函數。

5.app.run(debug=True)
程序實例用run方法啟動Flask繼承Web伺服器。

6.if __name__ == '__main__'
當Python解釋器,讀py文件,它會執行它發現的所有代碼。在執行代碼之前,它會定義一些變數。例如,如果這個py文件就是主程序,它會設置__name__變數為"__main__"。如果這個py被引入到別的模塊,__name__會被設置為該模塊的名字。

Ⅹ python3.x怎麼安裝flask

Windows下Flask安裝

1.運行好虛擬環境
2.在虛擬環境下運行pip install flask就可以在想你環境中安裝Flask及其依賴了,可以在輸入python命令轉到python編輯環境,再輸入import flask查看是否安裝成功。
3.在Scripts同級目錄新建一個文件夾,然後裡面新建一個hello.py文件,代碼內容為:
from flask import Flask
app=Flask(__name__)
@app.route('/')
def hello_world():
return "Hello World"
if __name__ == '__main__':
app.run() 12345671234567

然後切換到該文件的目錄下,運行python hello.py命令就可以了。然後又用網站訪問127.0.0.1:5000
4.Ubuntu下Flask安裝:
1.安裝virtualenv,為每一個pyhton應用都「安裝」一個獨立的Python環境;
sudo apt-get install python-virtualenv 或 sudo easy_install virtualenv
2.為你的應用創建一個目錄:
mkdir myproject
cd myproject1212

3.為應用創建一個單獨的開發環境:
virtualenv env //創建一個名為env的目錄,這個目錄就是一個獨立的python環境
. env/bin/activate //激活名為env的環境,注意」.」點後面有關空格;
4.在激活的前提下,安裝flask
apt-get install python-flask11

然後寫一個最小的基於flask的應用:
cd env
vi hello.py1212
from flask import Flask
app = Flask(__name__)

@app.route('/')
def hello_world():
return 'Hello World!'

if __name__ == '__main__':
app.run() 123456789123456789

然後執行:sudo python hello.py
出現提示:
* Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)
在瀏覽器訪問http://127.0.0.1:5000/,可以看到Hello World!

熱點內容
不能存儲手機號怎樣修理 發布:2025-05-17 01:08:38 瀏覽:758
hw存儲 發布:2025-05-17 00:50:56 瀏覽:345
wifi密碼為什麼顯示不能連接呢 發布:2025-05-17 00:46:45 瀏覽:459
安卓車載軟體哪個好 發布:2025-05-17 00:30:42 瀏覽:497
商城網站免費源碼 發布:2025-05-17 00:13:09 瀏覽:703
制圖什麼配置電腦夠用 發布:2025-05-17 00:12:58 瀏覽:368
安卓root之後怎麼屏蔽彈窗 發布:2025-05-16 23:54:01 瀏覽:978
領克01如何存儲歌曲 發布:2025-05-16 23:53:23 瀏覽:343
新社保初始密碼是多少 發布:2025-05-16 23:53:13 瀏覽:940
安卓手機應用怎麼恢復到桌面 發布:2025-05-16 23:53:09 瀏覽:610