
java,kotlin和c++都可以写app,android sdk会把代码联通数据和资源文件编译成apk,apk里包涵android应用里的所有内容,是android设备用于安装应用的归档文件
每个android应用都出于各自的沙盒里,并且受android安全功能的保护,
android操作系统是多用户linux系统,每个应用是一个不同的用户
系统会为每个应用分配一个唯一的linux用户id,此id仅由系统使用,应用并不知道,系统会为应用里的所有文件设置权限,让只分配给改应用的用户id才可以访问这些文件
每个进程有自己的dlivik虚拟机,所以应用代码独立于其他应用进行
默认情况,每个应用在自己的linux进程里运行,android系统会在需要执行任何应用组件的时候启动该进程,在不需要的时候关闭该进程
android系统实现了最小权限原则,每个应用指南访问其工作需要的组件,不能访问其他组件,可以创建安全的环境,在此环境里应用无法访问其为获取权限的系统部分,但是依然可以通过一些途径与其他应用共享数据和访问系统服务:
让两个应用共享同一个linux用户id,次情况下,两者可以访问彼此的文件,
在app里使用plus.push.getClientInfo().clientid获取的clientid与个推接口获取cid是不同的
https://blog.csdn.net/Androilly/article/details/42776841
只在myAPPlication里初始化是不够的的,还要在mainactivity里初始化,然后检查一下manifext.xml,看看权限是否都添加了
clientid的获取:1.可以看一下个推api文档里获取透传消息里的receiver示例,2.在个推服务器已经生成了clientid的情况可以用getclientid方法获取
调用接口推送返回appiderror的话,,可能是换了appid或者那别的appid的配置文件配置了当前应用,之后修改appid等参数导致的,这样需要删除手机sd卡根目录下的libs文件夹之后卸载重装
调接口返回注册错误:看一下mastersecret和appsecret有没有搞混,实际需要的是在平台等级之后分配的appsecret,保证每个参数后面没有空格,看看编码是不是utf-8
关于如何点击通知启动到指定的页面
服务端调用notificationtemplate和transmissiontype设置为2,客户端在获取透传消息的地方(receiver的GET_MSG_DATA)处写跳转代码
推送transmissiontemplate之后不相容,客户端直接启动,如何控制,服务端推送的时候transmissiontype设置为2之后就不会直接启动客户端了
个推开发平台上特定用户推送时上传的用户列表的格式(上传的是txt文件,一行一个clientid)
个推开放平台上特定用户推送时上传的用户列表的格式
上传的是txt文件,一行一个clientid
平台上推送通知页面给ios容易推送失败的话,平台推送通知页面的时候没有做ios推送支持,可以通过透传消息页面进行推送测试
ios集成的时候,出现未找到应用程序的aps-environment权利字符
基本解决方式,1.先确认在apple dev portal里吧相应的appid做好,之后在profile配置里点configure,把sandbox或product的push,之后把这个profile下载下来,装到手机和xcode里,这里注意,一定要先把push的功能在configure里配置好之后下载这个文件,更新手机和xcode
cid是个推用于获取手机和设备的唯一标识,登录的时候需要作为
https://www.cnblogs.com/cxsy/p/7911668.html
个推获取cid就是为了根据用户的cid进行单推