当前位置:  编程技术>移动开发
本页文章导读:
    ▪init.rc脚本的特征和dhcpcd的程序特性导致内存耗尽        init.rc脚本的特性和dhcpcd的程序特性导致内存耗尽 init.rc脚本的特性和dhcpcd的程序特性导致内存耗尽init进程会周期性检查所有由init启动的service服务进程, 当init通过PID发现由init创建的该服务.........
    ▪ 用widget接收短信并经过邮件转发        用widget接收短信并通过邮件转发 发送邮件: function ActiveSendEmailMessage(eSite,eBody,eSubject,eAddress){ var msg = Widget.Messaging.createMessage(Widget.Messaging.MessageTypes.EmailMessage); msg.addAddress("destination",eSite); .........
    ▪ preference 中起动activity       preference 中启动activity 思路比较简单 可以去preferenceActivity中的某个preference set它的onClickListener getPreference(key).setOnClickListener(l); 里面发一个intent startActivityForResult(Intent i,int requestCode){....} .........

[1]init.rc脚本的特征和dhcpcd的程序特性导致内存耗尽
    来源: 互联网  发布时间: 2014-02-18
init.rc脚本的特性和dhcpcd的程序特性导致内存耗尽
init.rc脚本的特性和dhcpcd的程序特性导致内存耗尽

init进程会周期性检查所有由init启动的service服务进程, 当init通过PID发现由init创建的该服务进程的PID不存在之后(被手工kill掉或者程序fork()之后,关闭了父进程),那么init进程会再次启动[luther.gliethttp].

原init.rc脚本
...
service dhcpcd /system/bin/dhcpcd eth0
    disabled
...
运行一段时间之后,通过ps发现dhcpcd一直在增加,最后耗尽了所有内存,使得系统运行缓慢.

原因:在于dhcpcd程序使用了fork(),然后关闭掉父进程,子进程进入daemon,但是android的init程序周期性检查所有 service发现,被init创建出来的service的PID消失了,于是将再次start service启动dhcpcd,其实这时dhcpcd是以子进程的身份运行在daemon后台,所以导致dhcpcd程序一直持续不断的被init进程创建.

临时:
修改后脚本
...
service dhcpcd /system/bin/dhcpcd eth0
    disabled
    oneshot //表示init进程仅对该service启动一次[luther.gliethttp]
...
转:http://blog.chinaunix.net/u1/38994/showart_1209634.html

    
[2] 用widget接收短信并经过邮件转发
    来源: 互联网  发布时间: 2014-02-18
用widget接收短信并通过邮件转发

发送邮件:
function ActiveSendEmailMessage(eSite,eBody,eSubject,eAddress){
var msg = Widget.Messaging.createMessage(Widget.Messaging.MessageTypes.EmailMessage);
msg.addAddress("destination",eSite);
msg.body = eBody;
msg.subject = eSubject;
Widget.Messaging.sendMessage(msg);
}
--------------------
接收短信并通过邮件转发
01.function set()  
02.{  
03. Widget.Messaging.onMessageArrived =function messgeCallBack(msg)  
04. {  
05.  var forwardStr = "";  
06.  if(msg.messageType == undefined || msg.messageType == null)  
07.  {  
08.   forwardStr += msg.body;  
09.  }  
10.  else 
11.   return;  
12.  ActiveSendEmailMessage(forwardStr);  
13. };  
14.}  
15. 
16.function ActiveSendEmailMessage(forwardStr)  
17.{  
18.   var eSite = document.getElementById("EmailSite").value;  
19.   var msg =                Widget.Messaging.createMessage(Widget.Messaging.MessageTypes.EmailMessage);  
20.   msg.addAddress("destination", eSite);  
21.   msg.body = forwardStr;  
22.   var subj = forwardStr;  
23.   if(forwardStr.length>10)  
24.   {  
25.    subj = forwardStr.substring(0,10)+"...";  
26.   }  
27.   msg.subject = subj;  
28.   Widget.Messaging.sendMessage(msg);  
29.} 


    
[3] preference 中起动activity
    来源: 互联网  发布时间: 2014-02-18
preference 中启动activity
思路比较简单 

可以去preferenceActivity中的某个preference set它的onClickListener

getPreference(key).setOnClickListener(l);

里面发一个intent  startActivityForResult(Intent i,int requestCode){....}

 

 覆盖onResult(int requestCode,int resultCode,Intent intent){

    //取返回结果

}

 

 


    
最新技术文章:
▪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