當前位置:首頁 » 操作系統 » 雙端源碼

雙端源碼

發布時間: 2022-01-20 05:36:59

1. [影視雙端]360影視雙端h5源碼2.0三級分銷版,個人中心美化,完善分銷如何更改360採集規則

這種網路規則是不能更改的呢,除非使用第三方軟體,這樣的話就會被面臨著封禁的危險,嚴重的話還會被追究法律責任,請不要嘗試呢

2. 哪裡有類似特抱抱/有播的購物直播源碼,直播帶貨系統開發源碼

直播帶貨系統,是一款集直播、電商、短視頻為一體的多功能產品。直播平台與第三方商城相連接,用戶可以通過在直播後台中添加的鏈接跳轉到大商城,將商城直接嵌套入直播系統當中,實現真正的融為一體。這樣前台的商鋪和商城便可共用一個後台,管理方便,而且後期可擴展性更強,從而加入更多的功能。
後台php語言Android是java語言 (安卓的開發工具腳本: Android Studio)IOS是 objective-c. (ios開發腳本工具:xcode)框架是thinkphp5.0版本 php用的5.6的 系統: linux : 資料庫: mysql。直播系統前端APP是分成安卓端和蘋果端。後端是PC端,控制前端的說的介面和後台。APP是原生開發的。 PHP 視頻互動系統由 WEB 系統、REDIS 服務、MYSQL 服務、視頻服務、聊天服務、後台管理系統和定時監控組成,手機端安卓開發語言採用:java、 IOS 蘋果採用:object c 原生開發,後台管理採用PHP 語言開發,基於TP框架,所有服務提供橫向擴展。含app雙端,web後台。 所有服務提供橫向擴展,全部支持二次開發和修改。

3. 如何安裝雙向成交量指標公式源碼

如果你用的是通達信,在公式管理新建指標公式將下面源碼復制並保存付圖即可。

成交量萬手:VOL/10000,LINETHICK0;

BB:=VOL/((HIGH-LOW)*2-ABS(CLOSE-OPEN));

主動買:=IF(CLOSE>OPEN,BB*(HIGH-LOW),IF(CLOSE<OPEN,BB*((HIGH-OPEN)+(CLOSE-LOW)),VOL/2));

主買萬手:主動買/10000,COLORRED;

主動賣:=IF(CLOSE>OPEN,0-BB*((HIGH-CLOSE)+(OPEN-LOW)),IF(CLOSE<OPEN,0-BB*(HIGH-LOW),0-VOL/2));

主賣萬手:-主動賣/10000,COLORGREEN;

資金流入億元:主買萬手*CLOSE/100;

資金流出億元:主賣萬手*CLOSE/100;

STICKLINE(VOL>0,VOL,0,2,1),COLORWHITE;

STICKLINE(主動買>0,0,主動買,2,0),COLORRED;

STICKLINE(主動賣<0,0,主動賣,2,0),COLORGREEN;

成交額(億元):AMOUNT/100000000,COLORRED;

換手率:VOL/CAPITAL*100,COLORYELLOW;

4. 一對一直播源碼自己搭建容易嗎

如果只是搭建一個直播系統平台,價格幾萬不等,也有二手販子賣幾千塊錢很便宜。但是能不能達到你預想中的效果就不一定了。

二手販子出售給你直播系統源碼,可能存在各種BUG,本身販子就是為了賺個快錢,低價買別人的不管質量如何,自己沒有開發修復bug的能力。所以出了問題也沒能力解決。

也可能前期沒有任何問題,等你好不容易聯繫到了主播,准備坐等數錢的時候,出現了故障!只能幹著急,再花大價錢請別人任人宰割。前期為了圖便宜省點錢,後期可能會花更多的錢來維護得不償失。

開發一款雙端APP的成本不低,作為企業者來說,肯定是想了解清楚這個項目的大概成本。但是對於APP外包公司來說,它必須詳細的了解客戶的需求後,才能給出一個估價。因為對於搭建APP開發公司來說,每一個收費都有它的依據,而不是隨便開的價格。

這也是為什麼前期詳細的溝通是非常有必要的。前期的溝通不僅免費幫助客戶梳理了用戶需求,並且會給出一些專業的建議,包括價格也是相對精準的,並且可以根據客戶預算對功能進行調整,保證在預算范圍內做到最優。所以說要想花錢少還要做出專業的直播平台一定選擇一家專業的技術團隊公司去做,馬雲說過:把自己擅長的留給自己做,不擅長的東西交給懂得人。

