小编nol*_*man的帖子

Android服务:生命周期考虑因素

我正在制作一个Android应用程序,它将有两个服务,将每24小时不断发送用户使用手机的数据.

用户应该执行应用程序,切换按钮以启用手机使用记录,然后用户应该可以使用手机正常生活,直到他再次启动应用程序并禁用切换按钮停止记录信息.

  • 我应该考虑服务的生命周期?
  • 当服务应该发送数据时,用户与电话的交互如何?

所有信息都非常感谢,因为我的想法让这一切变得有点不知所措!

非常感谢大家!

service lifecycle android

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

Android:Sherlock动作栏下拉

我正在尝试将下拉列表实现为Android中操作栏的导航.我可以看到下拉列表和项目,但我无法获得点击事件.

自从我在http://developer.android.com/guide/topics/ui/actionbar.html上关注教程后,我不确定自己错过了什么.

这是我的代码:

public void onCreate(Bundle savedInstanceState) {
        OnNavigationListener mOnNavigationListener;
        super.onCreate(savedInstanceState);
        // setContentView(R.layout.info_layout);
        // getSupportActionBar().setHomeButtonEnabled(true);
         getSupportActionBar().setDisplayShowTitleEnabled(false);

        getSupportActionBar().setNavigationMode(getSupportActionBar().NAVIGATION_MODE_LIST);
        SpinnerAdapter mSpinnerAdapter = ArrayAdapter.createFromResource(this, R.array.navigation_array, android.R.layout.simple_dropdown_item_1line);
        mOnNavigationListener = new OnNavigationListener() {
            public boolean onNavigationItemSelected(int itemPosition, long itemId) {
                switch (itemPosition) {
                case 1:
                    Intent i = new Intent();
                    i.setClass(getApplicationContext(), ZoekAndBoekActivity.class);
                    break;
                case 2:
                    break;
                case 3:
                    break;
                case 4:
                    break;
                case 5:
                    break;
                }
                // return super.onOptionsItemSelected(itemPosition);
                return true;
            }
        };
        getSupportActionBar().setListNavigationCallbacks(mSpinnerAdapter, mOnNavigationListener);
    }
Run Code Online (Sandbox Code Playgroud)

非常感谢提前!

android actionlistener actionbarsherlock drop-down-menu

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

Android中的静态AlarmManager

我正在Android中开发一个简单的任务应用程序,我需要通过AlarmManager创建通知.我的问题是我有一些应该删除的警报 - 以及它们的通知 - 但它们不是,所以我决定- 使用cancel() - 来自AlarmManager的删除警报等帖子,使AlarmManager成为一个静态变量可以从整个应用程序到达相同的实例.我这样做的方法是在我的主类中使用以下方法:

public static AlarmManager getAlarmManagerInstance() {
        if (sAlarmManager == null && sContext != null)
            sAlarmManager = (AlarmManager) sContext
                    .getSystemService(Context.ALARM_SERVICE);
        return sAlarmManager;
    }
Run Code Online (Sandbox Code Playgroud)

并且在sContext变量中将以这种方式实例化:

@Override
    protected void onCreate(Bundle bundle) {
        super.onCreate(bundle);
        setContentView(R.layout.activity_main);
        sContext = this;
        initActionBar();
    }
Run Code Online (Sandbox Code Playgroud)

从这个变量创建一个单例模式是个好主意吗?有没有更好的方法?

非常感谢提前.

singleton android alarmmanager

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

在Android中使用LruCache的NoSuchMethodError

我使用从Android中的LruCache继承的自定义类时出错.它应该下载图像并缓存它们; 昨天,它正在运作,但今天早上我遇到了这个问题.

这是该类的代码:

public class LruMemoryCache extends LruCache<String, Bitmap> {
    private final Context context;
    private static LruMemoryCache instance;

    private LruMemoryCache(Context context) {
//      super(1024 * 1024 * (((ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE)).getMemoryClass()) / 8);
        super(5 * 1024 * 1024);
        this.context = context;
    }

    public static synchronized LruMemoryCache getInstance(Context context) {
        if (instance == null) {
            instance = new LruMemoryCache(context);

        }
        return instance;
    }

    @Override
    protected int sizeOf(String key, Bitmap value) {
        return value.getByteCount();
    }

