- 浏览: 98251 次
- 性别:
- 来自: 南京
最新评论
-
uinico:
有没有完整的例子啊,这个IClient和aidl中怎么定义呢? ...
android aidl 主进程子进程间数据相互传递
文章列表
android中进程间的通信对与大量的接口的调用的时候,一般是子进程调用主进程的方法,但是主进程主动调用子进程的方法,一直没找到相关的资料,现在项目的需要,与同事研究出来了,直接上代码:
在主进程中实现如下的aidl的代码
package com.sunhb.main.aidl;
import com.sunhb.main.aidl.IClient;
interface IMain
{
void regesiterClient(IClient iclient);
}
这个是在主进程中实现
package com.sunhb.main.aidl;
interface IClient
...
先是在setContextView之前设置界面的样式
requestWindowFeature(Window.FEATURE_PROGRESS);
setProgressBarVisibility(true);
每次更新进度条的时候调用
setProgress(size*100);
setSecondaryProgress(size*100);
注意这里的设置进度条的时候那个里面填写的参数的范围是重0到10000
在android中有时我们要实现下拉刷新的功能,我在前日人的基础上自己实现了一个。
其实实现的原理很简单,显示在listView的headerView中添加一个要刷新的进度条显示设置这个view影藏,在你拖动listView的时候当你托到最上面的时候,进行判断显示,影藏进度条,在显示进度条后你松开手势的时候根据不同的状态实现页面的操作。不多说了,实现的代码如下:
显示声明一个显示进度条的view的布局文件:head.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout ...
android 进程的通信很多,可以用intent传递数据,可以实现数据的共享,可以通过aidl实现进程间的通信,一般如果进程间需求方法调用的时候就要实现aidl
这个说明一下aidl进程间的对象的传递。
我们先是申明一个aidl的接口的文件IWorkFlowPlugin.aidl在里面实现一个对象传递的方法,
interface IWorkFlowPlugin
{
WorkFlowBean getWorkFlowBean();
}
声明一个WorkFlowBean的java的文件,实现Parcelable接口
public class WorkFlowBean implements P ...
midir /root/.config/chrom_dir
在终端中运行(或者设置属性命令为)/opt/google/chrome/google-chrome %U --user-data-dir=/root/.config/chrom_dir
android中的进程间的通信很多,下面粗略的讲解一下如何实现AIDL的进程间的通信如下所示:服务器端书写如下新建一个工程,包名:com.test
在该包底下建一个aidl的文件,这里我命名为IService.aidl 在文件中书写一个借口如下:
interface IService
{
String getValue();
}
这时在工程底下gen包中将生成一个IService.java的文件。在com.test的包底下声明一个服务,在类中声明一个类IServiceImpl 继承IService.java中的类Stub实现一个方法getValue(),
在配置文件中注册Service 添加一 ...
android.permission.ACCESS_CHECKIN_PROPERTIES
允许读写访问”properties”表在checkin数据库中,改值可以修改上传( Allows read/write access to the “properties” table in the checkin database, to change values that get uploaded)
android.permission.ACCESS_COARSE_LOCATION
允许一个程序访问CellID或WiFi热点来获取粗略的位置(Allows an application to acce ...
网站上关于基于sip的java编程实例实在是太少了,这个严重影响了sip的传播和发展,所以我上传了这个小实验,让大家参考下。
在做实验前,我们需要一些东西:
我的环境:
XP
Eclipse
需要包:
这个需要在网上自己找,或者hi我,我也可以给你们哈。----百度账号:时光可见
好了,现在看程序了哈,主要是三个文件。
MessageProcessor.java :
public interface MessageProcessor
{
public void processMessage(String sender, String message);
public v ...
String ADD_SHORTCUT_ACTION 动作:在系统中添加一个快捷方式。 String ALL_APPS_ACTION 动作:列举所有可用的应用。输入:无。 String ALTERNATIVE_CATEGORY 类别:说明 activity 是用户正在浏览的数据的一个可选操作。 String ANSWER_ACTION 动作:处理拨入的电话。 String BATTERY_CHANGED_ACTION 广播:充电状态,或者电池的电量发生变化。 String BOOT_COMPLETED_ACTION 广播:在系统启动后,这个动作被广播一次(只有一次)。 String BROW ...
1、 把背景图片push到SDCard中
adb push MM-320x480。png /sdcard/
确认是否已经存在了,可以到SDCard看一下:
adb shell
cd sdcard
ls
public static final String TAG = "WallpaperActivity";
/** * 背景图片名称 */
private static final String FILE_NAME = "MM-320x480.png";
/** * @see android.app.Activity#o ...
主要给大家介绍如何加载界面的图片。正如前面AbstractBoard类的代码中看到的,当程序需要创建N个Piece对象时,程序会直接调用ImageUtil的getPlayImages()方法去获取图片,该方法将会随机从res\drawable-mdpi目录下取得N张图片。
为了让getPlayImages()方法从res\drawable-mdpi目录下随机取得N张图片,程序的实现思路可分为如下几步:
1、通过反射来获取R.drawable的所有Field(Android的每张图片资源都会自动转换为R.drawable的静态Field),并将这些Field值添加到一个L ...
// 判断网络是否正常
public static boolean isNetworkAvailable(Context context) {
ConnectivityManager connectivity = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
if (connectivity == null) {
return false;
} else {
NetworkInfo info = connectivity.getActiveNetworkInfo();
if (info ...
一、用.rar打开apk文档,得到文档结构图如下所示
二、将classes.dex文件解压出来,然后使用工具反编译成.jar文件,再进一步反编译出java文件
1.在cmd下进入dex2jar.bat所在路径,然后输入“dex2jar.bat XXX”,XXX指的是你要反编译的apk中的classes.dex文件所在路径及名称,比如:我的dex2jar.bat在D:\Android\apk_decode\dex2jar-0.0.7-SNAPSHOT路径下, classes.dex在D:\Android下,所以: 你进入dex2jar.bat路径下后,输入dex2jar.bat ...
singleInstance模式解决了这个问题(绕了这么半天才说到正题)。让这个模式下的Activity单独在一个task栈中。这个栈只有一个Activity。导游应用和google地图应用发送的intent都由这个Activity接收和展示。
这里又有两个问题:
•如果是这种情况,多个task栈也可以看作一个应用。比如导游应用启动地图Activity,实际上是在导游应用task栈之上 singleInstance模式创建的(如果还没有的话,如果有就是直接显示它)一个新栈,当这个栈里面的唯一Activity,地图Activity 回退的时候,只是把这个栈移开了,这样就看到导游应用刚才的Activ ...
在android应用的开发中有时会activity之间的重复的跳转,本生的activity之间的跳转,如果没有特别的生命activity的加载的模式,默认是standard模式,这样每次跳转的时候都会生明一个新的实例进入栈中,这样就会有很多相同的实例;singleTop基本和standard类似,区别在于singleTop要求如果创建intent的时候栈顶已经有要创建的Activity的实例,则将intent发送给该实例,而不发送给新的实例。singleTop模式,可用来解决栈顶多个重复相同的Activity的问题。 singleTask singleTask模式和后面的singleInstan ...