5. 雙向鏈表

//頭文件
#ifndef _DOUBLE_LINKED_LIST_H
#define _DOUBLE_LINKED_LIST_H
#include<iostream>
using namespace std;
template<class T>
class dblist
{//頭結點可用但刪不去,刪除操作中會被忽略
struct dbnode
{
dbnode*left,*right;
T value;
dbnode(){}
dbnode(const T&x):value(x){}
};
dbnode*head;
bool _insert(dbnode*it,const T&x);
void _delete(dbnode*&it);
public:
class iterator
{//內嵌迭代器,可實現操作:(前後)自增,(前後)自減,解除引用並且賦值,==,!=
dbnode*iter;
public:
iterator(){}
iterator(dbnode*it):iter(it){}
iterator(iterator&it):iter(it.iter){}
void operator++(){iter=iter->right;}
void operator++(int){iter=iter->right;}
void operator--(){iter=iter->left;}
void operator--(int){iter=iter->left;}
T&operator*(){return iter->value;}
dbnode*&operator=(dbnode*it){iter=it;return iter;}
dbnode*&operator=(iterator&it){iter=it.iter;return iter;}
bool operator==(dbnode*it){return it==iter;}
bool operator==(iterator&it){return iter==it.iter;}
bool operator!=(dbnode*it){return it!=iter;}
bool operator!=(iterator&it){return iter!=it.iter;}
friend class dblist<T>;
};
dblist(){head=new dbnode;if(!head){cerr<<"內存分配失敗"<<endl;exit(1);}head->left=head->right=head;}
dblist(dblist<T>&L);
~dblist(){clear();delete head;}
int length();//元素個數
dbnode*begin(){return head->right;}
dbnode*end(){return head;}
dbnode*locate(int i);//定位於第i個元素
dbnode*search(const T&x);//定位於第1個值為x的元素
bool empty(){return head->left==head;}
bool push_front(const T&x){return _insert(head,x);}//把元素插入頭部
bool push_back(const T&x){return _insert(head->left,x);}//把元素插入尾部
bool insert(iterator it,const T&x);//迭代器it之後插入x
bool insert(int i,const T&x);//第i個元素之後插入x
void remove(int i);
void remove(iterator it);
void erase(const T&x);//刪除值為x的全部元素
void erase(iterator first,iterator last);//刪除[first,last)的元素
void clear();
void sort();//遞增排序
};
template<class T>
bool dblist<T>::_insert(dbnode*it,const T&x)
{
dbnode*p=new dbnode(x);
if(!p)return false;
p->left=it;
p->right=it->right;
it->right->left=p;
it->right=p;
return true;
}
template<class T>
void dblist<T>::_delete(dbnode*&it)
{
if(it==head)return;
it->left->right=it->right;
it->right->left=it->left;
delete it;
}
template<class T>
dblist<T>::dblist(dblist<T>&L)
{
head=new dbnode;
head->right=head->left=head;
dbnode*p=L.head->right,*newnode;
for(;p!=L.head;p=p->right)
{
newnode=new dbnode(p->value);
if(!newnode){cerr<<"內存分配失敗"<<endl;exit(1);}
newnode->left=head->left;
newnode->right=head;
head->left->right=newnode;
head->left=newnode;
}
}
template<class T>
int dblist<T>::length()
{
dbnode*p=head->right;
int count=0;
for(;p!=head;p=p->right,count++);
return count;
}
template<class T>
dblist<T>::dbnode*dblist<T>::locate(int i)
{
dbnode*p=head;
for(;i>0;i--)
p=p->right;
return p;
}
template<class T>
dblist<T>::dbnode*dblist<T>::search(const T&x)
{
dbnode*p=head->right;
for(;p->value!=x&&p!=head;p=p->right);
return p;
}
template<class T>
bool dblist<T>::insert(iterator it,const T&x)
{return _insert(it.iter,x);}
template<class T>
bool dblist<T>::insert(int i,const T&x)
{
dbnode*p=head;
for(;i>0;i--)
p=p->right;
return _insert(p,x);
}
template<class T>
void dblist<T>::remove(iterator it)
{
_delete(it.iter);
}
template<class T>
void dblist<T>::remove(int i)
{
dbnode*p=head;
for(;i>0;i--)
p=p->right;
_delete(p);
}
template<class T>
void dblist<T>::erase(const T&x)
{
dbnode*p=head->right,*q;
while(p!=head)
{
q=p;
p=p->right;
if(q->value==x)
_delete(q);
}
}
template<class T>
void dblist<T>::erase(iterator first,iterator last)
{
iterator p;
while(first!=last)
{
p=first;
first++;
_delete(p.iter);
}
}
template<class T>
void dblist<T>::clear()
{
dbnode*p=head->right;
for(p=p->right;p!=head->right;p=p->right)
delete p->left;
head->right=head->left=head;
}
template<class T>
void dblist<T>::sort()
{
dbnode*p;
T temp;
bool t=head->right->right==head ? false:true;
while(t)
{
t=false;
p=head->right;
while(p->right!=head)
{
if(p->value>p->right->value)
{
t=true;
temp=p->value;
p->value=p->right->value;
p->right->value=temp;
}
p=p->right;
}
}
}
#endif

