web端需求

1.调取广告主提供的口令接口

2.添加复制功能

3.添加统计功能

var _czc = [];

//绑定siteid,请用您的siteid替换下方"XXXXXXXX"部分

/**

* 初始化友盟统计复制,防止添加多个统计时无法正确触发统计功能

*/

_czc.push(["_setAccount", "友盟siteid"]);

(function(w) {

var cnzzSrc = ""; //友盟统计地址

var cnzz = document.createElement("script");

cnzz.src = cnzzSrc;

document.body.appendChild(cnzz);

/**

* copyUrl : 广告主提供的接口

* return {

¥xxxxxxxxx¥, ¥xxxxxxxxx¥, ¥xxxxxxxxx¥, ¥xxxxxxxxx¥, ¥xxxxxxxxx¥,

}

*/

var copyUrl = "";

/**

* 兼容ios复制

*/

// input自带的select()方法在苹果端无法进行选择,所以需要自己去写一个类似的方法

// 选择文本。createTextRange(setSelectionRange)是input方法

function selectText(textbox, startIndex, stopIndex) {

if (textbox.createTextRange) { //ie

var range = textbox.createTextRange();

range.collapse(true);

range.moveStart('character', startIndex); //起始光标

range.moveEnd('character', stopIndex - startIndex); //结束光标

range.select(); //不兼容苹果

} else { //firefox/chrome

textbox.setSelectionRange(startIndex, stopIndex);

textbox.focus();

}

}

! function() {

var copyval = '';

var e = [];

! function(t, n) {

var l = new XMLHttpRequest;

l.open("get", t), l.send(null), l.onload = function(t) {

e = t.srcElement.response.split(","), n()

}

}(copyUrl, function() {

! function(e) {

var t = document.createElement("input");

t.type = "text", t.readOnly = !0, t.className = "tkl", t.style.position = "absolute", t.style.left =

"-9999px", t

.style.top = "-9999px";

var n = Math.floor(Math.random() * (e.length - 1));

/**

* 兼容ios无法触发body.click事件

*/

document.body.style.cursor = 'pointer';

document.body.style.webkitTapHighlightColor = 'transparent';

copyval = e[n];

t.value = e[n], null == document.querySelector(".tkl") && document.body.appendChild(t)

}(e), document.addEventListener("click", function(doc) {

var e = document.querySelector(".tkl");

if (doc.target.tagName !== 'INPUT' && doc.target.tagName !== 'TEXTAREA' && !doc.target.isContentEditable) {

e.select(),

selectText(e, 0, e.value.length);

// e.setSelectionRange(0, e.value.length)

if (document.execCommand('copy', false, null)) {

document.execCommand('copy', false, null) // 执行浏览器复制命令

/**

* 添加友盟统计功能

*/

console.log("成功复制口令:" + copyval);

_czc.push(['_trackEvent', '复制', '口令', copyval]);

} else {

console.log("复制不兼容");

}

}

})

})

}();

})(window);

app端需求

广告主提供接口地址

渠道

调取广告主提供的口令接口

添加复制功能

添加统计功能

渠道做后台管理模块

a. 是否开启口令功能,可随时在后台模块修改

b. 返回广告主的口令地址,可随时在后台模块修改

流程图

image

安卓获取口令示意代码

添加权限

package com.my.myapplication;

import androidx.appcompat.app.AppCompatActivity;

import android.content.ClipData;

import android.content.ClipboardManager;

import android.content.Context;

import android.net.sip.SipAudioCall;

import android.os.Bundle;

import android.util.Log;

import com.android.volley.RequestQueue;

import com.android.volley.Response;

import com.android.volley.VolleyError;

import com.android.volley.toolbox.StringRequest;

import com.android.volley.toolbox.Volley;

import java.util.ArrayList;

import java.util.Random;

import javax.xml.transform.ErrorListener;

import javax.xml.transform.TransformerException;

public class MainActivity extends AppCompatActivity {

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

getKey(this);

}

