小编M-W*_*eEh的帖子

什么是粘性广播?

我在android文档中遇到了这个术语,附带定义

这些是广播,其数据在完成后由系统保存,因此客户端可以快速检索该数据而无需等待下一次广播.

这是什么意思?有人可以用特定的例子详细说明它的用法吗?我相信我们必须要求获得使用此意图的许可吗?为什么这样?

<uses-permission android:name="android.permission.BROADCAST_STICKY"/> - Allows an application to broadcast sticky intents.
Run Code Online (Sandbox Code Playgroud)

android android-intent

86
推荐指数
3
解决办法
10万
查看次数

java.lang.ClassNotFoundException:com.sun.jersey.spi.container.servlet.ServletContainer

我正在尝试使用Jersey + Google应用引擎构建一个简单的hello world应用程序两天.对于简单的AppEngine项目,我遵循了这些教程,两者都很好用 https://developers.google.com/appengine/docs/java/gettingstarted/creating https://developers.google.com/appengine/docs/java/webtoolsplatform

但现在我正在尝试添加Jersey并遵循本教程http://www.vogella.com/articles/REST/article.html.

但服务器一直在给我

java.lang.ClassNotFoundException:com.sun.jersey.spi.container.servlet.ServletContainer

当我在web.xml中添加这些行时:

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
id="WebApp_ID" version="2.5">
<display-name>TestServer</display-name>
<servlet>
    <servlet-name>Jersey REST Service</servlet-name>
    <servlet-class>com.sun.jersey.spi.container.servlet.ServletContainer</servlet-class>
    <init-param>
        <param-name>com.sun.jersey.config.property.packages</param-name>
        <param-value>com.test.myproject</param-value>
    </init-param>
    <load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
    <servlet-name>Jersey REST Service</servlet-name>
    <url-pattern>/rest/*</url-pattern>
</servlet-mapping>
</web-app>
Run Code Online (Sandbox Code Playgroud)

我已经JAX-RS 2.1 RI bundle这里下载了Jersey ,并且已经WEB-INF/lib在教程中添加了所有jar文件.即使两天后也没有任何效果.我已经在Google上搜索了几次,显然使用Maven的人已经解决了它,但我没有使用Maven也没有写过那个教程的人.

只是为了检查是否com.sun.jersey.spi.container.servlet.ServletContainer存在于导入中 Jersey jars我试图在Java中编写这个完全限定的名称并让intellisense完成名称,但我无法获得任何智能感知,com.sun.je所以我的最后猜测是在最新的Jersey构建中有一些包重新排列并且jersey不再在里面com.sun.我很累,我很感激任何帮助.

eclipse google-app-engine jersey java-ee jersey-2.0

81
推荐指数
4
解决办法
23万
查看次数

带有芯片的Android AutoCompleteTextView

我不确定我是否正在使用这个UI功能的正确单词,但我附上了我希望在我的应用程序中实现的快照.

它由Go SMS使用,用户在编辑文本中键入联系人,在用户从完成下拉列表中选择联系人后,联系人将插入编辑文本中,如附图中所示.编辑文本仍然打开接受进一步的意见

对于我的应用程序,我想在用户输入逗号后立即进行分组和插入,就像StackOverflow的Tag输入一样(但我相信我可以单独处理它.)我的问题是这是什么类型的View或者如何修改EditText以表现这样?

具有分组值的EditText

谢谢.

java android android-edittext

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

在TextView/EditText中选择一个单词

如何在Android 中的TextView/ EditText中选择一个单词.我在TextView/中有一些文本,EditText当用户点击一个单词时,我希望选择该单词,之后当我调用getSelectedText()方法时,它应该返回所选单词.任何帮助,将不胜感激.

我的目标是在用户点击TextView/中的特定单词时执行一些操作EditText.

android textview android-edittext spannable

17
推荐指数
1
解决办法
1万
查看次数

三星资源$ NotFoundException

我的一个应用程序崩溃在三星S5(准确地说是SM G900V)上有这样的例外:

android.content.res.Resources$NotFoundException: File res/drawable-xxhdpi-v4/common_signin_btn_icon_disabled_focus_light.9.png from drawable resource ID #0x7f0200e5
   at android.content.res.Resources$CRunnable_openmp.doOpenMP(Resources.java:1097)
   at android.content.res.Resources$__ompClass0.__doWork(Resources.java:1029)
   at com.samsung.javaomp.runtime.__OMPThread.run()
Caused by: java.io.FileNotFoundException: res/drawable-xxhdpi-v4/common_signin_btn_icon_disabled_focus_light.9.png
   at android.content.res.AssetManager.openNonAssetNative(AssetManager.java)
   at android.content.res.AssetManager.openNonAsset(AssetManager.java:408)
   at android.content.res.Resources$CRunnable_openmp.doOpenMP(Resources.java:1092)
   at android.content.res.Resources$__ompClass0.__doWork(Resources.java:1029)
   at com.samsung.javaomp.runtime.__OMPThread.run()
Run Code Online (Sandbox Code Playgroud)

似乎应用程序无法从Android操作系统访问一些drawable.任何想法如何解决?

更新:可能是这部分导致它,但它只是一个猜测:

Integer resultCode = GooglePlayServicesUtil.isGooglePlayServicesAvailable(this);
if (resultCode == ConnectionResult.SERVICE_MISSING ||
        resultCode == ConnectionResult.SERVICE_DISABLED ||
        resultCode == ConnectionResult.SERVICE_VERSION_UPDATE_REQUIRED) {
    Dialog dialog = GooglePlayServicesUtil.getErrorDialog(resultCode, this, 0);
    if (dialog != null) {
        //This dialog will help the user update to the latest GooglePlayServices
        dialog.show();
    }
}
Run Code Online (Sandbox Code Playgroud)

更新:解压缩apk文件显示该文件res\drawable-xxhdpi-v4\common_signin_btn_icon_disabled_focus_light.9.png

在此输入图像描述

android drawable samsung-mobile

17
推荐指数
1
解决办法
2362
查看次数

奇怪的View.getHitRect()行为

我有一个简单的布局:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="match_parent"
    android:layout_height="match_parent">

<Button
    android:id="@+id/button1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="Button" />

<Button
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:onClick="animate"
    android:text="animate" />

</LinearLayout>
Run Code Online (Sandbox Code Playgroud)

并在我的活动中,我在更改其y位置后打印按钮的矩形:

public class MainActivity extends Activity {

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

public void animate(View view) {
    printHitRect();
    findViewById(R.id.button1).setY(50);
    printHitRect();
}
private void printHitRect() { 
    Rect rect = new Rect();
    findViewById(R.id.button1).getHitRect(rect);
    Log.d(">>button1 hit rect", rect.flattenToString()); 
} 
}
Run Code Online (Sandbox Code Playgroud)

预期输出

button1 hit rect:0 0 116 72

button1 hit rect:0 50 116 122

实际输出

button1 hit rect:0 0 116 …

animation android android-custom-view android-animation

10
推荐指数
1
解决办法
5659
查看次数

Kotlin Generics Java中的错误

鉴于以下三个kotlin类:

abstract class UseCase<T> {
    fun execute(action: Action<T>) {
    }
}

class ConcreteUseCase : UseCase<List<String>>()

class Action<T>
Run Code Online (Sandbox Code Playgroud)

我无法在java代码中编译以下行:

ConcreteUseCase s = new ConcreteUseCase();
s.execute(new Action<List<String>>());//<<<<<<< compilation error
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

错误说:

SomeClass的<java.util.List的<?扩展Type >> in Class不能应用于SomeClass <java.util.List <Type >>

我仍然是kotlin的新手,这可能是一个非常小的东西,但我似乎无法弄明白.我将不胜感激任何帮助.

java generics android kotlin kotlin-generics

10
推荐指数
1
解决办法
634
查看次数

Magento PHP 5.4 PDF发票Zend错误

当我尝试创建PDF发票时,Magento正在抛出PHP错误(因为我的客户端运行的是PHP 5.4.19).

致命错误:Zend_Pdf_FileParserDataSource_File :: __ construct()声明必须与第41行/var/www/vhosts/website/httpdocs/includes/src/Zend_Pdf_FileParserDataSource_File.php中的Zend_Pdf_FileParserDataSource :: __ construct()兼容

通常,通过编辑FileParserDataSource.php并注释掉两行很容易解决这个问题,问题是它们运行了一个扩展此脚本的Zend_Pdf_FileParserDataSource_File.php(http://pastebin.com/J64VNsRP).

有没有可用的解决方案,以便可以在运行PHP 5.4的服务器上使用Magento创建PDF发票?

php zend-framework magento magento-1.7

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

InvalidKeyException:仅支持SecretKey

我最近开始在设备中看到此错误。

java.security.InvalidKeyException: Only SecretKey is supported
        at com.android.org.conscrypt.OpenSSLCipher.checkAndSetEncodedKey(OpenSSLCipher.java:436)
        at com.android.org.conscrypt.OpenSSLCipher.engineInit(OpenSSLCipher.java:273)
        at javax.crypto.Cipher.tryTransformWithProvider(Cipher.java:2664)
        at javax.crypto.Cipher.tryCombinations(Cipher.java:2575)
        at javax.crypto.Cipher$SpiAndProviderUpdater.updateAndGetSpiAndProvider(Cipher.java:2480)
        at javax.crypto.Cipher.chooseProvider(Cipher.java:567)
        at javax.crypto.Cipher.init(Cipher.java:975)
        at javax.crypto.Cipher.init(Cipher.java:910)
Run Code Online (Sandbox Code Playgroud)

在以下 情况下,从https://github.com/justinsb/android-libcore/blob/master/luni/src/main/java/org/apache/harmony/xnet/provider/jsse/OpenSSLCipher.java#L232引发异常

if (!(key instanceof SecretKey)) {
   throw new InvalidKeyException("Only SecretKey is supported");
}
Run Code Online (Sandbox Code Playgroud)

我总是这样从商店获取我的SecretKey:

SecretKey key = (SecretKey) keyStore.getKey(KEY_NAME, null);
Run Code Online (Sandbox Code Playgroud)

知道发生了什么吗?

security encryption ssl android boringssl

8
推荐指数
1
解决办法
2161
查看次数

使用具有自定义范围的Kotlin协程进行轮询并查看生命周期

我只是从Kotlin协程开始。我正在尝试使用协程轮询服务器,并希望在ActivityFragment暂停时停止轮询,并相应地恢复轮询。因此,我pollScope的生命周期比所提供的生命周期短ViewModel.viewModelScope。我对目前的实施方式不完全满意,有几个问题:

  1. 这是正确的创建方法吗pollScope?我也希望它在取消时viewModelScope也取消,这就是为什么我要指定父级作业。
  2. onResume()如果我取消pollJobs使用,为什么协程不能开始coroutineContext.cancel()?如果我保留一份工作清单并取消它们,它们会很好地启动。
  3. 这是整体正确的方法吗?有没有更好的办法?
    import androidx.lifecycle.LifecycleOwner
    import androidx.lifecycle.ViewModel
    import androidx.lifecycle.viewModelScope
    import com.spruce.messenger.utils.FullLifecycleObserverAdapter
    import kotlinx.coroutines.*
    import java.io.IOException
    import java.util.concurrent.CopyOnWriteArrayList
    import kotlin.coroutines.CoroutineContext


    suspend fun poll(initialDelay: Long = 5000,
                     maxDelay: Long = 30000,
                     factor: Double = 2.0,
                     block: suspend () -> Unit) {

        var currentDelay = initialDelay
        while (true) {
            try {
                try {
                    block()
                    currentDelay = initialDelay
                } catch (e: IOException) {
                    currentDelay …
Run Code Online (Sandbox Code Playgroud)

android coroutine kotlin kotlin-coroutines

7
推荐指数
1
解决办法
296
查看次数