小编Pra*_*ags的帖子

带有点(.)的Spring MVC @PathVariable被截断了

这是Spring MVC @PathVariable被截断的问题的延续

Spring论坛声明它已修复(3.2版本)作为ContentNegotiationManager的一部分.见下面的链接.
https://jira.springsource.org/browse/SPR-6164
https://jira.springsource.org/browse/SPR-7632

在我的应用程序中,带有.com的requestParameter被截断.

谁能解释我如何使用这个新功能?它是如何在xml中配置的?

注意:spring论坛 - #1带有点(.)的Spring MVC @PathVariable正在被截断

rest spring spring-mvc spring-annotations

345
推荐指数
14
解决办法
14万
查看次数

了解Spring @Autowired用法

我正在阅读spring 3.0.x参考文档以了解Spring Autowired注释:

3.9.2 @Autowired和@Inject

我无法理解下面的例子.我们是否需要在XML中执行某些操作才能使用它?

例1

public class SimpleMovieLister {

    private MovieFinder movieFinder;

    @Autowired
    public void setMovieFinder(MovieFinder movieFinder) {
        this.movieFinder = movieFinder;
    }

    // ...
}
Run Code Online (Sandbox Code Playgroud)

例2

public class MovieRecommender {

    private MovieCatalog movieCatalog;

    private CustomerPreferenceDao customerPreferenceDao;

    @Autowired
    public void prepare(MovieCatalog movieCatalog,
                    CustomerPreferenceDao customerPreferenceDao) {
        this.movieCatalog = movieCatalog;
        this.customerPreferenceDao = customerPreferenceDao;
    }

    // ...
}
Run Code Online (Sandbox Code Playgroud)

如何通过自动装配两个类来实现相同的接口并使用相同的类?

例:

class Red implements Color
class Blue implements Color

class myMainClass{
    @Autowired 
    private Color color;

    draw(){
        color.design(); 
    } 
}
Run Code Online (Sandbox Code Playgroud)

将调用哪种设计方法?如何确保调用Red类的设计方法而不是Blue?

java spring autowired spring-3

295
推荐指数
3
解决办法
40万
查看次数

替换ViewPager中的Fragment

我正在尝试使用Fragment ViewPager使用FragmentPagerAdapter.我想要实现的是将位于第一页上的片段替换为另一片段ViewPager.

寻呼机由两页组成.第一个是FirstPagerFragment,第二个是SecondPagerFragment.单击第一页的按钮.我想FirstPagerFragment用NextFragment 替换它.

我的代码如下.

public class FragmentPagerActivity extends FragmentActivity {

    static final int NUM_ITEMS = 2;

