Geliştirme | Küçük bir programda sallamak mı? Sadece arayüzü ara

Wen | Hua Amca

Uygulama sallama işlevini de yapabilir, ancak bunu yapan herhangi bir uygulama görmedim mi?

Merakına dayanamayan Hua Amca, son iki gündür onu inceledi.

Bunu söylemeden önce, lütfen Düğümlerin yeni özelliğini, yani kişisel ana sayfa işlevini açıklamama izin verin. Bu özelliğinden dolayı Hua Amca, uygulamayı inceleme ve sallama merakına sahiptir.

Düğümlerin ana sayfasında veya bir zihin haritasının ayrıntılar sayfasında, avatara tıklamak bir kişinin kişisel ana sayfasına atlayacaktır.

Bu sayfa esas olarak bir kullanıcının herkese açık hale getirdiği zihin haritası çalışmalarını görüntülemek için kullanılır (zihin haritası, Düğümlerin ana sayfasında halka açık olarak çalıştırılabilir).

Bu sayfa üç işlevi kapsar:

  • Kullanıcının herkese açık hale getirdiği zihin haritası çalışmalarını sorgulayın veya filtreleyin.
  • Başlıktaki başlık resmini değiştirin (sağ üst köşede bir bağlantı vardır).
  • Başlık resmine göre, sayfanın (başlığın sağ alt köşesinde) paylaştığı Anları oluşturun.

Başka bir deyişle, normal koşullarda, bir kullanıcının başka bir kullanıcının ana sayfasına erişmesinin yalnızca iki yolu vardır:

  • Kullanıcının belirli bir zihin haritasını ziyaret edin ve kullanıcının avatarına tıklayın
  • İlgili krizantem kod resmini tarayın veya tanımlayın

Sanırım giriş biraz eksik. O zamandan beri, diğer insanların ana sayfalarına erişimi nasıl artırabileceğimi düşünüyordum.

Önce bir kullanıcı listesi sayfası yapmayı düşündüm ve ardından kullanıcı listeden bir kullanıcının ana sayfasına erişti. Yöntem uygulanabilir, ancak bunu yapmak için çok tembel.

Yani sıradaki Çok "insan karşıtı" bir etkileşim yarattı , Lütfen demoya bakın (bu hayat riski altında kaydedilir):

Doğru, demo sayfası yukarıda ziyaret edilen sayfadır. Kişisel ana sayfanızda salladığınız sürece, diğer kullanıcıların ana sayfaları rastgele görünecektir.

WeChat uygulamasının iki API'si burada kullanılır:

  • Telefonun fiziksel durumunu tespit etmek için ivmeölçer API.
  • Audio API, kullanıcı telefonu salladığında ses çalın.

Kod nasıl yazılır?

Uygulamadaki ivmeölçer API'si web'de geliştirilen API'ye çok benzediği için Tek fark, uygulamanın bu olayın izlenmesini aktif olarak açması gerektiğidir (ayrıca kapatılabilir).

Bu yüzden, İnternette bir parça hazır JS kodu buldum ve onun yerine sadece kullandım.

Sonunda bir kod parçası yayınladı:

