求助,刷机包不能识别apns 035

||||||||||||||||||
查看: 9|回复: 9
在线时间0 小时经验值257 最后登录注册时间帖子阅读权限50UID
大学专科, 积分 257, 距离下一级还需 143 积分
TA的每日心情郁闷 17:43签到天数: 23 天[LV.4]偶尔看看III
G币11 最后登录注册时间
两个文件都在在/system/etc目录下,拜谢了!
在线时间0 小时经验值257 最后登录注册时间帖子阅读权限50UID
大学专科, 积分 257, 距离下一级还需 143 积分
TA的每日心情郁闷 17:43签到天数: 23 天[LV.4]偶尔看看III
G币11 最后登录注册时间
自顶一下,大侠帮忙
在线时间0 小时经验值863 最后登录注册时间帖子阅读权限70UID
学士, 积分 863, 距离下一级还需 237 积分
TA的每日心情无聊 07:19签到天数: 462 天[LV.9]以坛为家II
G币3715 最后登录注册时间
你自己不会提取?& &&&
在线时间0 小时经验值257 最后登录注册时间帖子阅读权限50UID
大学专科, 积分 257, 距离下一级还需 143 积分
TA的每日心情郁闷 17:43签到天数: 23 天[LV.4]偶尔看看III
G币11 最后登录注册时间
topa118 发表于
你自己不会提取?
我的不是国行rom呀,下载又一时半会下不来,我这是无线网,很慢
在线时间0 小时经验值257 最后登录注册时间帖子阅读权限50UID
大学专科, 积分 257, 距离下一级还需 143 积分
TA的每日心情郁闷 17:43签到天数: 23 天[LV.4]偶尔看看III
G币11 最后登录注册时间
睡前一顶,请好心人帮忙
在线时间0 小时经验值89 最后登录注册时间帖子阅读权限30UID
初中生, 积分 89, 距离下一级还需 11 积分
TA的每日心情郁闷 15:25签到天数: 10 天[LV.3]偶尔看看II
G币55 最后登录注册时间
这论坛现在热心人真没有了啊!
在线时间1 小时经验值117 最后登录注册时间帖子阅读权限40UID7068097
高中生, 积分 117, 距离下一级还需 83 积分
TA的每日心情开心 01:22签到天数: 28 天[LV.4]偶尔看看III
G币60 最后登录注册时间
试试这个。先备份原来的哦。
11:36 上传
点击文件名下载附件
1.19 KB, 下载次数: 67
11:36 上传
点击文件名下载附件
25.89 KB, 下载次数: 88
在线时间9 小时经验值985 最后登录注册时间帖子阅读权限70UID
学士, 积分 985, 距离下一级还需 115 积分
TA的每日心情慵懒 15:38签到天数: 20 天[LV.4]偶尔看看III
G币46 最后登录注册时间
tlq302 发表于
试试这个。先备份原来的哦。
被挖坟了没看见么
在线时间0 小时经验值80 最后登录注册时间帖子阅读权限30UID
初中生, 积分 80, 距离下一级还需 20 积分
TA的每日心情开心 13:08签到天数: 18 天[LV.4]偶尔看看III
G币38 最后登录注册时间
在线时间0 小时经验值26 最后登录注册时间帖子阅读权限20UID
小学生, 积分 26, 距离下一级还需 24 积分
该用户从未签到
G币0 最后登录注册时间
谢谢楼主分享
浏览过的版块
Powered by刷机包怎么制作 刷机ROM制作及刷机原理浅谈
来源:安软市场
&&&&&&& Android刷机包怎么制作?Android刷机的大致流程是怎么样的?这两个原则性的问题对于刚接触刷机这个概念的同学们来说一定是首先需要解决的。小编今天正好比较有闲情逸致,下面就请各位跟着小编一起去研究、揣摩一下如何刷机以及如何制作刷机包。
  这一段时间刷了一堆ROM,安卓系列、CM、Hero、OldMos、隔壁新出的 Android2.0,反正都尝了一下鲜,手机的照相机也刷得再也启不来了(不知道什么原因,杯具)。有话说:"久病成良医",想我们折腾了这么久的刷机,也得总结总结不是,小弟不才,远没成"良医",但还是想把自己的一些认识和心得写出来,以期抛砖引玉...
  【刷机原理】
  记得第一次刷机,哪个心理紧张啊。其实紧张什么呢?就是因为不明白原理啊,只看到一堆的教程来依葫芦画瓢,生怕错了一步将手机变砖。真正使我对刷机原理有一些理解的是看了这一篇文章,说起来,刷机就是两种方法:
  一是recovery方法,就是我们平时将update.zip入到SD卡,然后alt-s的方法,这种方法是调用了recovery的方法将各种 img或文件进行复制等操作。想了解recovery的工作原理吗?我也没找到好的资料,就在这看了看recovery的一些源码。
  二是fastboot方法,这个方法其实是比较酷的方法,说白点,fastboot就是将已有的各分区映象文件(img文件,意义上类似我们对光盘做的映象文件)直接覆盖写到指定分区中,有点暴力,也有点类似我们平时操作系统的Ghost还原。
  这两种方法哪种更好,这就不好比高低了,总的来说:
  Recovery方法更简单,只需要傻瓜式的将update.zip放到SD卡的要目录下,然后进入Recovery模式alt-s就可以了,但和任何傻瓜式东西一样,他的灵活度就很小了,而且出错了也都不知道如何解决。一般来说做Rom的高手为了保证Rom的可靠性,在安装程序中都会对一些安装环境进行一些确定,而各位的手机环境又是千变万化的,Rom高手也很难考虑周全,另外,Recovery程序本身也有一些环境验证。
  fastboot方法更灵活,功能也更强大,fastboot方法不需要依赖于recovery,甚至linux底层刷坏了recovery模式都进不了的情况下也可以通过fastboot方工刷回来。fastboot模式其实是调用spl进行刷机的,所以如果刷spl坏了,fastboot模式应该也进不了,也就是砖了。fastboot方法需要各位电脑上有fastboot程序,同时手机要进入fastboot模式才可以操作,关于这些知识,请参见Google *^_^*
