小编Hit*_*sit的帖子

Android服务onCreate被多次调用而不调用onDestroy

在我的应用程序中,我使用服务与我们的服务器进行通信.该服务生成多个消息队列线程来处理具有不同优先级的任务.

这个模型已经使用了大约一年没有大问题.但是,最近,我发现onCreate我的服务类被多次调用了一段时间.onDestroy从不在两次onCreate通话之间调用.因此,我没有机会杀死现有的线程.一旦发生此行为,服务内部就会出现重复的线程.

我唯一改变的是运行服务,因为前台服务是用户登录应用程序.我想知道前台服务是否会导致问题.

有任何想法吗?

service android oncreate ondestroy

12
推荐指数
2
解决办法
7779
查看次数

限制某些GitHub用户合并分支

是否可以限制某些git用户在GitHub上合并git分支?我想让用户提交,拉动和推送当前分支中的更改,切换到另一个现有分支,但不允许合并分支.是可以在GitHub.com或独立的git存储库吗?

git permissions version-control github git-merge

12
推荐指数
3
解决办法
9272
查看次数

使用指向除下一节点之外的随机节点的指针复制LinkedList

问:链表的每个节点都有一个随机指针(除了下一个指针),它可以随机指向另一个节点或为空.你会如何复制这样的链表?

答:这就是我所拥有的,我只是想批准这是否是最佳方式.

由于没有指定空间限制,我将使用a LinkedHashSet和a LinkedHashMap(我可以想象人们已经在分歧中点头;))

第一次迭代:显而易见 - 从列表中读取每个节点以进行复制并在新列表上创建节点.然后,像这样读取随机节点:this.random.data并插入到LinkedHashSet.

第二次迭代:遍历新列表并将每个节点的数据添加为第一列,将节点本身作为第二列添加到LinkedHashMap(不必是链接,但我只是使用流程).

第三次迭代:迭代LinkedHashSet(这就是为什么需要链接 - 可预测的排序)和新列表同时进行.对于第一个节点,读取其中的第一个条目,在其中LinkedHashSet查找相应的对象LinkedHashMap,并将其作为随机节点添加到新列表中的当前节点.

3次迭代似乎有点疯狂,但尝试将复杂性保持为O(N).任何改进O(3N)空间要求和O(3N)运行时复杂性的解决方案都会很棒.谢谢!


编辑:进入LinkedHashSet时可以删除该条目LinkedHashMap,因此这只需要O(2N)空间.

java algorithm linked-list

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

"无法注册输入通道" - 这是由什么引起的,以及如何解决这个问题?

我收到了以下错误,我的应用用户通过市场开发者控制台报告:

java.lang.RuntimeException: Failed to register input channel. Check logs for details.
    at android.view.InputQueue.nativeRegisterInputChannel(Native Method)
    at android.view.InputQueue.registerInputChannel(InputQueue.java:92)
    at android.view.ViewRoot.setView(ViewRoot.java:568)
    at android.view.WindowManagerImpl.addView(WindowManagerImpl.java:177)
    at android.view.WindowManagerImpl.addView(WindowManagerImpl.java:91)
    at android.view.Window$LocalWindowManager.addView(Window.java:465)
    at android.app.Dialog.show(Dialog.java:241)
    at my.program.MyActivity.handleFailure(Unknown Source)
    at my.program.MyActivity$RunFailed.run(Unknown Source)
    at android.os.Handler.handleCallback(Handler.java:587)
    at android.os.Handler.dispatchMessage(Handler.java:92)
    at android.os.Looper.loop(Looper.java:130)
    at android.app.ActivityThread.main(ActivityThread.java:3835)
    at java.lang.reflect.Method.invokeNative(Native Method)
    at java.lang.reflect.Method.invoke(Method.java:507)
    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:847)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:605)
    at dalvik.system.NativeStart.main(Native Method)
Run Code Online (Sandbox Code Playgroud)

斜体线是我的代码的一部分.有问题的代码只是创建并显示一个对话框.它从一个Runnable发布到一个Handler.一切都应该在GUI线程中发生(这Handler就是使用的原因).

我不知道如何调试这个.我自己没有遇到过这个问题,而我所拥有的只是一堆自动报告.谷歌在这个确切的问题上显示了几个线程,但没有答案(除了暗示这是Android 2.3.3特定的问题).

user-interface android forceclose

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

自定义微调器视图

我创建了自己的自定义微调器,我可以在它实现的"自定义和库视图"中访问它View.但是,问题是当从我的调色板中拖动我的自定义微调器以在我的中使用它时main.xml,它会抛出"未处理的事件循环异常".我不知道我的错误在哪里.

main.xml中

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:pref="http://schemas.android.com/apk/res/com.myspinner"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >

<com.myspinner.Myspinner
android:id="@+id/myspinner1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
pref:MyEntries="@array/testarray" />
Run Code Online (Sandbox Code Playgroud)

MySpinnerattributes.xml

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <declare-styleable name="MySpinner">
        <attr name="MyEntries" format="reference"/>
    </declare-styleable>
</resources>
Run Code Online (Sandbox Code Playgroud)

spinnerlayout.xml

