python密码传参有特殊字符如何解决_am start的总结,-d参数的总结,以及python中传递内容包含中文及特殊字符的解决方案...
一、am start的内容的整理
主要包含以下内容:am start的常规操作及参数的含义,-d 参数的含义,以及如何在APK中设置参数获取
使用命令如下:adb shell am start -n com.test.myapp/.Activity.TestActivity -d '%s'
在python中具体调用的时候,会用""将内容全部包裹起来,然后再通过%变量去替换'%s'
例如:
cmd3 = "adb shell am start -n com.ganji.testwebview/.Activity.OriginalTestActivity -d '%s'" %url
这里-d就是用来传递给APP的参数,这个-d传递的就是intent的数据,
那么在APK中是如何接收这个-d后面的参数的呢?-d这个参数后面的内容就代表是通过Intent传递的:
具体语句为:urltext=getIntent().getDataString();
关于getIntent的一个具体用法,怎么获取不同类型的数据见下方地址:http://blog.csdn.net/flowingflying/article/details/9364799
具体的am start的一个详解地址如下:
二、python传递数据包含中文的问题以及特殊字符的问题
在通过adb shell将包含了&的url的内容传递给APK的时候,会出现无法跳转的情况,原因是在shell中&是一个特殊字符,因此要通过一个单引号'将&包裹起来,刚开始的时候,在一中的adb命令为:
adb shell am start -n com.test.myapp/.Activity.TestActivity -d %s
后来增加了'%s'
测试之后,发现增加了''单引号之后,url的整个内容都能够完整传递过去,但是这仅限于windows下,在linux下因为&是一个特殊符号,所以通过adb shell am start的方式启动Activity之后将url传递过去,会出现截取url的情况,比如说:https://baidu.com/1243&w3fs&jhre=12,就会截取url到第一个&那里,这样就会导致想要加载的url加载不全,那么得到的结果也不正确,因此针对这样的情况,而且因为存在&很容易出现am start失败的情况,经常Activity就启动失败,但是如果不带这个参数就基本不会失败,因此修改成了:
通过读取sdcrad中的文件,将内容设置成EditText的内容,那么这个sdcard中的内容就需要提前将本次url的内容先写入到文件中,再将这个包含url内容的文件push到sdcard中,通过这种方式修改后,就没有出现am start失败的情况了,而且url的内容能够显示完全,并且通过正确的url请求到正确的信息
备注:在往文件中写url的内容的时候,需要注意打开文件的方式,建议通过'wb'的二进制方式打开,之前通过'w'直接打开,存在中文及特殊字符的情况下,会导致因为编码方式的原因而提示异常导致失败,因此改成二进制的方式进行写文件
另外,就是url中存在中文的情况也会因为编码的方式导致出现问题,用了一个完全通用的方式进行处理:
import sys
reload(sys)
sys.setdefaultencoding('utf8')
因为使用的是python27,就在添加以上set语句之前先通过下方的语句测试了一下:
print sys.getdefaultencoding(),结果是ascii
加上以上语句之后:结果是utf8
其中utf-8和utf8的区别是什么呢?具体见下方url:http://blog.mimvp.com/2014/12/difference-between-python-utf-8-and-utf8/
python密码传参有特殊字符如何解决_am start的总结,-d参数的总结,以及python中传递内容包含中文及特殊字符的解决方案...相关推荐
- python密码传参有特殊字符如何解决_python生成带特殊字符的密码
在日常运维中,如果涉及到用户管理,就一定会用到给用户设置密码的工作,其实吧,平时脑子里觉得设置个密码没什么,但要真让你随手敲一个12位带特殊字符的随机密码,也是很痛苦的事,如果让你敲10个这样的随机密 ...
- python密码传参有特殊字符如何解决_Python为什么我在RSA加密中有特殊字符
您好我正在使用Pyzmq在 python中编写应用程序,用于PC客户端和覆盆子服务器之间的通信.我需要PC客户端将加密密码发送到raspberry服务器.我将发布我的代码的RSA部分,所以如果您需要更 ...
- python密码传参有特殊字符如何解决_无法在python selenium scrip中使用带有特殊字符“$”的密码...
示例脚本:# -*- coding: utf-8 -*- from selenium import webdriver import os #credentials USERNAME = '##### ...
- python密码传参有特殊字符如何解决_如何通过请求Python packag传递密码中的特殊字符''...
我已经在stackoverflow上看到过同样的问题,但没有找到任何有效的答案: 我使用Requests包连接到CISCO APIC控制器,通过restapi收集json/xml配置 除了用于连接AP ...
- assert函数_悉数Python函数传参的语法糖
TIOBE排行榜是程序开发语言的流行使用程度的有效指标,对世界范围内开发语言的走势具有重要参考意义.随着数据挖掘.机器学习和人工智能相关概念的风行,Python一举收获2018年年度语言,这也是Pyt ...
- Python 函数传参详解
Python位置传参 位置传参也称为必备参数,必须按照正确的顺序将参数传递到函数中,定义函数时的参数与实际传入的参数数量必须保持一致 正常如下: def par(A,B):return A+B pri ...
- python 元组传参 *args 字典传参 **kwargs 的用法
python 元组传参 *args 字典传参 **kwargs 的用法 # 元组参数 def func_arg(*args):print("args:", args) func_a ...
- java调用python,传参json字符串,含中文传参
java调用python,传参json字符串 python脚本内容(test.py) # -*- coding: utf-8 -*-def main(input):return input java调 ...
- python脚本传参
在Linux环境调用python脚本,需要从外部传参,python提供了两种传参方式: 1.顺序传参 import sys 它封装了与python解释器相关的数据,在脚本里面使用使用参数的顺序必须和传 ...
最新文章
- error: unbound prefix. Message{kind=ERROR, text=error: unbound prefix., sources=[E:\work\me\fragment
- 背景图自适应屏幕居中显示,且不变形
- localStorage、sessionStorage、Cookie的区别及用法
- nodejs在cmd中运行js_如何在nodejs里调用执行系统命令
- View4.5测试参考文档7--View Administrator安装、配置、创建桌面池
- DCMTK:从DICOM封装的PDF存储对象中提取PDF文件
- Request load debugging - ERP side
- 推荐两个检索和分类小工具Carrot2 OSS
- 【转】SVN各种颜色状态
- 现在学SEO还有用吗;还能用到SEO吗;
- 自动驾驶 11-2: 激光雷达传感器模型和点云 LIDAR Sensor Models and Point Clouds
- 基本计算机编程术语,计算机编程术语,你记住了吗?
- 安卓手机作为文件共享服务器,安卓手机的文件共享应该怎么操作?
- 暧昧散场,穿过你的黑发我的手968
- 图像识别毕业设计 人脸识别与疲劳检测系统设计与实现 - python opencv
- Spring IOC和DI 的学习资料(附带大师英文文章)
- Eclipse安装STS
- matlab 解函数方程,MATLAB程序设计教程(7)—MATLAB解方程与函数极值
- python的书哪个好知乎_python书籍推荐 知乎红色有哪些
- html5 metro 手机,方块世界:Metro UI简单看