//測試程序
#include"雙向循環鏈表類的常用實現.h"
#include<iostream>
using namespace std;
int main()
{
dblist<int>db;
cout<<db.length()<<" "<<db.empty()<<endl;
dblist<int>::iterator it1(db.begin());
int i;
for(i=0;i<10;i++)
db.push_back(i);
for(;i<20;i++)
db.push_front(i);
for(it1=db.begin();it1!=db.end();it1++)
cout<<*it1<<" ";
cout<<endl;
dblist<int>aaa(db);
aaa.sort();
for(dblist<int>::iterator it2(aaa.end());it2!=aaa.begin();it2--)
cout<<*it2<<" ";
cout<<aaa.length()<<endl;
it2=aaa.locate(10);
*it2=3;it2++;aaa.erase(3);
aaa.insert(it2,58);aaa.remove(it2);
aaa.remove(3);
for(it1=aaa.begin();it1!=aaa.end();it1++)
cout<<*it1<<" ";
cout<<endl;
cout<<aaa.empty()<<" ";
it1=aaa.begin();it2=aaa.end();
aaa.clear();
cout<<aaa.empty()<<endl;
return 0;
}

6. 語音直播源碼程序開發有哪些優勢哪裡有源生源碼

1、成品語音直播系統源碼優勢 :可實現一天快速搭建上線,程序穩定 、萬人不卡。開發延時超低,系統穩定支持瞬間高並發,程序自帶功能多
2、語音直播系統源碼原生開源: 布穀語音直播系統的源碼是開源的原生開發,都可以進無限的二次開發和修改,可和現有的程序進行相結合。 後台PHP語言
Android是Java語言 (安卓的開發工具腳本: Android Studio)
IOS是 objective-c. (ios開發腳本工具:xcode)
框架是thinkphp5.0版本 php用的5.6的 系統: linux : 資料庫: mysql。
直播系統前端APP是分成安卓端和蘋果端。後端是PC端,控制前端的說的介面和後台。APP是原生開發的。 PHP 視頻互動系統由 WEB 系統、REDIS 服務、MYSQL 服務、視頻服務、聊天服務、後台管理系統和定時監控組成,手機端安卓開發語言採用:java、 IOS 蘋果採用:object c 原生開發,後台管理採用PHP 語言開發,基於TP框架,所有服務提供橫向擴展。含app雙端,web後台。
Android端: Java語言, 使用Android Studio 開發I0S端:採用0C語言,使用Xcode工具開發前端:原生,無框架,採用PHP語言,基於TP框架。所有服務提供橫向擴展,全部支持二次開發和修改。
3、技術服務支持:為您提供完成的程序源碼、技術文檔資料庫、搭建部署文檔、詳細的產品操作使用文檔、負責程序搭建部署全球范圍搭建物阻礙。 可以考慮一下。

7. C# 程序雙向通信單機不用socket

進程間通信還有管道通信,相關源代碼參考:
http://msdn.microsoft.com/zh-cn/library/bb546085(v=vs.90)

示例

下面的示例演示如何使用 NamedPipeClientStream 類創建命名管道。在此示例中,伺服器進程創建了四個線程。每個線程可以接受一個客戶端連接。連接的客戶端進程隨後向伺服器提供一個文件名。如果客戶端具有足夠的許可權,伺服器進程就會打開文件並將其內容發送回客戶端。
C#
using System;
using System.IO;
using System.IO.Pipes;
using System.Threading;