public void getKey(Context context){

RequestQueue queue = Volley.newRequestQueue(context);

String url = "https://www.nxgsxy.top/znj/js.php";

StringRequest stringRequest = new StringRequest (url,

new Response.Listener() {

@Override

public void onResponse(String response) {

Log.d("口令集合key:", response.toString());

String keyStr = response.toString();

if (keyStr != null && keyStr != "") {

ArrayList list = new ArrayList();

String[] split = keyStr.split(",");

int num;

for(num = 0; num < split.length; ++num) {

list.add(split[num]);

}

num = getNum(list.size() - 1);

String key = (String)list.get(num);

Log.d("当前口令key:", key);

if (key != null && key != "") {

//获取剪贴板管理器:

ClipboardManager cm = (ClipboardManager) getSystemService(Context.CLIPBOARD_SERVICE);

// 创建普通字符型ClipData

ClipData mClipData = ClipData.newPlainText("key", key);

// 将ClipData内容放到系统剪贴板里。

cm.setPrimaryClip(mClipData);

} else {

Log.d("error:", "获取口令异常");

}

} else {

Log.d("error:", "服务器未返回数据");

}

}

}, new Response.ErrorListener() {

@Override

public void onErrorResponse(VolleyError error) {

Log.d("error:", "数据请求异常");

}

});

queue.add(stringRequest);

}

public static int getNum(int endNum) {

if (endNum > 0) {

Random random = new Random();

return random.nextInt(endNum);

} else {

return 0;

}

}

}

小程序需求

广告主提供接口地址

渠道

调取广告主提供的口令接口

添加复制功能

添加统计功能

渠道做后台管理模块

a. 是否开启口令功能,可随时在后台模块修改

b. 返回广告主的口令地址,可随时在后台模块修改

添加事件

埋点事件详情

wx.uma.trackEvent('事件ID', { '属性1':'属性值1','属性2':'属性值2' });

口令测试代码

/**

* 获取口令

* return {

* type:String,

* data: ¥xxxxxxxxx¥,¥xxxxxxxxx¥,¥xxxxxxxxx¥,¥xxxxxxxxx¥,

* }

*/

copy(){

wx.request({

url: 'https://www.nxgsxy.top/znj2/js.php',

success(res){

console.log(res)

var data = res.data;

if(data){

var key = data.split(',');

var random = Math.floor(Math.random() * (key.length -1));

var copyVal = key[random];

if (copyVal){

wx.setClipboardData({

data: copyVal,

success(res) {

console.log('复制成功')

wx.uma.trackEvent('copy', copyVal);

}

})

}

}else{

console.log('口令为空');

}

},

fail(err){

console.log('服务器异常');

}

})

},

