当前位置:  编程技术>移动开发
本页文章导读:
    ▪删除system/app下的apk      要删除系统system/app目录下的的APK,由于/system/app目录默认是只读,所以,想要删除这些APK,必须首先获得system目录的删除权限。通过如下步骤删除system/app下的apk文件:1. 连接设备。如果是手.........
    ▪ios开发: APNS消息推送实现      网上关于ios消息推送机制(APNS)的实现、原理介绍很多,但都零零散散。昨天经过自己的多番尝试,终于成功实现了推送过程。在此,贴上自己整理的印象笔记内容,包括自己实现过程中受.........
    ▪CAsysncSocket 之--udp工具--AsyncUdpSocket 用法      ============================================================ 博文原创,转载请声明出处 蓝岩--移动互联网老兵 ============================================================ 详解iPhone 下AsyncSocket网络库编程是本文要介绍的.........

[1]删除system/app下的apk
    来源:    发布时间: 2013-11-15

要删除系统system/app目录下的的APK,由于/system/app目录默认是只读,所以,想要删除这些APK,必须首先获得system目录的删除权限。通过如下步骤删除system/app下的apk文件:

1. 连接设备。如果是手机则需要打开usb调试,设置--》应用程序--》开发--》USB调试。如果是其他设备可能还需要:adb connect 目标设备的IP地址(192.168.1.1)。adb connect 用来连接设备。

2. 打开cmd,进入设备。输入命令:adb shell 

3. #mount

此命令用来查看挂载情况。

你将会看到如下信息:

C:\Documents and Settings\Administrator>adb shell
root@android:/ # mount
mount
rootfs / rootfs rw 0 0
tmpfs /dev tmpfs rw,nosuid,relatime,mode=755 0 0
devpts /dev/pts devpts rw,relatime,mode=600,ptmxmode=000 0 0
proc /proc proc rw,relatime 0 0
sysfs /sys sysfs rw,relatime 0 0
/dev/block/mtdblock3 /system yaffs2 ro,relatime 0 0
/dev/block/mtdblock4 /param yaffs2 rw,relatime 0 0
/dev/block/mtdblock5 /dtv yaffs2 rw,relatime 0 0
/dev/block/mtdblock6 /atv yaffs2 rw,relatime 0 0
/dev/block/mtdblock8 /data yaffs2 rw,nosuid,nodev,relatime 0 0
none /acct cgroup rw,relatime,cpuacct 0 0
tmpfs /mnt/asec tmpfs rw,relatime,mode=755,gid=1000 0 0
tmpfs /mnt/obb tmpfs rw,relatime,mode=755,gid=1000 0 0
none /dev/cpuctl cgroup rw,relatime,cpu 0 0
/dev/block/mtdblock7 /cache yaffs2 rw,nosuid,nodev,relatime 0 0
none /proc/bus/usb usbfs rw,relatime,devmode=777,busmode=777,listmode=777 0 0

找到system的挂载信息,如红色字体所示。

 

然后输入下面命令:

#mount -o remount rw /dev/block/mtdblock3 /system yaffs2 ro,relatime 0 0

4. 退出adb

输入命令exit:root@android:/ # exit

然后执行删除apk操作。

5. 依次输入以下命令:

adb shell

cd /system/app

rm  XXX.apk

XXX.apk就是要删除的apk。

 

总结:先获得system操作权限,然后再删除文件。因为system默认是只读,不允许删除文件

原文地址:http://blog.csdn.net/songqingxi/article/details/7706715

本文链接


    
[2]ios开发: APNS消息推送实现
    来源:    发布时间: 2013-11-15

网上关于ios消息推送机制(APNS)的实现、原理介绍很多,但都零零散散。
昨天经过自己的多番尝试,终于成功实现了推送过程。
在此,贴上自己整理的印象笔记内容,包括自己实现过程中受益的内容链接,和遇到点呃问题及解决方法。
php下的推送实现参见另一篇博文:【正在撰写中】

1.APNS原理、配置开发者账户以开启APNS服务、获取发送消息的认证证书的实现。(文章末尾的链接质量低劣,不建议阅读)
 

2.手机端获取token的代码实例下载【在此之前,需要参照上文步骤,激活appid的apns功能】
 

实现过程中,屡屡遇到Error:
Error: Error Domain=NSCocoaErrorDomain Code=3000 UserInfo=0x1179f0 "未找到应用程序的“aps-environment”的权利字符串"
原因是工程中的profile不正确。
解决办法:
     确认你在apple dev portal里面把相应appid做成类似com.company.appname这样子(如果是xxxx.*则可能匹配错误等),激活pans功能后,再revoke这个profile,并下载安装到手机和xcode里面去(这里要注意,一定要先把push的功能在configure里面配置好了然后再download这个profile,更新手机和Xcode,如果你记不清楚了到底是先download还是先configure的,那么一个最保险的办法就是先configure好了,然后到profile那里点击modify,把profile改成一个新的名字,把这个新的profile安装到手机和Xcode里面,这样就没有问题了)
    笔者在这个问题上花了大半天时间,根据后来成功实现后的总结,原因在于没有一个干净的测试环境。如果你觉得自己按照以上方法执行后,问题依旧,很大的可能性是并没有完全的依照以上步骤来执行。