&&&&&& 【回头再来说说Android系统中的各分区】(可能分区这个说法不太准确)
  我了解到的Android系统中的分区有:
  hboot(我们刷的SPL就是这玩意),这个分区是最基本的引导分区(类似电脑中的BIOS),这个区坏了,差不多就变砖了,所以我们刷SPL时才要如此小心啊。
  boot,这个分区应该是linux操作系统的引导分区。
  radio,这个分区是手机的一些底层设备相关的驱动或功能程序吧,如打电话和发短信等,不同的系统版本会有不同的radio配套,我们平时刷了高版本的ROM后,如果不刷高版本的Radio就有可能导致打电话不正常之类的。
  recovery,这个分区装的就是前面提到的recovery程序了,这个刷不同的recovery版本可以带来不同的功能,有兴趣的同学可以基于recovery的源码自己编译出一个自己的recovery出来。但一般来说,刷recovery最主要的就是提Root权限。
  system,是一般发布的ROM的主要功能程序分区了,我们说的ROM功能和自带程序的定制应该就是基于这个分区的修改和编译了。
  userdata,用户数据,不说了。
  cache,缓存,一般是用来OTA升级时的缓存,我们说刷SPL可以增加程序区的空间大小就是主要将这个区的大小缩水了然后加大了程序区的分区大小。
&&&&&& 【一个典型ROM的剖析】
  我们平时升级的Rom都是打包成适合Recovery方式刷机的包。能够被Recovery程序识别并处理的包应该有一个固定的格式,我理解的一些重要的约束如下:
  1)必须是标准的zip压缩包;
  2)recovery脚本必须存入在META-INFcomgoogleandroidupdate-
  3)其它的一些证书和签名信息应该都放在META-INF下。
&&&&&& 【我们有没有可能自己定制ROM呢】
  理论上我们是可以自己定制的。
  最简单的定制应该就是拿一个现有的认为还不错的基础ROM,替换一些资源,加一些系统自带程序,然后打包发布;
  再玩高级一点,就应该自己去修改一些系统自带的程序,如汉化一些系统原始程序;
  还玩高级一点,就应该自己到android官方站点去下载android系统的源码来编译,并基于系统级的定制和移植了,如现在火热的android2.0源码编译系统移植。
  如果是简单一点的自制ROM,主要应该会要解决如下几个问题:
  1)选定一个比较好和稳定的内核和基础,就是update.zip包中的哪个boot.img,另外,system目录中大部分也是直接可用的,就可以作为自定义Rom的基础。
  2)修改系统。例如可以这样来定制的东西:systemetcapns-conf.xml,这是设置APN接入点的;systemetc hosts,这是设置Host文件的,现在有很多人用的包绑定不了GMail,就可以在这个Host文件中增加一条:74.125.93.113 android.clients.google.com (当然,这个地址能用多久也不好说)...还有什么东西要自己去定制就自己去翻看瞧瞧。
  3)Rom的重新打包签名。前文已经介绍了一个Rom包的基本结构,但完全按照这个结构打包还是不能被Recovery安装的,因为没有签名!Rom签名可以下载一个自动签名工具Auto-sign,具体到哪下,请Google。(注:Rom签名工具需要Java1.6支持,所以系统还得有 JRE1.6的环境)。