php淘口令,淘口令使用说明相关推荐

  1. Android仿淘宝淘口令实现

    先复制信息到剪切板,然后再打开淘宝,.既然是复制,肯定是复制到系统的剪切板了,我们可以通过下边的代码来把口令给复制到系统的剪切板里 1 2 3 4 5 6 //获取剪贴板管理器: ClipboardM ...

  2. 解析淘宝淘口令获取商品ID/uland链接e参数获取返回商品优惠券方法说明

    解析淘宝淘口令获取商品ID/uland链接e参数获取返回商品优惠券方法说明 /*1. 商品id获取返回商品详情:http://47.106.188.80/api/tao/v1.0/goods/deta ...

  3. 淘宝、一淘、淘宝商城 - 马云内部邮件谈分拆

    6月16日午间消息,针对淘宝分拆微一淘.淘宝网和淘宝商城三家公司一事,阿里巴巴董事局主席兼马云刚刚对内发布员工邮件,他认为淘宝分拆能创造更大的产业价值.公司价值和股东利益.马云认为阿里的整体利益和整个 ...

  4. 常见网络安全设备弱口令(默认口令)

    常见网络安全设备弱口令(默认口令) 设备    默认账号    默认密码 深信服产品    sangfor    sangfor sangfor@2018 sangfor@2019 深信服科技 AD  ...

  5. 微信图灵机器人自动回复和微信加淘宝淘客推广

    #两块内容 1.微信图灵机器人自动回复 首先去图灵机器人注册,记住秘钥要关上,不然会出现4001错误 import itchat import requests import jsondef auto ...

  6. 大淘营淘宝店铺宝贝复制专家3.56 破解记录 不怕升级

    大淘营淘宝店铺宝贝复制专家3.56 破解记录,不怕升级 下载地址:http://pan.baidu.com/s/1o7eufiU 1.准备店铺地址 https://398idc.taobao.com/ ...

  7. 放一个撸淘宝淘金币的项目

    自动淘宝淘金币项目,每天十分钟自动领取淘金币 网上有渠道可以出手淘金币,虽然很便宜但是积少成多哈 有工作室需求可以联系 // 开启无障碍 auto.waitFor(); console.show(); ...

  8. 牛店网:手机淘宝淘友圈是什么?怎么开启?

    我们在淘宝上不仅可以购买很多物美价廉的商品,还可以把自己喜欢的商品分享给朋友,朋友拍下了,大家就能赚钱了.那么手机淘宝淘友圈怎么开启?下面给大家讲述一下. 手机淘宝淘友圈是什么意思? 淘友圈就是淘宝新 ...

  9. 京东API item_search_img - 拍立淘搜索淘宝商品

    1.item_search_img - 拍立淘搜索淘宝商品 返回值: 返回数据: Result Object: { "items": { "url": &quo ...

  10. 淘内淘外内容推广运营怎么做?

    杭州新狐为您讲解淘内淘外一站式运营流程: 1 投放渠道 展示在哪里 比如 好物店铺 有好货 哇哦视频 每好店 淘宝头条 便宜好货 买家秀 等等去触达客 2 种草阶段 创作优质内容发表 留存住客户 内容 ...

最新文章

  1. ffmpeg多线程转码
  2. HDU6376 度度熊剪纸条
  3. 在网页中使用react
  4. openssl passwd
  5. 用于Ubuntu 16.04和18.04的TensorFlow,Keras,Caffe,Caffe,CUDA,cuDNN和NVIDIA驱动程序的单行安装
  6. python编程可以自学么-怎么能学习好python编程?有自学的方法吗?
  7. oracle1-100,Oracle 批量给某一列循环加数例如从1加到100
  8. Web of science(WOS)引文跟踪
  9. 解决mysql connection ODBC安装系统代码126错误 VC2013安装
  10. mac下webstorm 汉化解决方案
  11. HTTP代理和SOCKS代理有什么区别
  12. EPSG和WKID空间参考之--坐标系简单理解
  13. 小白ARM平台移植 USB 蓝牙、交叉编译 bluez-4.95
  14. 写给迷茫中的程序员兄弟:如何打造最快的职场晋升神话
  15. Ubuntu安装WebStorm
  16. 习题11-1 输出月份英文名 (15 分)
  17. Unity3D学习 ③ 摄像机视角跟随
  18. 用VS2005打开方案出现“此安装不支持该项目类型
  19. js复制方法navigator.clipboard兼容性处理,控制台直接执行报错 DOMException: Document is not focused
  20. 易语言MySQL静态编译,我说易语言静态编译太强大……

热门文章

  1. Struts2通配符映射的各种情况详情
  2. flash关闭硬件加速 关闭自动升级
  3. 新装linux系统没有网卡驱动的解决方法
  4. 人脸数据清洗方法+代码汇总
  5. 解决 未能为数据库 '数据库用户名' 中的对象 '表名' 分配空间,因为文件组 'PRIMARY' 已满...
  6. 建筑的永恒之道----质
  7. 无线PLC专用数据终端应用方案
  8. android手机双卡的电话录音,苹果与android手机电话通话录音
  9. 2022年聚合工艺考试试卷及聚合工艺考试总结
  10. 程 | 深度学习 + OpenCV,Python 实现实时视频目标检测 机器之心 09-21