3.消息发送端的代码实例 PushMeBaby:【需要参照上文步骤,在开发机生成钥匙对,并获得APNS的证书,置于消息发送的工程中】
 记得将制作证书时生成的.cer文件替换到项目中(当然要替换下代码中.cer的文件名啦~),并替换代码中的devicetoken为之前手机获得的token。

笔者的电脑装的是Mount Lion 10.8.2, 64位机。运行如上程序时,报错:
The run destination My Mac 64-bit is not valid for Running the scheme 'PushMeBaby'.
解决办法:
     修改项目的PROJECT和TARGET的BUILD SETTING中的architecture为64位,base sdk为10.8,clean后重新运行,则OK。

本文链接


    
[3]CAsysncSocket 之--udp工具--AsyncUdpSocket 用法
    来源: 互联网  发布时间: 2013-11-15
============================================================
博文原创,转载请声明出处
蓝岩--移动互联网老兵
============================================================
详解iPhone 下AsyncSocket网络库编程是本文要介绍的内容,iphone的标准推荐CFNetwork C库编程.但是编程比较烦躁。在其它OS往往用类来封装的对Socket函数的处理。比如MFC的CAsysncSocket.在iphone也有类似于开源项目.cocoa AsyncSocket库

官方网站:http://code.google.com/p/cocoaasyncsocket/

这里只上例子,自己在项目中使用的,绝对能使用,如果有疑问,欢迎留言讨论。

将AsyncUdpSocket.h AsyncUdpSocket.m 导入到你的工程中,

在自己建立的util中,加入一下代码

#pragma mark udp
-(void)sendSearchBroadcast{
    NSString* bchost=@"255.255.255.255"; //这里发送广播
    [self sendToUDPServer:@"hello udp" address:bchost port:BCPORT];
}
-(void)sendToUDPServer:(NSString*) msg address:(NSString*)address port:(int)port{
    AsyncUdpSocket *udpSocket=[[[AsyncUdpSocket alloc]initWithDelegate:self]autorelease]; //得到udp util
    NSLog(@"address:%@,port:%d,msg:%@",address,port,msg);
    //receiveWithTimeout is necessary or you won't receive anything
    [udpSocket receiveWithTimeout:10 tag:2]; //设置超时10秒
    [udpSocket enableBroadcast:YES error:nil]; //如果你发送广播,这里必须先enableBroadcast
    NSData *data=[msg dataUsingEncoding:NSUTF8StringEncoding];
    [udpSocket sendData:data toHost:address port:port withTimeout:10 tag:1]; //发送udp
}
//下面是发送的相关回调函数
-(BOOL)onUdpSocket:(AsyncUdpSocket *)sock didReceiveData:(NSData *)data withTag:(long)tag fromHost:(NSString *)host port:(UInt16)port{
    NSString* rData= [[[NSString alloc] initWithData:data encoding:NSUTF8StringEncoding]
                     autorelease];
    NSLog(@"onUdpSocket:didReceiveData:---%@",rData);  
    return YES;
}
-(void)onUdpSocket:(AsyncUdpSocket *)sock didNotSendDataWithTag:(long)tag dueToError:(NSError *)error{
    NSLog(@"didNotSendDataWithTag----");
    
}
-(void)onUdpSocket:(AsyncUdpSocket *)sock didNotReceiveDataWithTag:(long)tag dueToError:(NSError *)error{
    NSLog(@"didNotReceiveDataWithTag----");
}
-(void)onUdpSocket:(AsyncUdpSocket *)sock didSendDataWithTag:(long)tag{
    NSLog(@"didSendDataWithTag----");
}
-(void)onUdpSocketDidClose:(AsyncUdpSocket *)sock{
    NSLog(@"onUdpSocketDidClose----");
}


ok,试一下吧




        
作者:shencaifeixia1 发表于2013-1-4 20:20:49 原文链接
阅读:17 评论:0 查看评论

    
最新技术文章:
▪Android开发之登录验证实例教程
▪Android开发之注册登录方法示例
▪Android获取手机SIM卡运营商信息的方法
▪Android实现将已发送的短信写入短信数据库的...
▪Android发送短信功能代码
▪Android根据电话号码获得联系人头像实例代码
▪Android中GPS定位的用法实例
▪Android实现退出时关闭所有Activity的方法
▪Android实现文件的分割和组装
▪Android录音应用实例教程
▪Android双击返回键退出程序的实现方法
▪Android实现侦听电池状态显示、电量及充电动...
▪Android获取当前已连接的wifi信号强度的方法
▪Android实现动态显示或隐藏密码输入框的内容
▪根据USER-AGENT判断手机类型并跳转到相应的app...
▪Android Touch事件分发过程详解
▪Android中实现为TextView添加多个可点击的文本
▪Android程序设计之AIDL实例详解
▪Android显式启动与隐式启动Activity的区别介绍
▪Android按钮单击事件的四种常用写法总结
▪Android消息处理机制Looper和Handler详解
▪Android实现Back功能代码片段总结
▪Android实用的代码片段 常用代码总结
▪Android实现弹出键盘的方法
▪Android中通过view方式获取当前Activity的屏幕截...
▪Android提高之自定义Menu(TabMenu)实现方法
▪Android提高之多方向抽屉实现方法
▪Android提高之MediaPlayer播放网络音频的实现方法...
▪Android提高之MediaPlayer播放网络视频的实现方法...
▪Android提高之手游转电视游戏的模拟操控
 


站内导航:


特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

©2012-2021,,E-mail:www_#163.com(请将#改为@)

浙ICP备11055608号-3