    public void loadBitmap(String url, ImageView imageView) {
        final String …
Run Code Online (Sandbox Code Playgroud)

android caching android-lru-cache

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

Ruby:捆绑包无法与 rbenv 一起使用(路径名包含空字节(ArgumentError)

我创建了一个 RubyGem,今天我打算更新依赖项,但现在进入 gem 的目录并输入后bundle install出现错误,其最后一行是:

/Users/myuser/.rbenv/versions/2.6.2/lib/ruby/2.6.0/rubygems/specification.rb:2663:in `directory?': path name contains null byte (ArgumentError)

我已经重新安装了捆绑程序,更新了系统 gem 等,但似乎没有任何效果。我怎样才能避免这种情况?

预先非常感谢!

ruby rubygems bundler rbenv

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

在 Kotlin 中匹配数字、字符和 &lt; 的正则表达式

我需要解析一些护照和身份证,其中包含字符串,例如

val text = "P<GBRSTONE<<SARAH<<<<<<<<<<<<<<<<<<<<<<<<<<<\n" +
                    "0689349234GBR3708248F1601013<<<<<<<<<<<<<<06"
Run Code Online (Sandbox Code Playgroud)

(是的,两行),我需要首先验证文本,因为它只能包含大写字母、数字<和换行符。

我正在使用https://regexr.com/并且尝试过诸如但当[A-Z0-9<{\n}"]我尝试使用fun Mrz.validChars(): Regex = Regex("/[A-Z0-9<{\n}]")always returns验证我的文本时的表达式false

提前致谢!

regex kotlin

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

获取服务调用的线程中的上下文

我有以下代码:

public class DumpLocationLog extends Thread {
    LocationManager lm;
    LocationHelper loc;
    public void onCreate() {
        loc = new LocationHelper();
        lm = (LocationManager) Context.getSystemService(Context.LOCATION_SERVICE);
    }
    public void run() {
        lm.requestLocationUpdates(LocationManager.GPS_PROVIDER, 1000L, 500.0f, loc);
    }
}
Run Code Online (Sandbox Code Playgroud)

我希望它从远程服务运行,但在行中lm = (LocationManager) Context.getSystemService(Context.LOCATION_SERVICE);我得到一个NullPointerException错误,因为它context是null.

我怎样才能获得上下文?getBaseContext()getApplicationContext()不起作用.

service multithreading android location android-context

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

使DialogFragment适合图像大小

我有一个带有ViewPager的DialogFragment,可以显示一些图片.顶部有一个奇怪的黑色条纹的问题,这些图片变形了.

这就是我现在所拥有的,正如你所看到的,图片看起来并不好看,并且对话框顶部有一个奇怪的黑色条纹.

在此输入图像描述

这是它应该看起来的样子,没有黑色条纹,图片适合屏幕的宽度.

在此输入图像描述

我怎么能这样做?

非常感谢提前.

android android-viewpager android-dialogfragment

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

SwiftUI 中的结构初始化:在初始化所有存储的属性之前使用“self”

我试图将 Binding 传递给我的 VM,它应该是一个过滤器,以便 VM 根据参数传递的过滤来获取对象。

不幸的是,我无法初始化虚拟机,因为我'self' used before all stored properties are initialized在初始化虚拟机的行中收到错误self.jobsViewModel = JobsViewModel(jobFilter: $jobFilter)

struct JobsTab: View {
    @ObservedObject var jobsViewModel: JobsViewModel
    @ObservedObject var categoriesViewModel: CategoriesViewModel
    
    @StateObject var searchText: SearchText = SearchText()
    
    @State private var isEditing: Bool
    @State private var showFilter: Bool
    @State private var jobFilter: JobFilter
    
    init() {
        self.categoriesViewModel = CategoriesViewModel()
        self.jobFilter = JobFilter(category: nil)
        self.showFilter = false
        self.isEditing = false
        self.jobsViewModel = JobsViewModel(jobFilter: $jobFilter)
    }
Run Code Online (Sandbox Code Playgroud)

我认为我正在初始化所有变量,并且self.searchText不在 init 块中,因为编译器抱怨它是仅获取属性。

还有其他方法可以做到这一点吗?

谢谢! …

ios swift swiftui

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

核心数据:以一对多关系存储有序值

我正在构建一个锻炼应用程序,其中有一个名为“锻炼”的实体和另一个名为“锻炼”的实体。一次锻炼可以包含多个练习(因此是一对多的关系)。我想向我的应用程序的用户展示锻炼中包含的练习,但以有序的方式进行(从力量练习开始与有氧运动开始不同)。

显然,在核心数据中建立这种关系时,我需要使用 an NSSet,因为如果我尝试使用例如Array其元素排序的 an ,我会收到以下错误:

*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: 'Unacceptable type of value for to-many relationship: property = "consistsOf"; desired type = NSSet; given type = __NSArray0; value = (
).'
Run Code Online (Sandbox Code Playgroud)

我尝试检查模型中的“有序”复选标记,但随后收到一条错误消息“Workout.consistsOf 不得排序”。我还尝试使用一个,NSDictionary其键是位置,值是练习本身,但我得到了与上面相同的错误。

如何以有序的方式向用户展示锻炼所包含的练习?

预先非常感谢!

PS:这是我的模型属性的屏幕截图。

模型属性 错误

core-data

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