class PipeServer
{
static int numThreads = 4;

static void Main()
{
for (int i = 0; i < numThreads; i++)
{
Thread newThread = new Thread(new ThreadStart(ServerThread));
newThread.Start();
}
Console.WriteLine("Press enter to exit.");
Console.ReadLine();
} // Main()

private static void ServerThread()
{
using (NamedPipeServerStream pipeServer =
new NamedPipeServerStream("testpipe", PipeDirection.InOut, numThreads))
{
Console.WriteLine("NamedPipeServerStream thread created.");

// Wait for a client to connect
pipeServer.WaitForConnection();

Console.WriteLine("Client connected.");
try
{
// Read the request from the client. Once the client has
// written to the pipe its security token will be available.
using (StreamReader sr = new StreamReader(pipeServer))
using (StreamWriter sw = new StreamWriter(pipeServer))
{
sw.AutoFlush = true;

// Verify our identity to the connected client using a
// string that the client anticipates.
sw.WriteLine("I am the true server!");

// Obtain the filename from the connected client.
string filename = sr.ReadLine();

// Read in the contents of the file while impersonating
// the client.
ReadFileToStream fileReader = new
ReadFileToStream(pipeServer, filename);

// Display the name of the user we are impersonating.
Console.WriteLine("Reading file: {0} as user {1}.",
pipeServer.GetImpersonationUserName(), filename);

pipeServer.RunAsClient(fileReader.Start);

pipeServer.Disconnect();
}
}
// Catch the IOException that is raised if the pipe is broken
// or disconnected.
catch (IOException e)
{
Console.WriteLine("ERROR: {0}", e.Message);
}
}
} // ServerThread()
} // PipeServer

class ReadFileToStream
{
private string m_filename;
private Stream m_stream;

public ReadFileToStream(Stream stream, string filename)
{
m_filename = filename;
m_stream = stream;
} // ReadFileToStream(stream, filename)

public void Start()
{
using (StreamWriter sw = new StreamWriter(m_stream))
{
string contents = File.ReadAllText(m_filename);
sw.WriteLine(contents);
sw.Flush();
}
} // Start()
} // ReadFileToStream

下面的示例演示使用 NamedPipeClientStream 類的客戶端進程。客戶端連接伺服器進程並向伺服器發送一個文件名。伺服器隨後將文件內容發送回客戶端。文件內容隨後顯示在控制台上。
C#
VB
using System;
using System.IO;
using System.IO.Pipes;
using System.Security.Principal;

class PipeClient
{
static int numThreads = 4;

static void Main()
{
using (NamedPipeClientStream pipeClient =
new NamedPipeClientStream("localhost", "testpipe",
PipeDirection.InOut, PipeOptions.None,
TokenImpersonationLevel.Impersonation))
using (StreamWriter sw = new StreamWriter(pipeClient))
using (StreamReader sr = new StreamReader(pipeClient))
{
sw.AutoFlush = true;
pipeClient.Connect();

// Verify that this is the "true server"
if (sr.ReadLine() == "I am the true server!")
{
// The client security token is sent with the first write.
sw.WriteLine(@"c:\textfile.txt");

// Print the file to the screen.
char[] buffer = new char[32];
int n;
while ((n = sr.Read(buffer, 0, buffer.Length)) != 0)
{
Console.Write(buffer, 0, n);
}
}
else
{
Console.WriteLine("Server could not be verified.");
}
}
} // Main()
}

http://blog.csdn.net/jcx5083761/article/details/7930333

8. 如何高效深入的閱讀Redis的源碼

