主頁 > 移動端開發 > 最簡單DIY基于ESP8266的智能彩燈⑥(Android開發通過WIFI控制彩燈實作表白神器)

最簡單DIY基于ESP8266的智能彩燈⑥(Android開發通過WIFI控制彩燈實作表白神器)

2021-12-19 09:33:57 移動端開發

ESP8266和ESP32智能彩燈開發系列文章目錄

第一篇:最簡單DIY基于ESP8266的智能彩燈①(在網頁用按鈕點亮普通RGB燈)
第二篇:最簡單DIY基于ESP8266的智能彩燈②(在網頁用按鍵和滑動條控制RGB燈)
第三篇:最簡單DIY基于ESP8266的智能彩燈③(在網頁用按鈕+滑動條+手機APP控制RGB燈)
第四篇:最簡單DIY基于ESP8266的國產WS2812智能彩燈④(在網頁用按鈕點亮)
第五篇:最簡單DIY基于ESP8266的智能彩燈⑤(用C#調色板UI通過串口控制WS2812彩燈)
第六篇:最簡單DIY基于ESP8266的智能彩燈⑥(Android開發通過WIFI控制彩燈實作表白神器)


文章目錄

  • ESP8266和ESP32智能彩燈開發系列文章目錄
  • 前言
  • 一、最簡單DIY基于ESP8266的智能彩燈⑥(Android開發通過WIFI控制彩燈實作表白神器)是什么?
  • 二、使用步驟
    • 1.準備硬體
    • 2.搭建Arduino開發環境
    • 3.編程思路介紹
  • 三、運行與除錯
  • 總結


前言

????daodanjishui物聯網核心原創技術之最簡單DIY基于ESP8266的智能彩燈⑥(Android開發通過WIFI控制彩燈實作表白神器),
????市面上有各種開源智能彩燈實作表白的功能,但是有復雜的有簡單的,如果想快速入門用最簡單的硬體做出最有震撼效果的表白神器,這個方案會給你一個快捷高效的方案,


一、最簡單DIY基于ESP8266的智能彩燈⑥(Android開發通過WIFI控制彩燈實作表白神器)是什么?

????在第五篇的作品當中是用C#調色板通過串口控制燈板顯示彩色,并且彩色的樣式單調,都沒有個性好圖案的定制,這次換了一種設計的模式,實作用安卓手機繪制個性化圖案然后控制燈板輸出回應的圖案,絕對原創開源,采用國產芯片WS2812組成的8*8=64燈板,主控芯片采用國產ESP8266,支持國產從我做起,反對霸權主義,反對技術封鎖,反對芯片壟斷,現在很多建筑物墻上布置的彩燈就是這個系列的彩燈,這每一個彩燈里面是包含有WS2812芯片的,當這個彩燈數量達到一定級別的時候,炫酷的效果就出來了,在人類發展歷史中,表白的作用可以算是社會上不可或缺的一種求偶的手段,好的求偶手段可以讓自己的事業和生活更上一層樓,目前國內還沒有關于WS2812彩燈的各種上位機和下位機和服務器全方位擊破的開源教程,那么這里希望成為第一家,全家福如下圖所示:
在這里插入圖片描述

在這里插入圖片描述

????功能描述:這一次要實作的是安卓原生開發實作手機app通過WIFI網路傳送手工繪制好的圖案發布到WS2812彩燈矩陣上,那么這次ESP8266調庫用其IO口間接通過WS2812芯片控制LED,IO口通過單線歸零碼協議實作控制,至于這個協議怎么用,具體不需要深究,因為Arduino的WS2812庫幫我們做好的驅動,我們直接呼叫函式驅動即可,這里用到的是FastLED這個庫,假如真的想深究,等我發布STM32版本的WS2812專案吧,最后實作的效果是ESP8266創建熱點,然后用戶使用手機連接ESP8266發出的熱點,然后打開表白app繪制表白圖案或者寫寫字,松開手就觸發燈板顯示對應的圖案,這次使用64盞WS2812燈,下面是Arduino寫的原創開源代碼截圖,截圖中用了64個彩燈:
在這里插入圖片描述

????這次軟體UI設計采用java語言和xml語言,設計使用Eclipse安卓集成開發環境開發上位機app,使用Arduino IDE開發ESP8266程式,ESP8266采用一個IO口與WS2812通信,控制8*8=64盞燈的顏色,同時保留網頁點燈的功能,可以網頁點燈和手機app同時控制,一般人還真的寫不出來這樣的效果,因為有可能會沖突的,該設計是第五篇的升級版,增加了手勢圖案的繪制和顯示,下面是手機安卓開發的原始碼截圖:
在這里插入圖片描述

硬體使用了:ESP-12F D1開發板和WS2812彩燈矩陣,網上都有賣的,手機連上ESP6266熱點之后,在瀏覽器打開嵌入式主頁:
在這里插入圖片描述
運行效果如下:
在這里插入圖片描述

B站視頻如下:

<iframe id="r10q7vV6-1639749242956" src="https://player.bilibili.com/player.html?aid=764336196" allowfullscreen="true" data-mediaembed="bilibili"></iframe>

最簡單DIY基于ESP8266的智能彩燈⑥(用Android APP原生開發通過WIFI控制WS2812彩燈實作表白神器)

視頻地址

二、使用步驟

1.準備硬體

(1)購買ESP8266開發板:mini D1 wifi ESP-12F N ESP8266,
在這里插入圖片描述
芯片包裝如下:
在這里插入圖片描述

(2)購買WS2812國產RGB燈板,注意是8*8=64個燈,

2.搭建Arduino開發環境

(1)第一步下載Arduino IDE安裝,雙擊下一步,下一步,直到完成,建議不要中文路徑,

(2)下載ESP8266安裝包插件,這是最方便的,如果在Arduino里面搜索安裝,你會發現很慢,特別是在這個緊張的芯片之爭的關鍵時期下,按照這個網址去下載:https://www.arduino.cn/thread-76029-1-1.html

(3)雙擊(2)下載的三個包中的一個,我雙擊安裝的是第二個包,重啟Arduino就可以安裝好了,

安裝好之后你會發現開發板選項多了ESP8266這類的開發板,實在不行就找其他教程再試試了,沒有必要一步一步教這個開發環境搭建,
(3.1)匯入FASTLED庫,或者說是安裝FASTLED庫(自己百度如何安裝即可)
在這里插入圖片描述
可以打開一個紅色箭頭官方示例代碼玩玩
主要修改一下引數:
#define LED_TYPE WS2811
#define COLOR_ORDER GRB
#define NUM_LEDS 64
第一個是RGB燈的型號,可以是2812或者2811
第三個是RGB燈的數量,我的設定為64,與上一期不一樣的數量

#include <FastLED.h>

FASTLED_USING_NAMESPACE

// FastLED "100-lines-of-code" demo reel, showing just a few 
// of the kinds of animation patterns you can quickly and easily 
// compose using FastLED.  
//
// This example also shows one easy way to define multiple 
// animations patterns and have them automatically rotate.
//
// -Mark Kriegsman, December 2014

#if defined(FASTLED_VERSION) && (FASTLED_VERSION < 3001000)
#warning "Requires FastLED 3.1 or later; check github for latest code."
#endif

#define DATA_PIN    3
//#define CLK_PIN   4
#define LED_TYPE    WS2811
#define COLOR_ORDER GRB
#define NUM_LEDS    64
CRGB leds[NUM_LEDS];

#define BRIGHTNESS          96
#define FRAMES_PER_SECOND  120

void setup() {
  delay(3000); // 3 second delay for recovery
  
  // tell FastLED about the LED strip configuration
  FastLED.addLeds<LED_TYPE,DATA_PIN,COLOR_ORDER>(leds, NUM_LEDS).setCorrection(TypicalLEDStrip);
  //FastLED.addLeds<LED_TYPE,DATA_PIN,CLK_PIN,COLOR_ORDER>(leds, NUM_LEDS).setCorrection(TypicalLEDStrip);

  // set master brightness control
  FastLED.setBrightness(BRIGHTNESS);
}


// List of patterns to cycle through.  Each is defined as a separate function below.
typedef void (*SimplePatternList[])();
SimplePatternList gPatterns = { rainbow, rainbowWithGlitter, confetti, sinelon, juggle, bpm };

uint8_t gCurrentPatternNumber = 0; // Index number of which pattern is current
uint8_t gHue = 0; // rotating "base color" used by many of the patterns
  
void loop()
{
  // Call the current pattern function once, updating the 'leds' array
  gPatterns[gCurrentPatternNumber]();

  // send the 'leds' array out to the actual LED strip
  FastLED.show();  
  // insert a delay to keep the framerate modest
  FastLED.delay(1000/FRAMES_PER_SECOND); 

  // do some periodic updates
  EVERY_N_MILLISECONDS( 20 ) { gHue++; } // slowly cycle the "base color" through the rainbow
  EVERY_N_SECONDS( 10 ) { nextPattern(); } // change patterns periodically
}

#define ARRAY_SIZE(A) (sizeof(A) / sizeof((A)[0]))

void nextPattern()
{
  // add one to the current pattern number, and wrap around at the end
  gCurrentPatternNumber = (gCurrentPatternNumber + 1) % ARRAY_SIZE( gPatterns);
}

void rainbow() 
{
  // FastLED's built-in rainbow generator
  fill_rainbow( leds, NUM_LEDS, gHue, 7);
}

void rainbowWithGlitter() 
{
  // built-in FastLED rainbow, plus some random sparkly glitter
  rainbow();
  addGlitter(80);
}

void addGlitter( fract8 chanceOfGlitter) 
{
  if( random8() < chanceOfGlitter) {
    leds[ random16(NUM_LEDS) ] += CRGB::White;
  }
}

void confetti() 
{
  // random colored speckles that blink in and fade smoothly
  fadeToBlackBy( leds, NUM_LEDS, 10);
  int pos = random16(NUM_LEDS);
  leds[pos] += CHSV( gHue + random8(64), 200, 255);
}

void sinelon()
{
  // a colored dot sweeping back and forth, with fading trails
  fadeToBlackBy( leds, NUM_LEDS, 20);
  int pos = beatsin16( 13, 0, NUM_LEDS-1 );
  leds[pos] += CHSV( gHue, 255, 192);
}

void bpm()
{
  // colored stripes pulsing at a defined Beats-Per-Minute (BPM)
  uint8_t BeatsPerMinute = 62;
  CRGBPalette16 palette = PartyColors_p;
  uint8_t beat = beatsin8( BeatsPerMinute, 64, 255);
  for( int i = 0; i < NUM_LEDS; i++) { //9948
    leds[i] = ColorFromPalette(palette, gHue+(i*2), beat-gHue+(i*10));
  }
}

void juggle() {
  // eight colored dots, weaving in and out of sync with each other
  fadeToBlackBy( leds, NUM_LEDS, 20);
  byte dothue = 0;
  for( int i = 0; i < 8; i++) {
    leds[beatsin16( i+7, 0, NUM_LEDS-1 )] |= CHSV(dothue, 200, 255);
    dothue += 32;
  }
}

(4)去最后面下載我的工程:雙擊打開,
在這里插入圖片描述

一看就知道ESP8266創建一個AP熱點供筆記本或者手機鏈接上去,沒有密碼的,
(5)配置開發板和串口資訊
在這里插入圖片描述
注意選擇的是什么型號的開發板型號還有你自己開發板連上電腦之后是占用的是哪個串口號

(6)按照原始碼的IO口連接
觀察原始碼管腳定義:
#include <ESP8266WiFi.h>
#include <DNSServer.h>
#include <ESP8266WebServer.h>
#include <FastLED.h>
#define DATA_PIN 4 //燈帶資料管腳–D2—GPIO4
#define LED_TYPE WS2812 //燈帶型別
#define COLOR_ORDER GRB //顏色順序
#define NUM_LEDS 64 //燈的數量
CRGB leds[NUM_LEDS]; //創建顏色物件1
CRGB myRGBcolor(0,0,0);//自定義一種顏色,三個一樣就是白色
#define BRIGHTNESS 0 //亮度0~255
可以看出:燈帶資料管腳–D2—GPIO4
下載完成即可運行程式了,

(7)自行搭建Eclipse安卓開發環境,或者將Eclipse安卓原始碼修改為Android studio的原始碼,網上教程很多就不詳細說明了,

3.編程思路介紹

先回顧功能
功能介紹:

1、這個版本加入的功能是64宮格LED全矩陣燈,寫了一個64宮格的解鎖界面去控制64個ws2812燈
2、加入dht11,在網頁輸入http://192.168.4.1/HandleVal?ssid=aasdas&password=data獲取溫度顯示在網頁和串口列印還有顯示在64個ws2812上
3、可以用get請求發送http://192.168.4.1/HandleVal?ssid=Number&password=77 直接在ws2812顯示77

存在幾個缺點:
1、顏色和亮度是固定的
2、筆畫必須連續
3、led0這個燈顯示數字有問題,因為涉及到我自創的手機字模提取技術,

技術點介紹:這個時候要說最簡單的話還是有點難度的,代碼量已經不少了,單片機的代碼涉及到與手機通信的自定義協議和繪制圖畫轉為通信資訊,還有嵌入式服務器如何回應AJAX請求,代碼中還有我自創的繪制數字字模的一個方式,不需要另外用軟體轉換,只需要在網頁表單中輸入:Number 18 就可以在燈板上顯示18 這個18陣列是我通過 手機app提取出來的,非常有趣,買家學會我這個影像存盤方式之后,你就可以快捷顯示任何矩陣影像和保存到單片機上,跟官方顯示的字庫方式有本質的區別!

這個程式是我獨立自主設計的,所以各種邏輯都考慮上去了,現在對我設計的思路做一個簡單的說明
(1)單片機需要開一個http嵌入式服務器監聽手機發送get請求
(2)手機需要撰寫一個執行緒提交get請求給服務器,當檢測到用戶在64宮格的圖形上繪制結束圖案的時候收集圖案的資訊通過執行緒將get請求攜帶圖案資訊給服務器
(3)服務器接收到手機發送的請求就決議資料,將對應的ws2812彩燈點亮,

前面幾個彩燈程式都有現成的示例代碼進行參考,現在基本上都是自主創新寫的代碼,因為想法奇特,需要做的就是只能是自己閉門造車了,

三、運行與除錯

詳情請看B站視頻,主要的優勢在于:用戶不需要使用電腦軟體去繪制圖案,也不需要用網頁去繪制圖案,因為網頁上繪制圖案的效果不是很好,后期其實這個表白軟體還有很多提升的空間的,在這里就開源給廣大DIY愛好者,通過自己的努力創造屬于自己的表白神器了,


總結

????通過上面運行與除錯狀態良好,程式和硬體達到博文提出的要求,到此為止:獨立研制的表白神器介紹就結束了,制作物聯網智能彩燈需要持之以恒的努力和創新的想象力,支持原創請大家去下載我收費的代碼,免費的代碼不見得就是最好的,同時祝愿天下的有情人終成眷屬,不需要表白神器都能識訓一份真摯的愛情!當然有了表白神器更能創造更加美好的回憶,

????如果是安裝開發環境出了問題,那么請大家仔細上網搜尋解決問題的方案;如果是懷疑我代碼寫錯了,那么是不可能的,代碼我自己寫,自己硬體測驗,如果有更多的需求請私下找我交流,我缺的不是技術,而是一個奇特的想法或者創意······

最后附上本博文代碼下載地址
https://www.cirmall.com/circuit/28123/
直接跳轉

轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/385647.html

標籤:其他

上一篇:桃詞典 Peach Dictionary 簡易英語詞典app開發 安卓軟體開發 Part 1

下一篇:雙非22應屆,無實習經歷,如何逆襲拿到位元組offer(附秋招筆記)

標籤雲
其他(157675) Python(38076) JavaScript(25376) Java(17977) C(15215) 區塊鏈(8255) C#(7972) AI(7469) 爪哇(7425) MySQL(7132) html(6777) 基礎類(6313) sql(6102) 熊猫(6058) PHP(5869) 数组(5741) R(5409) Linux(5327) 反应(5209) 腳本語言(PerlPython)(5129) 非技術區(4971) Android(4554) 数据框(4311) css(4259) 节点.js(4032) C語言(3288) json(3245) 列表(3129) 扑(3119) C++語言(3117) 安卓(2998) 打字稿(2995) VBA(2789) Java相關(2746) 疑難問題(2699) 细绳(2522) 單片機工控(2479) iOS(2429) ASP.NET(2402) MongoDB(2323) 麻木的(2285) 正则表达式(2254) 字典(2211) 循环(2198) 迅速(2185) 擅长(2169) 镖(2155) 功能(1967) .NET技术(1958) Web開發(1951) python-3.x(1918) HtmlCss(1915) 弹簧靴(1913) C++(1909) xml(1889) PostgreSQL(1872) .NETCore(1853) 谷歌表格(1846) Unity3D(1843) for循环(1842)

熱門瀏覽
  • 【從零開始擼一個App】Dagger2

    Dagger2是一個IOC框架,一般用于Android平臺,第一次接觸的朋友,一定會被搞得暈頭轉向。它延續了Java平臺Spring框架代碼碎片化,注解滿天飛的傳統。嘗試將各處代碼片段串聯起來,理清思緒,真不是件容易的事。更不用說還有各版本細微的差別。 與Spring不同的是,Spring是通過反射 ......

    uj5u.com 2020-09-10 06:57:59 more
  • Flutter Weekly Issue 66

    新聞 Flutter 季度調研結果分享 教程 Flutter+FaaS一體化任務編排的思考與設計 詳解Dart中如何通過注解生成代碼 GitHub 用對了嗎?Flutter 團隊分享如何管理大型開源專案 插件 flutter-bubble-tab-indicator A Flutter librar ......

    uj5u.com 2020-09-10 06:58:52 more
  • Proguard 常用規則

    介紹 Proguard 入口,如何查看輸出,如何使用 keep 設定入口以及使用實體,如何配置壓縮,混淆,校驗等規則。

    ......

    uj5u.com 2020-09-10 06:59:00 more
  • Android 開發技術周報 Issue#292

    新聞 Android即將獲得類AirDrop功能:可向附近設備快速分享檔案 谷歌為安卓檔案管理應用引入可安全隱藏資料的Safe Folder功能 Android TV新主界面將顯示電影、電視節目和應用推薦內容 泄露的Android檔案暗示了傳說中的谷歌Pixel 5a與折疊屏新機 谷歌發布Andro ......

    uj5u.com 2020-09-10 07:00:37 more
  • AutoFitTextureView Error inflating class

    報錯: Binary XML file line #0: Binary XML file line #0: Error inflating class xxx.AutoFitTextureView 解決: <com.example.testy2.AutoFitTextureView android: ......

    uj5u.com 2020-09-10 07:00:41 more
  • 根據Uri,Cursor沒有獲取到對應的屬性

    Android: 背景:呼叫攝像頭,拍攝視頻,指定保存的地址,但是回傳的Cursor檔案,只有名稱和大小的屬性,沒有其他諸如時長,連ID屬性都沒有 使用 cursor.getInt(cursor.getColumnIndexOrThrow(MediaStore.Video.Media.DURATIO ......

    uj5u.com 2020-09-10 07:00:44 more
  • Android連載29-持久化技術

    一、持久化技術 我們平時所使用的APP產生的資料,在記憶體中都是瞬時的,會隨著斷電、關機等丟失資料,因此android系統采用了持久化技術,用于存盤這些“瞬時”資料 持久化技術包括:檔案存盤、SharedPreference存盤以及資料庫存盤,還有更復雜的SD卡記憶體儲。 二、檔案存盤 最基本存盤方式, ......

    uj5u.com 2020-09-10 07:00:47 more
  • Android Camera2Video整合到自己專案里

    背景: Android專案里呼叫攝像頭拍攝視頻,原本使用的 MediaStore.ACTION_VIDEO_CAPTURE, 后來因專案需要,改成了camera2 1.Camera2Video 官方demo有點問題,下載后,不能直接整合到專案 問題1.多次拍攝視頻崩潰 問題2.雙擊record按鈕, ......

    uj5u.com 2020-09-10 07:00:50 more
  • Android 開發技術周報 Issue#293

    新聞 谷歌為Android TV開發者提供多種新功能 Android 11將自動填表功能整合到鍵盤輸入建議中 谷歌宣布Android Auto即將支持更多的導航和數字停車應用 谷歌Pixel 5只有XL版本 搭載驍龍765G且將比Pixel 4更便宜 [圖]Wear OS將迎來重磅更新:應用啟動時間 ......

    uj5u.com 2020-09-10 07:01:38 more
  • 海豚星空掃碼投屏 Android 接收端 SDK 集成 六步驟

    掃碼投屏,開放網路,獨占設備,不需要額外下載軟體,微信掃碼,發現設備。支持標準DLNA協議,支持倍速播放。視頻,音頻,圖片投屏。好點意思。還支持自定義基于 DLNA 擴展的操作動作。好像要收費,沒體驗。 這里簡單記錄一下集成程序。 一 跟目錄的build.gradle添加私有mevan倉庫 mave ......

    uj5u.com 2020-09-10 07:01:43 more
最新发布
  • 歡迎頁輪播影片

    如圖,引導開始,球從上落下,同時淡入文字,然后文字開始輪播,最后一頁時停止,點擊進入首頁。 在來看看效果圖。 重力球先不講,主要歡迎輪播簡單實作 首先新建一個類 TextTranslationXGuideView,用于影片展示 文本是類似的,最后會有個圖片箭頭影片,布局很簡單,就是一個 TextVi ......

    uj5u.com 2023-04-20 08:40:31 more
  • 【FAQ】關于華為推送服務因營銷訊息頻次管控導致服務通訊類訊息

    一. 問題描述 使用華為推送服務下發IM訊息時,下發訊息請求成功且code碼為80000000,但是手機總是收不到訊息; 在華為推送自助分析(Beta)平臺查看發現,訊息發送觸發了頻控。 二. 問題原因及背景 2023年1月05日起,華為推送服務對咨詢營銷類訊息做了單個設備每日推送數量上限管理,具體 ......

    uj5u.com 2023-04-20 08:40:11 more
  • 歡迎頁輪播影片

    如圖,引導開始,球從上落下,同時淡入文字,然后文字開始輪播,最后一頁時停止,點擊進入首頁。 在來看看效果圖。 重力球先不講,主要歡迎輪播簡單實作 首先新建一個類 TextTranslationXGuideView,用于影片展示 文本是類似的,最后會有個圖片箭頭影片,布局很簡單,就是一個 TextVi ......

    uj5u.com 2023-04-20 08:39:36 more
  • 【FAQ】關于華為推送服務因營銷訊息頻次管控導致服務通訊類訊息

    一. 問題描述 使用華為推送服務下發IM訊息時,下發訊息請求成功且code碼為80000000,但是手機總是收不到訊息; 在華為推送自助分析(Beta)平臺查看發現,訊息發送觸發了頻控。 二. 問題原因及背景 2023年1月05日起,華為推送服務對咨詢營銷類訊息做了單個設備每日推送數量上限管理,具體 ......

    uj5u.com 2023-04-20 08:39:13 more
  • iOS從UI記憶體地址到讀取成員變數(oc/swift)

    開發除錯時,我們發現bug時常首先是從UI顯示發現例外,下一步才會去定位UI相關連的資料的。XCode有給我們提供一系列debug工具,但是很多人可能還沒有形成一套穩定的除錯流程,因此本文嘗試解決這個問題,順便提出一個暴論:UI顯示例外問題只需要兩個步驟就能完成定位作業的80%: 定位例外 UI 組 ......

    uj5u.com 2023-04-19 09:16:23 more
  • FIDE重磅更新!性能飛躍!體驗有禮!

    FIDE 開發者工具重構升級啦!實作500%性能提升,誠邀體驗! 一直以來不少開發者朋友在社區反饋,在使用 FIDE 工具的程序中,時常會遇到諸如加載不及時、代碼預覽/渲染性能不如意的情況,十分影響開發體驗。 作為技術團隊,我們深知一件趁手的開發工具對開發者的重要性,因此,在2023年開年,FinC ......

    uj5u.com 2023-04-19 09:16:15 more
  • 游戲內嵌社區服務開放,助力開發者提升玩家互動與留存

    華為 HMS Core 游戲內嵌社區服務提供快速訪問華為游戲中心論壇能力,支持玩家直接在游戲內瀏覽帖子和交流互動,助力開發者擴展內容生產和觸達的場景。 一、為什么要游戲內嵌社區? 二、游戲內嵌社區的典型使用場景 1、游戲內打開論壇 您可以在游戲內繪制論壇入口,為玩家提供沉浸式發帖、瀏覽、點贊、回帖、 ......

    uj5u.com 2023-04-19 09:15:46 more
  • iOS從UI記憶體地址到讀取成員變數(oc/swift)

    開發除錯時,我們發現bug時常首先是從UI顯示發現例外,下一步才會去定位UI相關連的資料的。XCode有給我們提供一系列debug工具,但是很多人可能還沒有形成一套穩定的除錯流程,因此本文嘗試解決這個問題,順便提出一個暴論:UI顯示例外問題只需要兩個步驟就能完成定位作業的80%: 定位例外 UI 組 ......

    uj5u.com 2023-04-19 09:14:53 more
  • FIDE重磅更新!性能飛躍!體驗有禮!

    FIDE 開發者工具重構升級啦!實作500%性能提升,誠邀體驗! 一直以來不少開發者朋友在社區反饋,在使用 FIDE 工具的程序中,時常會遇到諸如加載不及時、代碼預覽/渲染性能不如意的情況,十分影響開發體驗。 作為技術團隊,我們深知一件趁手的開發工具對開發者的重要性,因此,在2023年開年,FinC ......

    uj5u.com 2023-04-19 09:14:08 more
  • 游戲內嵌社區服務開放,助力開發者提升玩家互動與留存

    華為 HMS Core 游戲內嵌社區服務提供快速訪問華為游戲中心論壇能力,支持玩家直接在游戲內瀏覽帖子和交流互動,助力開發者擴展內容生產和觸達的場景。 一、為什么要游戲內嵌社區? 二、游戲內嵌社區的典型使用場景 1、游戲內打開論壇 您可以在游戲內繪制論壇入口,為玩家提供沉浸式發帖、瀏覽、點贊、回帖、 ......

    uj5u.com 2023-04-19 09:08:34 more