// İlk olarak global değişkeni tanımlayın var lastTime = 0; // Bu değişken son sallamanın zamanını kaydetmek için kullanılır var x = 0, y = 0, z = 0, lastX = 0, lastY = 0, lastZ = 0; // Bu değişken grubu, sırasıyla x, y ve z eksenlerinin değerlerini ve son değeri kaydeder var shakeSpeed = 110; // Eşik değerini ayarlayın // Shake yöntemi işlevini yazın shake (hızlanma) {var nowTime = new Date. getTime; // Geçerli saati kaydedin // Bu sallamanın zamanı ile son sallamanın zamanı arasında belirli bir aralık varsa, if (nowTime-lastTime > 100) {var diffTime = nowTime-lastTime; // Zaman periyodunu kaydedin lastTime = nowTime; // Sallama süresinin bir sonraki hesaplamasına hazırlanmak için bu sallama süresini kaydedin x = acceleration.x; // x ekseni değerini, x ekseni alın Kuzey eksenine diktir ve doğu pozitiftir y = ivme.y; // y ekseni değerini alın ve y ekseni kuzey pozitiftir z = ivme.z; // Z ekseni değerini alın, z ekseni yere dik, yukarı doğru Pozitif // Hesaplama formülü, istediğimiz hız olan birim zaman başına hareket mesafesi anlamına gelir var speed = Math.abs (x + y + z-lastX-lastY-lastZ) / diffTime * 10000; // console .log (hız) if (hız > shakeSpeed) {// Hesaplanan hız eşiği aşarsa, kullanıcının wx.stopAccelerometer self.setData ({hasInit: false, canvas: {}}) audioCtx.setSrc ('http: //123.207 .0.183 / application / images / s.mp3 ') audioCtx.play wx.showLoading ({title:' Yüce Tanrıyı Bulmak ... '}) config.request ({// url talebinin URL'si: config.service.taRan , success (e) {setTimeout (function {//console.log(e.data) audioCtx.setSrc (' audioCtx.play self.uid = e .data self.con = '' self.onInitShow}, 2000)}})} lastX = x; // Sonraki hesaplamaya hazırlanmak için atama lastY = y; // Sonraki hesaplamaya hazırlanmak için atama lastZ = z ; // Sonraki hesaplamaya hazırlanmak için atama}) wx.onAccelerometerChange (salla) //wx.startAccelerometervar audioCtx = wx.createAudioContext ('myAudio')

Unutulmaması gereken bir şey daha şudur: Uygulamanın Ses API'si yalnızca ağ ses kaynaklarını kullanabilir .

Orijinal adres:

`` Düğümler '' Mini Programı https://minapp.com/miniapp/2629/ bağlantısını kullanın

"Knowing Program" resmi hesabını takip edin ve mini program geliştirme hakkındaki makaleler için öneriler almak için WeChat arka planındaki "Geliştirme" bölümüne yanıt verin.

Kulüpler Dünya Kupası sonuna kadar "korkutucu" olabilir. Bundesliga bu gece hala "güçlü ve zayıf" olabilir
önceki
Resmi duyuru, Wuling Baojun her şey dahil, 38.000 yuan ile en yüksek indirim
Sonraki
Çin Süper Ligi'nin ilk penaltı! Büyük motosiklet 100 metrede bir noktaya gelmek için fırladı, Caldeck hızla çıkmazdan kurtuldu
"Nai Shui Han" yaz tatilinde açık olan 20.000 kalifikasyonu belirlemek için dosya süresini silmiyor
Maçtan 25 dakika sonra Jin Hanxin ayakkabı sattı, elmaslar vahşi bıçaklar sattı ama kral en önemlisini sattı.
Koruma Hoh Xil | Xu Genling: Her harika anın arkasında her zaman dikkatli bir "büyük uşak" vardır
En zayıf Evergrande'nin hala bir şampiyonluk katili var, 11 büyük yedek oyuncuların hepsi uluslararası futbolcular.
HomePod sadece bir hoparlör mü? Aynı zamanda en iyi sesi veren iOS cihazı olacak
"Metropol alanı" çağı geliyor, yerleştiğinizde bu değişiklikleri hoş karşılayacaksınız
8 yıllık 4,3 milyar yatırımın ardından Changan Automobile'in küresel Ar-Ge merkezi resmen açıldı
Zheng Zhi de ikame edebilir! Ka Shuai, Evergrande'nin mutlak bir ana gücü olmadığını ve hepsinin genç uluslararası
Yaz geldi, köpeğini tıraş etmek istediğine emin misin? Pek çok insan doğru olanı seçmez!
Kralın Zaferi: En etli ekipman Anti-A Seviye 1 A, Ominous Seviye 2 A, Seviye 4 A
Kılıcı al ve savaşa git! Bu, son yılların en iyi mobil manga oyunu olabilir
To Top