1.用淘宝点击分享微信,生成商品口令

2.复制口令字符串

3.写入剪切板,读取剪切板的数据

4.跳转淘宝app,淘宝会自动监听字符串数据,配合后台,弹框拿到商品数据的详情

依赖

 implementation fileTree(dir: 'libs', include: ['*.jar'])implementation 'com.android.support:appcompat-v7:28.0.0'implementation 'com.android.support.constraint:constraint-layout:1.1.3'implementation 'com.github.bumptech.glide:glide:3.7.0'testImplementation 'junit:junit:4.12'androidTestImplementation 'com.android.support.test:runner:1.0.2'androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'implementation 'com.android.support:cardview-v7:28.0.0'

功能代码:

package com.example.glidedownload;import android.content.ClipData;
import android.content.ClipDescription;
import android.content.ClipboardManager;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.support.annotation.Nullable;
import android.support.v7.app.AppCompatActivity;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;public class FirstActivity extends AppCompatActivity {private String phone="1\uD83D\uDC48 hi:/\uD83D\uDDDDupvbXU2HWxZ\uD83D\uDDDD  Apple/苹果 iPhone 11 移动联通电信4G全网通手机 2020新版";private String book="4\uD83D\uDC48 hi:/\uD83D\uDCB2AINOXUdS5o3₴  国富论(上下卷)(权威译本)";private String table="8\uD83D\uDC48 ha:/✔PEcrXUdiNYn《  SUNSHINE BABY/阳光芭比诺檀丝木小书桌实木桌子客厅家具";private TextView tv_content;private Button btn_open;private String content;@Overrideprotected void onCreate(@Nullable Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_first);btn_open = findViewById(R.id.btn_open);tv_content = findViewById(R.id.tv_content);tv_content.setText(phone);btn_open.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View v) {content = tv_content.getText().toString();GangUpInvite(getApplicationContext(), content);}});}public void GangUpInvite(final Context context, String content) {ClipboardManager clipboard = (ClipboardManager) context.getSystemService(CLIPBOARD_SERVICE);ClipData mClipData = ClipData.newPlainText("Label", content);clipboard.setPrimaryClip(mClipData);Log.e("TAG","tv_text:"+mClipData+content);//无数据时直接返回if (!clipboard.hasPrimaryClip()) {return;}//如果是文本信息if (clipboard.getPrimaryClipDescription().hasMimeType(ClipDescription.MIMETYPE_TEXT_PLAIN)) {ClipData cdText = clipboard.getPrimaryClip();ClipData.Item item = cdText.getItemAt(0);//此处是TEXT文本信息if (item.getText() != null) {//启动手机淘宝Intent intent = getPackageManager().getLaunchIntentForPackage("com.taobao.taobao");startActivity(intent);}}}}

xml代码

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"android:layout_width="match_parent"android:layout_height="match_parent"android:gravity="center"android:orientation="vertical"><android.support.v7.widget.CardViewandroid:id="@+id/card_reagents"android:layout_width="300dp"android:layout_height="270dp"><RelativeLayoutandroid:layout_width="match_parent"android:layout_height="match_parent"><Buttonandroid:id="@+id/btn_open"android:layout_width="180dp"android:layout_height="40dp"android:layout_alignParentBottom="true"android:layout_centerHorizontal="true"android:layout_marginBottom="10dp"android:background="@drawable/bg_button"android:text="去粘贴口令"android:textColor="@android:color/white"android:textSize="16sp" /><TextViewandroid:id="@+id/tv_content"android:layout_width="260dp"android:layout_height="150dp"android:layout_below="@+id/tv_title"android:layout_centerHorizontal="true"android:background="@color/bg_color"android:text=""android:textSize="12sp" /><TextViewandroid:id="@+id/tv_title"android:layout_width="match_parent"android:layout_height="50dp"android:layout_centerHorizontal="true"android:gravity="center"android:text="口令已复制"android:textColor="@android:color/black"android:textSize="18sp" /></RelativeLayout></android.support.v7.widget.CardView></LinearLayout>

==========更新,改进版本 2.0 新增接收端字符串打印============

功能代码:

package com.example.glidedownload;import android.content.ClipData;
import android.content.ClipDescription;
import android.content.ClipboardManager;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.support.annotation.Nullable;
import android.support.v7.app.AppCompatActivity;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.TextView;public class FirstActivity extends AppCompatActivity {private String phone = "1\uD83D\uDC48 hi:/\uD83D\uDDDDupvbXU2HWxZ\uD83D\uDDDD  Apple/苹果 iPhone 11 移动联通电信4G全网通手机 2020新版";private String book = "4\uD83D\uDC48 hi:/\uD83D\uDCB2AINOXUdS5o3₴  国富论(上下卷)(权威译本)";private String table = "8\uD83D\uDC48 ha:/✔PEcrXUdiNYn《  SUNSHINE BABY/阳光芭比诺檀丝木小书桌实木桌子客厅家具";private TextView tv_content;private Button btn_open;private String content;@Overrideprotected void onCreate(@Nullable Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_first);btn_open = findViewById(R.id.btn_open);tv_content = findViewById(R.id.tv_content);tv_content.setText(table);btn_open.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View v) {content = tv_content.getText().toString();GangUpInvite(getApplicationContext(), content);}});}public void GangUpInvite(final Context context, String content) {ClipboardManager clipboard = (ClipboardManager) context.getSystemService(CLIPBOARD_SERVICE);ClipData mClipData = ClipData.newPlainText("Label", content);clipboard.setPrimaryClip(mClipData);Log.e("TAG", "tv_text:" + mClipData + content);//无数据时直接返回if (!clipboard.hasPrimaryClip()) {return;}//如果是文本信息if (clipboard.getPrimaryClipDescription().hasMimeType(ClipDescription.MIMETYPE_TEXT_PLAIN)) {ClipData cdText = clipboard.getPrimaryClip();ClipData.Item item = cdText.getItemAt(0);//此处是TEXT文本信息if (item.getText() != null) {//启动测试程序Intent intent = getPackageManager().getLaunchIntentForPackage("com.example.mepositry");if (intent != null) {startActivity(intent);}}}}
}