在這篇文章中, 我將向大家介紹一種我認為比較合理的 Redis 源碼閱讀順序, 希望可以給對 Redis 有興趣並打算閱讀 Redis 源碼的朋友帶來一點幫助。
第 1 步:閱讀數據結構實現
剛開始閱讀 Redis 源碼的時候, 最好從數據結構的相關文件開始讀起, 因為這些文件和 Redis 中的其他部分耦合最少, 並且這些文件所實現的數據結構在大部分演算法書上都可以了解到, 所以從這些文件開始讀是最輕松的、難度也是最低的。
下表列出了 Redis 源碼中, 各個數據結構的實現文件:
文件 內容
sds.h 和 sds.c Redis 的動態字元串實現。
adlist.h 和 adlist.c Redis 的雙端鏈表實現。
dict.h 和 dict.c Redis 的字典實現。
redis.h 中的 zskiplist 結構和 zskiplistNode 結構, 以及 t_zset.c 中所有以 zsl 開頭的函數, 比如 zslCreate 、 zslInsert 、 zslDeleteNode ,等等。 Redis 的跳躍表實現。
hyperloglog.c 中的 hllhdr 結構, 以及所有以 hll 開頭的函數。 Redis 的 HyperLogLog 實現。
第 2 步:閱讀內存編碼數據結構實現
在閱讀完和數據結構有關的文件之後, 接下來就應該閱讀內存編碼(encoding)數據結構了。
和普通的數據結構一樣, 內存編碼數據結構基本上是獨立的, 不和其他模塊耦合, 但是區別在於:
上一步要讀的數據結構, 比如雙端鏈表、字典、HyperLogLog, 在演算法書上或者相關的論文上都可以找到資料介紹。
而內存編碼數據結構卻不容易找到相關的資料, 因為這些數據結構都是 Redis 為了節約內存而專門開發出來的, 換句話說, 這些數據結構都是特製(adhoc)的, 除了 Redis 源碼中的文檔之外, 基本上找不到其他資料來了解這些特製的數據結構。
不過話又說回來, 雖然內存編碼數據結構是 Redis 特製的, 但它們基本都和內存分配、指針操作、位操作這些底層的東西有關, 讀者只要認真閱讀源碼中的文檔, 並在有需要時, 畫圖來分析這些數據結構, 那麼要完全理解這些內存編碼數據結構的運作原理並不難, 當然這需要花一些功夫。
下表展示了 Redis 源碼中, 各個內存編碼數據結構的實現文件:
文件 內容
intset.h 和 intset.c 整數集合(intset)數據結構。
ziplist.h 和 ziplist.c 壓縮列表(zip list)數據結構。
第 3 步:閱讀數據類型實現
在完成以上兩個閱讀步驟之後, 我們就讀完了 Redis 六種不同類型的鍵(字元串、散列、列表、集合、有序集合、HyperLogLog)的所有底層實現結構了。
接下來, 為了知道 Redis 是如何通過以上提到的數據結構來實現不同類型的鍵, 我們需要閱讀實現各個數據類型的文件, 以及 Redis 的對象系統文件, 這些文件包括:
文件 內容
object.c Redis 的對象(類型)系統實現。
t_string.c 字元串鍵的實現。
t_list.c 列表鍵的實現。
t_hash.c 散列鍵的實現。
t_set.c 集合鍵的實現。
t_zset.c 中除 zsl 開頭的函數之外的所有函數。 有序集合鍵的實現。
hyperloglog.c 中所有以 pf 開頭的函數。 HyperLogLog 鍵的實現。
第 4 步:閱讀資料庫實現相關代碼
在讀完了 Redis 使用所有底層數據結構, 以及 Redis 是如何使用這些數據結構來實現不同類型的鍵之後, 我們就可以開始閱讀 Redis 裡面和資料庫有關的代碼了, 它們分別是:
文件 內容
redis.h 文件中的 redisDb 結構, 以及 db.c 文件。 Redis 的資料庫實現。
notify.c Redis 的資料庫通知功能實現代碼。
rdb.h 和 rdb.c Redis 的 RDB 持久化實現代碼。
aof.c Redis 的 AOF 持久化實現代碼。
選讀
Redis 有一些獨立的功能模塊, 這些模塊可以在完成第 4 步之後閱讀, 它們包括:
文件 內容
redis.h 文件的 pubsubPattern 結構,以及 pubsub.c 文件。 發布與訂閱功能的實現。
redis.h 文件的 multiState 結構以及 multiCmd 結構, multi.c 文件。 事務功能的實現。
sort.c SORT 命令的實現。
bitops.c GETBIT 、 SETBIT 等二進制位操作命令的實現。
第 5 步:閱讀客戶端和伺服器的相關代碼
在閱讀完資料庫實現代碼, 以及 RDB 和 AOF 兩種持久化的代碼之後, 我們可以開始閱讀客戶端和 Redis 伺服器本身的實現代碼, 和這些代碼有關的文件是:
文件 內容
ae.c ,以及任意一個 ae_*.c 文件(取決於你所使用的多路復用庫)。 Redis 的事件處理器實現(基於 Reactor 模式)。
networking.c Redis 的網路連接庫,負責發送命令回復和接受命令請求, 同時也負責創建/銷毀客戶端, 以及通信協議分析等工作。
redis.h 和 redis.c 中和單機 Redis 伺服器有關的部分。 單機 Redis 伺服器的實現。
如果讀者能完成以上 5 個閱讀步驟的話, 那麼恭喜你, 你已經了解了單機的 Redis 伺服器是怎樣處理命令請求和返回命令回復, 以及是 Redis 怎樣操作資料庫的了, 這是 Redis 最重要的部分, 也是之後繼續閱讀多機功能的基礎。
選讀
Redis 有一些獨立的功能模塊, 這些模塊可以在完成第 5 步之後閱讀, 它們包括:
文件 內容
scripting.c Lua 腳本功能的實現。
slowlog.c 慢查詢功能的實現。
monitor.c 監視器功能的實現。
第 6 步:閱讀多機功能的實現
在弄懂了 Redis 的單機伺服器是怎樣運作的之後, 就可以開始閱讀 Redis 多機功能的實現代碼了, 和這些功能有關的文件為:
文件 內容
replication.c 復制功能的實現代碼。
sentinel.c Redis Sentinel 的實現代碼。
cluster.c Redis 集群的實現代碼。
注意, 因為 Redis Sentinel 用到了復制功能的代碼, 而集群又用到了復制和 Redis Sentinel 的代碼, 所以在閱讀這三個模塊的時候, 記得先閱讀復制模塊, 然後閱讀 Sentinel 模塊, 最後才閱讀集群模塊, 這樣理解起來就會更得心應手。
如果你連這三個模塊都讀完了的話, 那麼恭喜你, 你已經讀完了 Redis 單機功能和多機功能的所有代碼了!
下圖總結了本文介紹的閱讀順序:
digraph {
node [shape = plaintext]

datastruct [label = "數據結構\n(sds、adlist、dict、t_zset、hyperloglog)"]

encoding_datastruct [label = "內存編碼數據結構\n(intset、ziplist)"]

object [label = "數據類型\n(object、t_string、t_list、t_hash、t_set、t_zset、hyperloglog)"]

db [label = "資料庫相關\n(db、notify、rdb、aof)"]

client_and_server [label = "客戶端與伺服器相關\n(ae、networking、redis)"]

multi_server [label = "多機功能\n(replication、sentinel、cluster)"]

//

datastruct -> encoding_datastruct -> object -> db -> client_and_server -> multi_server

}
結語
Redis 的設計非常簡潔、優美、精巧和高效, 任何人只要願意去閱讀它的代碼的話, 應該都會有所收獲的。
希望這篇文章能夠給想要閱讀 Redis 代碼的朋友們帶來一些幫助, 也歡迎各位隨時和我討論 Redis 源碼方面的問題, 或者跟我分享各位閱讀 Redis 源碼的心得和經驗。
另外我的 Redis 源碼注釋 項目以及 《Redis 設計與實現》 一書對於理解 Redis 的源代碼應該也會有所幫助, 有興趣的朋友可以自行了解該項目/書本。
黃健宏(huangz)
2014.7.28

