繁体   English   中英

在不启动新活动的情况下将价值存储到Intent中

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM