小编Sha*_*yaz的帖子

“清除内存”后小部件不起作用

问题是,在我使用内置的任务管理器的清理内存/内存后,我的小部件停止工作。我想这与任务管理器清理内存的方法有关。经过大量研究和一些尝试,我发现我需要BroadcastReciever 侦听包更改和更新:所以我实现了但它不起作用,因为文档说已that the 重新启动/已清除 package does not receive this broadcast

在清单文件中注册接收器:

<receiver android:name="com.app.lab.receiver.onRestartReciever">
    <intent-filter>
        <action android:name="android.intent.action.PACKAGE_REPLACED" />
        <action android:name="android.intent.action.PACKAGE_RESTARTED" />
         <action android:name="android.intent.action.PACKAGE_DATA_CLEARED"/>
        <data android:scheme="package"  />
    </intent-filter>
Run Code Online (Sandbox Code Playgroud)

PACKAGE_REPLACED - 特别调用以通知应用程序更新。

PACKAGE_RESTARTED - 当大多数内存清理器正在清理内存时调用。

“数据”行用于监视应用于特定包的操作。

public class onRestartReciever extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
// TODO Auto-generated method stub
Log.d("DEBUG", "onRestartReciever");//I am not getting this log on clearing memory from task manager



}
}
Run Code Online (Sandbox Code Playgroud)

我尝试使用虚拟服务来获取其生命周期,即检查 onDestroy 何时被调用,但我发现它不是一种可靠的方法,当应用程序被任务管理器杀死时,可能不会调用 onDestroy。

所以最后,我的问题 当任务管理器或操作系统清理内存时,有什么方法可以告诉 android 系统重新启动 …

android appwidgetprovider

6
推荐指数
1
解决办法
1546
查看次数

如何将日期增加一个

我有日期和时间格式的yyyy-MM-dd:HH:mm我要增加dd一个,即2013-10-24:11:202013-10-25:11:20

    SimpleDateFormat mSDF = new SimpleDateFormat("yyyy-MM-dd:HH:mm");
    time = mSDF.format(calSet.getTime());//calset in my calendar instance 
Run Code Online (Sandbox Code Playgroud)

我不知道我的时间/日期到底是什么.我只知道我必须为time变量增加一个日期

java date simpledateformat

4
推荐指数
1
解决办法
587
查看次数

哪一个被称为第一个静态块或oncreate方法?

我想知道哪个是第一个静态块或Oncreate方法

public class MainActivity extends Activity {
static{
// dosomething
}


@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);


}
Run Code Online (Sandbox Code Playgroud)

android oncreate android-activity

3
推荐指数
1
解决办法
4575
查看次数

java中的字符串初始化和连接

在我的应用程序中一切正常,但我想提高性能并优化我的代码.

这两个中哪一个更好

1.initialisation

String str1=new String("Hello");
String str2="Hello";
Run Code Online (Sandbox Code Playgroud)

2.concatenation

System.out.println(s1 + s2);
System.out.println(new StringBuffer(S1).append(s2));
Run Code Online (Sandbox Code Playgroud)

java performance

3
推荐指数
1
解决办法
1695
查看次数

Json 键有 '#' 特殊字符

目前我需要图像的 URL,我正在通过 JSON 文件获取它。由于密钥#开头有一个,我不确定是否获取具有 URL 的密钥。这是JSON:

{  
 "#text":"https://lastfm-img2.akamaized.net/i/u/34s/3ed37777196a6f2c29c02a1a58a93e4d.png",
 "size":"small"
},
{  
 "#text":"https://lastfm-img2.akamaized.net/i/u/64s/3ed37777196a6f2c29c02a1a58a93e4d.png",
 "size":"medium"
}
Run Code Online (Sandbox Code Playgroud)

javascript api json getjson web

3
推荐指数
1
解决办法
1243
查看次数

sqlite.SQLiteException:near"s":语法错误:因为撇号

我要将其插入到我的表中的歌曲名称包含"'"(撇号),因此,在请求被执行时会出错.我该如何解决呢?

Cursor pid = mDB.rawQuery("select Id  FROM MusicPlayer WHERE "Path ='" + sname + "';", null);
Run Code Online (Sandbox Code Playgroud)

我得到sname运行时所以.. sname =/mnt/sdcard/Now Thats What I Call Music 85 [Bubanee]/16 - Let's Get Ready To Rhumble (100% Radio Mix) - PJ & Duncan.mp3

我得到以下错误..

android.database.sqlite.SQLiteException: near "s": syntax error: , while compiling: SELECT Id FROM MusicPlayer WHERE Path ='/mnt/sdcard/Now Thats What I Call Music 85 [Bubanee]/16 - Let's Get Ready To Rhumble (100% Radio Mix) - PJ & Duncan.mp3';

因为sname包含let's带有' …

sqlite android cursor sqliteopenhelper

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

每个对象如何彼此不同

我在面向对象的上下文中读过有关对象标识的文章.其中说"你创建的每个对象都有自己独特的身份".但我对以下代码感到困惑.

     String str="Hello";
     String str1="Hello";
     System.out.println(str.hashCode()); //69609650
     System.out.println(str1.hashCode()); //69609650
     System.out.println(System.identityHashCode(str));//19313225
     System.out.println(System.identityHashCode(str1));//19313225
Run Code Online (Sandbox Code Playgroud)

str和str1的哈希码和identityhashcode是相同的.如果我理解错了,请纠正我.

另外hashcode()和system.identityhashcode()之间有什么区别

java hashcode

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

我可以在声明之前访问静态块中的静态字段吗?

我对下面的代码感到困惑,我预计它会给出一个错误或答案是10但是它给出了20怎么样?

public class test {
    public static void main(String[] args) {
        System.out.println(x);
    }

    static{
        x=10;
    }

    static int x=20;
}
Run Code Online (Sandbox Code Playgroud)

java static static-block

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

如何解决重复条目:com/google/android/gms/actions/ReserveIntents.class

我收到以下错误:错误:Execution failed for task':app:transformClassesWithJarMergingForDebug'.> com.android.build.api.transform.TransformException: java.util.zip.ZipException: duplicate entry: com/google/android/gms/actions/ReserveIntents.class

android {
compileSdkVersion 24
buildToolsVersion "24.0.0"

defaultConfig {
    applicationId "com.XXXXXXXXXXX.XXXXX"
    minSdkVersion 16
    targetSdkVersion 24
    versionCode 2
    versionName "1.1"
    multiDexEnabled true
}
buildTypes {
    release {
        minifyEnabled true
        proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
    }
}
}
dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
testCompile 'junit:junit:4.12'
compile 'com.android.support:appcompat-v7:24.0.0'
compile 'com.android.support:design:24.0.0'
compile 'com.android.support:cardview-v7:24.0.0'
compile 'com.github.nisrulz:qreader:1.0.6'
compile 'com.squareup.retrofit2:retrofit:2.0.2'
compile 'com.squareup.retrofit2:converter-gson:2.0.2'
debugCompile 'com.squareup.okhttp3:logging-interceptor:3.2.0'
compile project(':barcode-android')
compile project(':barcode-core')
compile 'com.google.firebase:firebase-messaging:9.2.1'
compile project(':imagepicker')
compile 'com.squareup.picasso:picasso:2.5.2'
compile 'com.afollestad.material-dialogs:commons:0.9.0.1'
compile 'com.soundcloud.android:android-crop:1.0.1@aar' …
Run Code Online (Sandbox Code Playgroud)

java android

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