9. 語音直播源碼的怎麼樣可以做二次開發嗎

語音交友即「不看臉」交友通過聲音來洗滌人們的心靈。由於當下「看臉」的交友app太多,大多數人在社交時更注重長相,失去了最初進行心靈交流的交友需求,為了掃除交友障礙,以語音的形式,反而能夠幫助更多的人找到自己的「soulmate」(靈魂伴侶),從而減輕現代社會帶來的交友壓力。語音直播源碼是可以支持二次開的你,後期可以根據你們自己的需求進行二次開發。

熱點內容
obs配置怎麼弄 發布:2024-11-15 13:43:30 瀏覽:867
特斯拉買哪個配置的 發布:2024-11-15 13:42:36 瀏覽:556
兒童編程教材 發布:2024-11-15 13:37:34 瀏覽:42
查詢伺服器連接地址 發布:2024-11-15 13:27:20 瀏覽:504
win8用戶文件夾轉移 發布:2024-11-15 13:21:24 瀏覽:73
批量緩存淘寶教育上的視頻 發布:2024-11-15 13:20:44 瀏覽:723
如何確定手機是不是安卓 發布:2024-11-15 13:19:33 瀏覽:734
loadingbuffer怎麼配置 發布:2024-11-15 13:16:57 瀏覽:797
安卓婉兒最低市戰力在哪裡 發布:2024-11-15 13:04:02 瀏覽:852
安卓如何設置圖片模式 發布:2024-11-15 13:00:27 瀏覽:497