接收端

1.全局context  清单文件记得添加application

package com.example.mepositry;import android.app.Application;public class CourserApplication extends Application {private static CourserApplication mContext;@Overridepublic void onCreate() {super.onCreate();mContext = this;}public static CourserApplication getContext() {return mContext;}
}

2.接收数据类

package com.example.mepositry;import android.content.ClipData;
import android.content.ClipboardManager;
import android.content.Context;
import android.text.TextUtils;/*** 剪切板读写工具*/
public class ClipBoardUtil {/*** 获取剪切板内容* @return*/public static String paste(){ClipboardManager manager = (ClipboardManager) CourserApplication.getContext().getSystemService(Context.CLIPBOARD_SERVICE);if (manager != null) {if (manager.hasPrimaryClip() && manager.getPrimaryClip().getItemCount() > 0) {CharSequence addedText = manager.getPrimaryClip().getItemAt(0).getText();String addedTextString = String.valueOf(addedText);if (!TextUtils.isEmpty(addedTextString)) {return addedTextString;}}}return "";}/*** 清空剪切板*/public static void clear(){ClipboardManager manager = (ClipboardManager) CourserApplication.getContext().getSystemService(Context.CLIPBOARD_SERVICE);if (manager != null) {try {manager.setPrimaryClip(manager.getPrimaryClip());manager.setPrimaryClip(ClipData.newPlainText("",""));} catch (Exception e) {e.printStackTrace();}}}
}

3.功能接收