<?xml version="1.0" encoding="utf-8"?>
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/textView1"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_gravity="center"
    android:text="@string/large_text" android:gravity="center"/>
Run Code Online (Sandbox Code Playgroud)

Myspinner.java

    public class Myspinner extends Spinner{


    LayoutInflater inflater;
    CharSequence cs[]={"MySpinner"};
    String s[]={"MySpinner"};
    View row;
    TextView txt;


public Myspinner(Context context, AttributeSet attrs, int defStyle) {
    super(context, attrs, defStyle);
    setAttributes(attrs);    
    this.setAdapter(new MyAdapter(this.getContext(), R.layout.spinnerlayout,s));
    }



public Myspinner(Context …
Run Code Online (Sandbox Code Playgroud)

android custom-attributes custom-component android-arrayadapter android-spinner

11
推荐指数
0
解决办法
999
查看次数

如何在不使用谷歌地图API的情况下获取路线箭头

我是Android开发和导航应用程序的新手.我正在开发与Google导航相同但具有不同路径的导航应用程序.我能够走自己的路.现在,我希望以与Google导航应用程序相同的方式在应用程序中显示我的路径.但我不想使用Google Navigation API.在Google导航应用中,它们用箭头表示当前位置.

有没有人知道如何使用相同的表示?或者任何人都可以给我任何提示我应该在哪里寻找?

navigation android google-maps

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

样式Android SearchView下拉弹出窗口

我想知道如何设置Android 4.0下拉弹出窗口的样式SearchView

我正在使用Theme.Sherlock.Light.DarkActionBar,但我不知道如何将下拉搜索样式设置为白色背景和黑色文本?

android android-ui android-theme actionbarsherlock

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

确定是否以编程方式启用系统范围备份

我想知道是否可以确定用户是否已启用从我的Android应用程序中将应用程序数据备份到云的选项.

我可以通过调用命令行从adb shell确定这个:

bmgr enabled
Run Code Online (Sandbox Code Playgroud)

android是否提供了从代码中执行此操作的API?

backup android android-backup-service

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

Android:onPreviewFrame从未在没有SurfaceView的情况下调用

在某些设备上,onPreviewFrame如果没有SurfaceView设置显示相机预览,则不会调用.但是,我在服务中处理相机,所以我无法设置,SurfaceView但我不想有任何可见的预览.

如何才能做到这一点?我可以以编程方式创建SurfaceView并设置它Camera::setPreviewDisplay吗?

这一定是否可能?

它适用于几乎所有手机,SurfaceView但没有HTC One X和谷歌Nexus One ......

camera android preview surfaceview

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

如何录制流媒体视频?

我可以在一个带有http服务器连接的流媒体视频中播放SurfaceView.我是创造ContextMenu了一种通过添加菜单项录制视频的StartRecordingStopRecording.但我可以通过电话录制相机视频mediaRecorder.setVideoSource(MediaRecorder.VideoSource.CAMERA);

在这里,我想将视频源设置为流式视频源.这样做有可能吗?

但我想在播放时录制流媒体视频.你能告诉我如何在播放时做唱片吗?

请您提供此问题的示例代码吗?

我的示例代码如下所示:

main.xml中:

 <?xml version="1.0" encoding="utf-8"?>
 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"             android:orientation="vertical" android:layout_width="fill_parent"
android:layout_height="fill_parent">

<FrameLayout android:layout_width="fill_parent" android:layout_height="fill_parent" android:id="@+id/frameLayoutRoot">

    <SurfaceView android:id="@+id/surfaceViewFrame" android:layout_gravity="center" android:layout_height="wrap_content" android:layout_width="wrap_content"></SurfaceView>

    <LinearLayout android:layout_width="fill_parent" android:id="@+id/linearLayoutMediaController" android:layout_height="wrap_content" android:paddingBottom="5dp"
        android:paddingTop="5dp" android:layout_gravity="bottom" android:gravity="center_vertical" android:background="@color/media_controller_bg_color">

        <TextView android:layout_width="wrap_content" android:id="@+id/textViewPlayed" android:layout_marginLeft="5dp" android:layout_marginRight="5dp"
            android:textColor="@color/media_controller_text_color" android:textStyle="bold" android:text="0:00:00" android:padding="0dp" android:textSize="13sp" android:gravity="center"
            android:layout_height="wrap_content"></TextView>

        <SeekBar android:id="@+id/seekBarProgress" android:layout_weight="1" style="@style/MyCustomProgressStyle" android:layout_width="fill_parent"
            android:layout_height="wrap_content" android:progress="50"></SeekBar>
        <TextView android:layout_width="wrap_content" android:id="@+id/textViewLength" android:layout_marginLeft="5dp" android:layout_marginRight="5dp"
            android:textColor="@color/media_controller_text_color" android:textStyle="bold" android:text="0:00:00" android:textSize="13sp" android:padding="0dp" android:gravity="center"
            android:layout_height="wrap_content"></TextView>

    </LinearLayout>

    <ProgressBar style="?android:attr/progressBarStyleLarge" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center" …
Run Code Online (Sandbox Code Playgroud)

android video-streaming video-recording

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