小编点评:
&&&&&&& 刷机基本流程其实都大同小异,只是需要的步骤和细节上需要的底包和工具不同而已。刷机包的结构都一致,而我们要探讨的也只是那其中的冰山一角。
2018 / 08 / 01
2018 / 08 / 01
2018 / 08 / 01
2018 / 08 / 01
2018 / 08 / 01
2018 / 08 / 01
手机客户端
微信公众号
人已预约此应用
关注"安软市场"微信公众号
玩最新好玩的手机游戏当前位置:&&
本页文章导读:
&&&&?XMPP通信开发-服务器好友获取以及监听状态变化 &&&&&& XMPP通讯开发-服务器好友获取以及监听状态变化在 XMPP通讯开发-好友获取界面设计
我们设计了放QQ的列表功能,这里我们获取我们服务器上的 数据。
这一部分知识我们可以查看smack_3_3_0/s.........&&&&? 苹果通报推送服务(APNS)一些关键特性摘要 &&&&&& 苹果通知推送服务(APNS)一些关键特性摘要
前段时间,仔细研究了APNS的文档,把一些关键的地方记录了下来,弄懂这些对于理解APNS的规则,至关重要。
1. If APNs attempts to deliver a notification bu.........&&&&? 使用signApk签名ROM包出现addDigestsToManifest异常的解决&&&&&& 使用signApk签名ROM包出现addDigestsToManifest错误的解决错误信息类似下面
java.lang.NullPointerException
at com.android.sigjava.lang.NullPointerException
at com.android.signapk.SignApk.addDigestsToManifest(SignApk.java:179)
at com.and.........
[1]XMPP通信开发-服务器好友获取以及监听状态变化
&&&&来源:&互联网& 发布时间:&
XMPP通讯开发-服务器好友获取以及监听状态变化在 XMPP通讯开发-好友获取界面设计
我们设计了放QQ的列表功能,这里我们获取我们服务器上的 数据。
这一部分知识我们可以查看smack_3_3_0/smack_3_3_0/documentation/roster.html,这个是官方的文档,介绍了我们可以使用Roster来获取,同时我们还可以注册监听器,当用户的状态信息发生变化的时候可以通知UI进行更新。
获取好友实体
Roster是一个集合,我们看一下集合中的实体是由什么组成的。
Every user in a roster is represented by a RosterEntry, which consists of:
An XMPP address (e.g.).A name you've assigned to the user (e.g. "Joe").The list of groups in the roster that the entry belongs to. If the roster entry belongs to no groups, it's called an "unfiled entry".
简单的说就是XMPP地址,用户名,用户组
public void getRoster(){
if(conn != null){
roster = conn.getRoster();
Collection&RosterEntry& entries = roster.getEntries();
for(RosterEntry entry : entries){
System.out.println(entry);
我调试的打印信息如下,可以看到格式里面分别包含用户名,XMPP地址,用户组
dfffff: dfff@zhangjie [Friends]
sdfsdf: sdf@zhangjie [Friends]
123: 123@zhangjie [Friends]
获取好友的分组
代码如下:
Collection&RosterGroup& groups = roster.getGroups();
for(RosterGroup group : groups){
System.out.println(group.getName());
终端的调试信息:
当然我们还可以添加用户组和用户同时也可以删除
createGroup
createEntry
removeEntry
监听好友状态变化
Roster还能够监听状态变化,方法如下:
* 注册监听状态变化
public void getRosterPresenceChange(){
if(roster != null){
roster.addRosterListener(new RosterListener(){
public void entriesAdded(Collection&String& addresses) {
public void entriesUpdated(Collection&String& addresses) {
public void entriesDeleted(Collection&String& addresses) {
public void presenceChanged(Presence prsnc) {
System.out.println("Change: "+ prsnc.getFrom()+" status :"+prsnc.getStatus());
将好友中的123登出:
Change: 123@zhangjie/Spark 2.6.3 status :null
然后登陆123:
Change: 123@zhangjie/Spark 2.6.3 status :在线
下一章会将界面和后台数据结合起来,实现用户列表功能
源码项目:https://github.com/jwzhangjie/IChat_PC.git
[2] 苹果通报推送服务(APNS)一些关键特性摘要
&&&&来源:&互联网& 发布时间:&
苹果通知推送服务(APNS)一些关键特性摘要
前段时间,仔细研究了APNS的文档,把一些关键的地方记录了下来,弄懂这些对于理解APNS的规则,至关重要。
1. If APNs attempts to deliver a notification but the device is offline, the notification is stored for a limited period of time, and delivered to the device when it becomes available.
假如用户手机不在线,可能没有信号或者关机吧,APNs会存储转发,等用户在线时再发送
2.Only one recent notification for a particular application is stored. If multiple notifications are sent while the device is offline, each new notification causes the prior notification to be discarded. This behavior of keeping only the newest notification is referred to as coalescing notifications.
如果用户不在线,通知会合并,只会保留最新的一条。假如你给用户发了两条通知,但用户反馈说,只收到了一条,那么很可能是用户当时不在线,APNs的合并策略生效,只保留了最近一条
3.If the device remains offline for a long time, any notifications that were being stored for it are discarded
4.The maximum size allowed for a notification payload is 256 Apple Push Notification Service refuses any notification that exceeds this limit.
这个很重要,payload,就是最后生成的那段Json,不得超过256字节。如果超过了,建议去掉一些不需要的参数,把alert,就是提示信息的字数减少
5.don’t repeatedly open and close connections. APNs treats rapid connection and disconnection as a denial-of-service attack.
6.If you send a notification that is accepted by APNs, nothing is returned.
发送成功的木有返回,只有发送失败的才会返回
7.If you send a notification that is malformed or otherwise unintelligible, APNs returns an error-response packet and closes the connection. Any notifications that you sent after the malformed notification using the same connection are discarded, and must be resent.
这条非常重要,如果有error-response,那么这条之后的通知都需要重发。有很多开源的库,在发苹果通知时都没有检测error-response,如果你不小心用了,那么用户很可能反馈“怎么没有通知啊”
8.The notification identifier in the error response indicates the last notification that was successfully sent(实际情况不是,实际上返回的是出错的那条通知的ID). Any notifications you sent after it have been discarded and must be resent.When you receive this status code, stop using this connection and open a new connection.
这是对上一条的补充,如果出错了,需要关闭当前的连接,并且重新连接再发。error-response中返回的通知ID,可以帮助我们找出哪条出错了,这样就能知道哪些需要重发了
9.When a push notification cannot be delivered because the intended app does not exist on the device, the feedback service adds that device’s token to its list.
APNS的feedback service会返回那些已经卸载的设备的token--device_token。存储这些token,下次就不用再给他们发了,可以节省点资源。需要注意的是:feedback的接口读取一次,APNS就会清空它的列表,下次再读取时,返回的就是这两次读取之间这段时间新产生的device_token。
只有把这些搞清楚,才方便我们理解苹果推送的规则,知道自己推送上的一些不足之处。搞懂这些规则后,我自己封装了个Java的类库,已经开源并放到Github上了,下一篇文章奉上详情。
liangcoder
研究的很仔细
[3] 使用signApk签名ROM包出现addDigestsToManifest异常的解决
&&&&来源:&互联网& 发布时间:&
使用signApk签名ROM包出现addDigestsToManifest错误的解决错误信息类似下面
java.lang.NullPointerException
at com.android.sigjava.lang.NullPointerException
at com.android.signapk.SignApk.addDigestsToManifest(SignApk.java:179)
at com.android.signapk.SignApk.main(SignApk.java:325)napk.SignApk.addDigestsToManifest (
SignApk. java :179)
at com.android.signapk.SignApk.main(SignApk.java:325)
这个问题来源于压缩包在复制移动时可能在包里产生一个和压缩包同名的0KB文件
本文出自 “清源教育” 博客,转载请注明此处,谢谢!欢迎登录清源教育官网,查看更多视频教程。
最新技术文章:
特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!
(C)9IT.COM,E-mail:www_169it_com#163.com(请将#改为@)安卓刷机包ROM制作教程_百度文库
您的浏览器Javascript被禁用,需开启后体验完整功能,
享专业文档下载特权
&赠共享文档下载特权
&100W篇文档免费专享
&每天抽奖多种福利
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
安卓刷机包ROM制作教程
总评分4.3|
用知识赚钱
&&我们通常会从网上下载安卓手机刷机包刷机,刷机后又感觉不太满意,那就让我们一起来制作自己的刷机包吧。
阅读已结束,下载本文需要
定制HR最喜欢的简历
下载文档到电脑,同时保存到云知识,更方便管理
加入VIP
还剩3页未读,
定制HR最喜欢的简历
你可能喜欢刷机包文件解释1_百度文库
您的浏览器Javascript被禁用,需开启后体验完整功能,
享专业文档下载特权
&赠共享文档下载特权
&100W篇文档免费专享
&每天抽奖多种福利
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
刷机包文件解释1
你可能喜欢}

我要回帖

更多关于 apns development ios 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信