日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > Android >内容正文

Android

Android商城开发(一)——一次活动页需求引发的危机感

發(fā)布時間:2023/12/14 Android 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Android商城开发(一)——一次活动页需求引发的危机感 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

本文出自:https://blog.csdn.net/DT235201314/article/details/81027990

一丶概述

本文講述商城活動頁需求解決過程,及一些個人想法(危機(jī)感),提供問題解決方法及核心代碼。

二丶活動頁開發(fā)必備技能

1.切圖

2.js h5

3.Android webview

4.Android和js方法互調(diào)

三丶現(xiàn)狀陳述

個人:會Android,webview只做過簡單的頁面打開,沒做過交互;會js(呵呵,好像已經(jīng)忘了吧),會復(fù)制粘貼;切圖不會,可以學(xué),Android和js交互,可以學(xué)(兩篇博客搞定)。

需求:1.秒殺活動(主要,后面文章再說);2.原生活動頁改為js頁面(本文重點(diǎn))

項目:15年底的外包半成品項目,閑置至2018年初,領(lǐng)導(dǎo)拍板重視緊急上線(緊急改BUG咯),4月原維護(hù)同事辭職,商城項目由我主要負(fù)責(zé)(之前有看代碼,沒負(fù)責(zé)開發(fā)),秒殺活動發(fā)版時間:暫定下周五*(不到一周時間,評估:時間不足)。

行動:周末加班一天。

四丶實際操作

1.查看公司內(nèi)購項目“碰碰貓”(混合開發(fā),已交給前段組負(fù)責(zé))。

問題:1.使用httpClient,Android studio編譯報錯。(可以說項目已經(jīng)很久沒維護(hù)更新了)2......

說說碰碰貓,升級空間非常大,功能點(diǎn)很多沒完善,有提過需求卻一直擱淺...

可能原因:項目已交付給前段人員維護(hù),不屬于移動組項目。新需求需要協(xié)作開發(fā),需領(lǐng)導(dǎo)協(xié)調(diào)辦公。很久沒維護(hù)的項目,網(wǎng)絡(luò)框架,Android studio配置等都得更新,工作量不小項目卻是掛在別的組(容易被當(dāng)皮球)。

2.兩篇文章搞定需求

理論篇:Android:你要的WebView與 JS 交互方式 都在這里了

實戰(zhàn)篇:Android與HTML+JS交互入門

兩篇文章講得很詳細(xì),后面再說相關(guān)技術(shù)

另外兩篇文章就能解決需求,可見自己的可替代性很高。

3.切圖,一下真還學(xué)不會,拜托同事幫忙,驚訝的發(fā)現(xiàn)居然就是橫橫橫橫豎5下搞定,簡單的還是能學(xué)會的。

4.尋找js商城模板(后面會粘貼代碼)還是交給同事,居然幾分鐘就搞定了。須快速上手。

五丶原生開發(fā)vs混合開發(fā)

原生·開發(fā):

優(yōu)點(diǎn):更流暢,只需移動端(一個人)維護(hù)

缺點(diǎn):活動更新,另寫頁面,復(fù)用性不高,需重新發(fā)版(如果設(shè)計圖變化不大,顯示模板相同可不發(fā)版)

混合開發(fā):

優(yōu)點(diǎn):活動更換只需要更換js頁面,不需要發(fā)版

缺點(diǎn):必要時需要移動端,前段同時維護(hù)

六丶核心代碼

Android提供給js的接口,傳值為空跳轉(zhuǎn)到主頁面,傳值帶參數(shù)跳轉(zhuǎn)到商品詳情頁面

@JavascriptInterface public void startFunction(final String text,final String text1) {if("".equals(text)&&"".equals(text1)){Intent intent = new Intent(this, MainActivity.class);startActivity(intent);}else {Intent intent = new Intent(this, DetailActivity.class);intent.putExtra(KeyContants.KEY_INENT_PRODUCT_ID, text);intent.putExtra(KeyContants.KEY_INTENT_PROMOTION_PRODUCT_ID, text1);startActivity(intent);} }

商城js模板

<%@page contentType="text/html; charset=utf-8" pageEncoding="UTF-8" %> <html xmlns="http://www.w3.org/1999/xhtml"> <head><meta http-equiv="Content-Type" content="text/html; charset=gb2312" /><title>預(yù)售活動</title> </head><body style="text-align:center; margin:0; padding:0; background-color: black; "> <img src="${pageContext.servletContext.contextPath}/static/promotion/img/51/ys-wap.jpg" style="width: 100%;" border="0" usemap="#Map" onClick="return false;"/> <map name="Map" id="CribMap"><area shape="rect" coords="---" id="---" /></map> </body><script type="text/javascript">var ua = navigator.userAgent.toLowerCase();if (/iphone|ipad|ipod/.test(ua)) {document.getElementById("area01").onclick = function() { window.webkit.messageHandlers.callFunction.postMessage("{ \"productId\":\"---\",\"promotionId\":\"\" }") };document.getElementById("area20").onclick = function() { window.scrollTo(0,0) };document.getElementById("area21").onclick = function() { window.webkit.messageHandlers.backAction.postMessage("") };} else {document.getElementById("area01").onclick = function() { window.android.startFunction('---','') };document.getElementById("area20").onclick = function() { window.scrollTo(0,0) };document.getElementById("area21").onclick = function() { window.android.startFunction('','') };}</script><script type="text/javascript">adjust();var timeout = null;window.onresize = function () {clearTimeout(timeout);timeout = setTimeout(function () { window.location.reload(); }, 100);}function adjust() {var map = document.getElementById("CribMap");var element = map.childNodes;var itemNumber = element.length / 2;for (var i = 0; i < itemNumber - 1; i++) {var item = 2 * i + 1;var oldCoords = element[item].coords;var newcoords = adjustPosition(oldCoords);element[item].setAttribute("coords", newcoords);}var test = element;}function adjustPosition(position) {var pageWidth = document.body.clientWidth;var imageWidth = 640;var each = position.split(",");for (var i = 0; i < each.length; i++) {each[i] = Math.round(parseInt(each[i]) * pageWidth / imageWidth).toString();i++;each[i] = Math.round(parseInt(each[i]) * pageWidth / imageWidth).toString();}var newPosition = "";for (var i = 0; i < each.length; i++) {newPosition += each[i];if (i < each.length - 1) {newPosition += ",";}}return newPosition;} </script> </html>

七丶危機(jī)感分析

1.項目:突然重視的商城項目,后期可能不重視。以目前現(xiàn)狀花錢燒個商城APP與阿里京東競爭不可能。

2.項目發(fā)展:可能像內(nèi)購平臺一樣,后期交由前端維護(hù)(事少了,KPI好不了)

3.個人:js不會,切圖不會,說是說可以學(xué)卻一直沒開始學(xué),等著被淘汰

4.趨勢:大前端趨勢

只有不斷學(xué)習(xí)才能防止淘汰

寫在最后微信掃碼提問

如果文章對你有幫助,歡迎點(diǎn)贊關(guān)注

總結(jié)

以上是生活随笔為你收集整理的Android商城开发(一)——一次活动页需求引发的危机感的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。