
需要使用隐式意图Intent来启动。
具体实现代码:
Intent intent = new Intent("注册的Action");
startActivity(intent); 即可启动一个Activity,和调用系统相机拍照,调用文件管理选择文件同一个写法
通过 PackageManager 获取本机安装的应用,PackageManager可以得到包名,程序名和icon等应用信息,然后通过包名来启动,代码如下:
PackageInfo pi;
try {
pi = getPackageManager()getPackageInfo(packageName, 0);
Intent resolveIntent = new Intent(IntentACTION_MAIN, null);
resolveIntentsetPackage(pipackageName);
PackageManager pManager = getPackageManager();
List apps = pManagerqueryIntentActivities(
resolveIntent, 0);
ResolveInfo ri = appsiterator()next();
if (ri != null) {
packageName = riactivityInfopackageName;
String className = riactivityInfoname;
Intent intent = new Intent(IntentACTION_MAIN);
ComponentName cn = new ComponentName(packageName, className);
intentsetComponent(cn);
startActivity(intent);
}
} catch (NameNotFoundException e) {
eprintStackTrace();
}
使用DataBinding,布局最外层一定是<layout>标签,可以没有<data>标签。
如果是使用<data>标签,那么一般用来定义变量,或者导包。
如果是在<data>标签中导包,也是使用<import>标签,通过<import>标签的type属性引入对应的类,可以使用alias属性定义一个别名,也可以不使用alias定义别名,如果是使用了alias定义别名,则使用这个导入的类的时候,就可以直接使用别名,如果没有使用alias,则使用的时候,直接使用类名。
这里就可以直接调用对应的类的方法,然后返回对应的值进行使用,比如通过用户信息user进行一定的逻辑判断返回一个boolean值,交给自定义的View的bindingAdapter("isVisible")判断View的显示与否
单向数据绑定,其实就是刷新对应的实体或者属性,则刷新视图。但是视图的变化并不会更新实体或者对应的变量的值
实体或者变量刷新,会更新视图;而视图变化也会更新对应的实体或者变量
因为viewModelusername初始没有值,所以在刚进入页面的时候,会没有任何显示,那么可以使用default显示默认值
如果是直接写字符串,那么就是default=用户名这样的写法,不需要加眼号
也可以设置默认的visibility,比如:
数学 + - / %
字符串连接 +
字符串拼接的用法,其实就是与正常拼接一样
逻辑 && ||
二进制 & | ^
一元运算 + - ! ~
三元运算 :
判断是否为空 (例:android:text="@{ username userdefaultName}",相当于android:text="@{ username !=null username : userdefaultName}")
位运算 >> >>> <<
比较 == > < >= <=
instanceof
方法调用
方法的调用,采用@{()->viewModellogin()}的方式,类似于lambda表达式
前面的()表示参数
变量引用
获取数组、集合、Map的值 []
首先@BindingAdapter(value = ["flowAdapter"]),value是定义的一个类似于自定义View的属性,用于扩展View的属性
Java的方式:
Java的方式实现,第一个参数作为View,是定义扩展的View的。使用如下:
kotlin的方式:
kotlin的方式,使用的是函数扩展的方式,给对应的View扩展一个函数,依然使用@BindingAdapter注解定义对应的扩展属性
使用与Java方式一样
在kotlin中也可以传入一个lambda参数,其实与java中的接口实现类对象类似。
>
以上就是关于怎么启动一个不知道包名和类名的Android APK全部的内容,包括:怎么启动一个不知道包名和类名的Android APK、Android-DataBinding使用、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)