package com.example.mepositry;import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.EditText;import android.widget.CheckBox;
import android.widget.EditText;
import android.widget.RadioButton;
import android.widget.TextView;
import android.widget.Toast;
import android.content.Intent;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.CheckBox;
import android.widget.EditText;
import android.widget.RadioButton;
import android.widget.Toast;public class MainActivity extends AppCompatActivity {private TextView textview;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.test);textview = findViewById(R.id.textview);}@Overrideprotected void onResume() {super.onResume();//获取剪切板内容getClipboardData();}private void getClipboardData() {this.getWindow().getDecorView().post(new Runnable() {@Overridepublic void run() {//把获取到的内容打印出来Log.e("YoungerHu", ClipBoardUtil.paste());textview.setText(ClipBoardUtil.paste());}});}}

end

Android实现打开手机淘宝并自动识别淘宝口令弹出商品信息功能相关推荐

  1. Android之打开继承DialogFragment对话框里面EditText获取光标并且弹出键盘把底部布局顶上去

    1 需求 打开继承DialogFragment对话框里面EditText获取光标并且弹出键盘把底部布局顶上去 2 效果爆照如下 打开这个DialogFragment 3 关键代码实现 override ...

  2. Android 打开手机淘宝,并自动识别淘口令,弹出商品信息

    前言:大家都遇到过被莫名其妙拉进一个微信群,然后群主开始发一些商品的链接,我们点击这个链接,会让我们复制一个口令(就像这个¥AzZK0hPyou5¥),当我们复制这个口 令打开淘宝会自动弹出这个商品的 ...

  3. 【Android】Android App打开手机QQ、微信等应用

    分享可能会用到一些第三方的分享,但是,有时候,我们也可以将一些文本内容复制到粘贴板,然后打开手机QQ,或者是微信手动粘贴进行分享,现在分享一下如何打开手机QQ等应用(效果可以实现,有一些注释是个人理解 ...

  4. Android:打开手机微博app,跳转至指定用户页面用于关注

    文章内容如标题 先看一下实现效果: 跳转至微博 好了,我来说一下这个怎么实现,很简单 1,搞一个监听 Tv_microblog.setOnClickListener(new View.OnClickL ...

  5. Android 锁屏,息屏情况下打开界面Activity类似微信视频通话接电话时弹出接电话的界面

    Android 锁屏,息屏情况下打开界面Activity,类似微信视频通话接电话时弹出接电话的界面 https://blog.csdn.net/yingtian648/article/details/ ...

  6. Android自定义控件:从零开始实现魅族flyme6应用市场应用详情弹出式layout

    前几天无意中发现魅族flyme6应用市场的应用详情界面非常有意思,作为一枚程序员,看到有意思的东西怎么办?当然是想办法自己也整一个啦,哈哈. 废话不多说,下面先看看魅族flyme6应用市场详情页弹出时 ...

  7. Android源码编译:任意界面屏幕边缘上滑弹出快捷操作栏【一键加速、开关控制】

    <The Fucking Source Code> 注:以下均为android源码Framework层修改. 设计实现在任意界面从屏幕边缘上滑弹出快捷操作栏,包括亮度调节.正在后台运行的程 ...

  8. android dialog隐藏虚拟按键,dialog全屏且不会弹出虚拟按键

    1.首先在res/values/styles中自定义dialog属性 @android:color/transparent true @null true false 2.在dialog的构造函数中s ...

  9. 电脑打开计算机显示远程过程调用失败,处置win7系统电脑弹出提示“远程过程调用失败且未执行”的还原步骤...

    很多人都懂一些简单的电脑系统问题的解决方案,但是win7系统电脑弹出提示"远程过程调用失败且未执行"的解决思路却鲜为人知,小编前几天就遇到了win7系统电脑弹出提示"远程 ...

最新文章

  1. 为什么找不到Flash Builder 4.6 for Eclipse插件
  2. Learning to Rank 中Listwise关于ListNet算法讲授及实现
  3. 以太坊虚拟机EVM的缺陷与不足
  4. php发送gmail,使用GMail SMTP服务器从PHP页面发送电子邮件
  5. VS生成Cordova for Android应用之Gradle
  6. BugkuCTF-MISC题想蹭网先解开密码
  7. mysql数据库安全配置规范_MySQL数据库安全配置
  8. 质数的后代c语言,(信息学奥赛辅导)程序设计试题汇编(答案10)
  9. 浅谈:云桌面在我国高校的应用前景
  10. vue的getaction_vuex的actions属性
  11. [原创]K8_C段旁注查询工具5.0 30款国外主流CMS识别+智能识别未知CMS
  12. 第一代计算机外星人,Alienware外星人品牌发展史
  13. 怎么设置CAD多段线线宽?CAD多段线线宽设置技巧
  14. Idea如何设置类头注释(图片步骤直接到位)
  15. 遇事不决,量子力学;不懂配色,赛博朋克。推荐一个Python可视化库
  16. Excel基础操作(数据分析)归纳笔记
  17. 会撸猫了不起啊?有本事自己写一个撸猫撸鱼撸飞机才是牛逼
  18. 详解非局部均值滤波原理以及用MATLAB源码实现
  19. iOS资源帖-优秀博客、iOS开发技术文、学习网站
  20. php2-3v690,php网页版文件浏览器

热门文章

  1. 需求评审会如何做才不会沦为形式主义
  2. 表单Form提交数据和PHP数据处理
  3. Lesson 13-14 How often do you exercise?
  4. 浅谈Oracle索引,看了都说好!
  5. 信道估计中的导频结构
  6. 用wifi实现细粒度的人体感知——Person-in-WiFi: Fine-grained Person Perception using WiFi
  7. 什么是内存泄露,如何避免内存泄露 C++
  8. 世界国家中英文对照表(json格式)
  9. 赵小楼《天道》《遥远的救世主》深度解析(56)芮小丹的“精神绝症”和“心之地狱”
  10. 红外额温枪方案开发技术支持