[英]Storing value into Intent without start a new Activity
我必须检索应用程序所需的许可总数,并存储此值以供第二个Activity使用,但不要故意打开它。 我写了这段代码。
try {
PackageInfo packageInfo = getActivity().getPackageManager().getPackageInfo(value2, PackageManager.GET_PERMISSIONS);
String[] requestedPermissions = packageInfo.requestedPermissions;
if ( requestedPermissions != null ) {
for ( i = 0; i < requestedPermissions.length; i++) {
permissions.append(requestedPermissions[i]+"\n");
int total = i++;
Intent intent = new Intent();
intent.putExtra("totalPermissions",total);
}
}
}
catch ( PackageManager.NameNotFoundException e ) {
e.printStackTrace();
}
在另一个PreferenceActivity中
Bundle extras = getIntent().getExtras();
if(extras!=null) {
int tot = extras.getInt("totalPermissions");
permissionsPreference.setSummary(""+tot);
在“偏好摘要”中,返回0。为什么? 错误在哪里?
您在使用价值并从意图中获取价值时使用了不同的键,这就是为什么您获得零的原因。
两种意图不相同。 您可以将public static int total;
修改其在第一个活动中的值,并通过FirstActivity.total获取其在第二个活动中的值
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.