    MyAdapter mAdapter;
    ViewPager mPager;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.fragment_pager);

        mAdapter = new MyAdapter(getSupportFragmentManager());

        mPager = (ViewPager) findViewById(R.id.pager);
        mPager.setAdapter(mAdapter);

    }


    /**
     * Pager Adapter
     */
    public static class MyAdapter extends FragmentPagerAdapter {
        public MyAdapter(FragmentManager fm) {
            super(fm);
        }

        @Override
        public int getCount() {
            return NUM_ITEMS;
        }

        @Override
        public Fragment getItem(int …
Run Code Online (Sandbox Code Playgroud)

android view pager android-fragments android-viewpager

259
推荐指数
8
解决办法
18万
查看次数

显示动画GIF

我想在我的应用程序中显示动画GIF图像.正如我发现的那样,Android本身并不支持动画GIF.

但是它可以使用AnimationDrawable显示动画:

开发>指南>图像和图形> Drawables概述

该示例使用在应用程序资源中保存为帧的动画,但我需要的是直接显示动画gif.

我的计划是将动画GIF分解为帧并将每个帧添加为可绘制到AnimationDrawable.

有谁知道如何从动画GIF中提取帧并将它们转换为Drawable

java android animated-gif

254
推荐指数
13
解决办法
37万
查看次数

android mediaRecorder.setAudioSource失败了

我有android G1固件1.6,我试图用以下代码从应用程序录制语音.

MediaRecorder recorder = new MediaRecorder();
 recorder.setAudioSource(MediaRecorder.AudioSource.MIC);
 recorder.setOutputFormat(MediaRecorder.OutputFormat.THREE_GPP);
 recorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB);
 recorder.setOutputFile(PATH_NAME);
 recorder.prepare();
 recorder.start();  

我的manifest.xml有:

<uses-permission android:name="android.permission.RECORD_AUDIO" />

我有:

09-23 14:41:05.531: ERROR/AndroidRuntime(1718): Uncaught handler: thread main exiting due to uncaught exception
09-23 14:41:05.551: ERROR/AndroidRuntime(1718): java.lang.RuntimeException: setAudioSource failed.
09-23 14:41:05.551: ERROR/AndroidRuntime(1718):     at android.media.MediaRecorder.setAudioSource(Native Method)

我该如何正确录制声音?

android voice media-player gfx

67
推荐指数
5
解决办法
6万
查看次数

从adb获取包的可启动活动名称

有没有办法让包的可启动活动使用adb?对于unroot手机(即没有从/data/app目录中拉出apk 并检查appt).

我尝试过dumpsys,但它不包含有关默认可启动活动的信息.

谢谢

android adb

67
推荐指数
5
解决办法
9万
查看次数

如何使用UsageStatsManager?

背景

谷歌已弃用getRecentTasks"ActivityManager"类的功能" ".现在它所做的只是获取当前应用程序已打开的应用程序列表.

我甚至在StackOverflow上写了一篇关于它的帖子,但我发现这是不可能的.

问题

我发了一篇关于它的帖子(在这里,另一个,类似的由其他人创建,在这里),并要求重新考虑它,谷歌决定创建一个新类,似乎提供类似的功能(更像是统计,但也可能有用),但我无法找到如何使用它.

该类称为" UsageStatsManager",我的猜测是函数" queryUsageStats"完成工作.

此外,它似乎有一个新的权限(" android.permission.PACKAGE_USAGE_STATS"),这是一个系统权限,但它写道:

声明权限意味着使用API​​的意图,设备用户可以通过Settings应用程序授予权限.

这是关于这个新功能另一个链接.

我发现了什么

我查看了Android的代码,并注意到"Context"有USAGE_STATS_SERVICE,在JavaDocs中说下一件事:

/**
 * Use with {@link #getSystemService} to retrieve a {@link
 * android.app.UsageStatsManager} for interacting with the status bar.
 *
 * @see #getSystemService
 * @see android.app.UsageStatsManager
 * @hide
 */
public static final String USAGE_STATS_SERVICE = "usagestats";
Run Code Online (Sandbox Code Playgroud)

奇怪的是,不仅它说" status bar",而且packageName也不匹配(应该是" android.app.usage.UsageStatsManager").

我还添加了正确的权限:

<uses-permission
    android:name="android.permission.PACKAGE_USAGE_STATS"
    tools:ignore="ProtectedPermissions" />
Run Code Online (Sandbox Code Playgroud)

这是我使用的代码:

  final UsageStatsManager …
Run Code Online (Sandbox Code Playgroud)

android usage-statistics activity-manager android-recents usagestatsmanager

52
推荐指数
5
解决办法
5万
查看次数

类型提示:默认参数

PHP 5类型提示

PHP 5引入了类型提示.函数现在能够强制参数为对象(通过在函数原型中指定类的名称)或arrays(自PHP 5.1起).但是,如果将ifNULL用作默认参数值,则允许将其作为后续调用的参数.

以下摘录如下:

if NULL用作默认参数值,它将被允许作为任何后续调用的参数.

上述意思是:

如果要使用默认参数,请使用类型提示,它只能具有NULL默认值.

code1中的代码是错误的,并导致:

致命错误:具有类类型提示的参数的默认值只能是 NULL

代码1:

 function setName ( string $name = "happ") {
  ...
  }
Run Code Online (Sandbox Code Playgroud)

代码2中的代码是正确的:

码2:

 function setName ( string $name = NULL) {
  ...
  }
Run Code Online (Sandbox Code Playgroud)

为什么在php中分配了这个约束?

php type-hinting default-parameters

44
推荐指数
2
解决办法
3万
查看次数

将优惠保存到Google电子钱包

在我的应用中,我需要实施从我的应用到Google电子钱包的保存优惠.我找到了这个教程:Developer Documentation- wallet ,但是当我尝试实现它时,我遇到了一个问题.页面中有代码:

OfferWalletObject wob = OfferWalletObject
        .newBuilder()...
Run Code Online (Sandbox Code Playgroud)

但我的环境说,班级没有这种方法.此页面中没有关于此方法的任何内容:开发人员参考文档

有人可以帮助解决这个问题或者说其他方法来保存Google钱包中的优惠.

android android-pay

38
推荐指数
1
解决办法
687
查看次数

在tensorboard中记录训练和验证丢失

我正在尝试学习如何使用tensorflow和tensorboard.我有一个基于MNIST神经网络教程的测试项目.

在我的代码中,我构造了一个节点,用于计算正确分类的数据集中的数字部分,如下所示:

correct = tf.nn.in_top_k(self._logits, labels, 1)
correct = tf.to_float(correct)
accuracy = tf.reduce_mean(correct)
Run Code Online (Sandbox Code Playgroud)

self._logits是图表的推理部分,labels是包含正确标签的占位符.

现在,我想做的是在训练进行时评估训练集和验证集的准确性.我可以通过运行精度节点两次,使用不同的feed_dicts来完成此操作:

train_acc = tf.run(accuracy, feed_dict={images : training_set.images, labels : training_set.labels})
valid_acc = tf.run(accuracy, feed_dict={images : validation_set.images, labels : validation_set.labels})
Run Code Online (Sandbox Code Playgroud)

这按预期工作.我可以打印这些值,我可以看到,最初,两个精度都会增加,最终验证精度会在训练精度不断提高时变平.

但是,我还想在tensorboard中得到这些值的图表,我无法弄清楚如何做到这一点.如果我只是添加一个scalar_summaryto accuracy,则记录的值将不区分训练集和验证集.

我还尝试创建两个accuracy具有不同名称的相同节点,并在训练集上运行一个,在验证集上运行一个.然后我scalar_summary为每个节点添加一个.这确实在张量板中给出了两个图形,但是它们不是显示训练集精度的一个图形而是显示验证集精度的图形,而是显示与打印到终端的任何一个都不匹配的相同值.

我可能误解了如何解决这个问题.对于不同的输入,单独记录单个节点的输出的推荐方法是什么?

python tensorflow tensorboard

38
推荐指数
2
解决办法
2万
查看次数