小编ing*_*abh的帖子

Android拨号程序

我正在找出一种方法来替换我的自定义拨号器应用程序中的默认拨号器应用程序,但我没有得到如何实现这一点.

这就是我想要的

  • 创建自定义拨号器UI
  • 每当按下呼叫按钮硬件或Android中的硬件时,都会调用我的应用程序
  • 也可以从联系人屏幕调用该应用程序

我指的是public static final String ACTION_DIAL.

android phone-call

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

将Imageview设置为在SD卡中显示图像?

我有一张存储在手机SD卡中的图像.我想在图像视图中显示它.我知道文件的位置.关于活动的创造是有一种简单的方式来说出类似的东西

ImageView img = (ImageView) findViewById(R.id.imageView1);    
String path = Environment.getExternalStorageDirectory().toString() "Images/image.jpg";     
img.setsrc = path ;
Run Code Online (Sandbox Code Playgroud)

如果有任何办法,请告诉我.谢谢.

android android-image android-layout android-imageview

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

Firebase未报告与OkHttp相关的崩溃

在我面临的问题之后,我正在将我的代码从Google分析迁移到Firebase

  1. 某些自定义事件显示正确的值,而其他自定义事件虽然使用的代码在所有情况下都相同.如果需要可以提供代码.

更新:上面解决了,我发送大数据,所以它只是省略了它们.

  1. 在使用OkHttp(使用Android网络库和Asynctask)之前,firebase在崩溃报告中显示正确的行号,但在使用OkHttp之后没有,我可以确认我已经上传了正确的映射文件,因为其他非OKHttp相关的崩溃被正确报告.

所以我的担忧并不是例外,而是从哪里抛出?

Firebase崩溃报告之前 OKhttp

Exception java.net.SocketTimeoutException: connect timed out
java.net.PlainSocketImpl.socketConnect (PlainSocketImpl.java)
java.net.AbstractPlainSocketImpl.doConnect (AbstractPlainSocketImpl.java:334)
java.net.AbstractPlainSocketImpl.connectToAddress (AbstractPlainSocketImpl.java:196)
java.net.AbstractPlainSocketImpl.connect (AbstractPlainSocketImpl.java:178)
java.net.SocksSocketImpl.connect (SocksSocketImpl.java:356)
java.net.Socket.connect (Socket.java:586)
com.android.okhttp.internal.Platform.connectSocket (Platform.java:113)
com.android.okhttp.Connection.connectSocket (Connection.java:1432)
com.android.okhttp.Connection.connect (Connection.java:1390)
com.android.okhttp.Connection.connectAndSetOwner (Connection.java:1667)
com.android.okhttp.OkHttpClient$1.connectAndSetOwner (OkHttpClient.java:133)
com.android.okhttp.internal.http.HttpEngine.connect (HttpEngine.java:466)
com.android.okhttp.internal.http.HttpEngine.sendRequest (HttpEngine.java:371)
com.android.okhttp.internal.huc.HttpURLConnectionImpl.execute (HttpURLConnectionImpl.java:503)
com.android.okhttp.internal.huc.HttpURLConnectionImpl.getResponse (HttpURLConnectionImpl.java:438)
com.android.okhttp.internal.huc.HttpURLConnectionImpl.getResponseCode (HttpURLConnectionImpl.java:567)
com.package.MyClass$4.doInBackground (MyClass.java:168)
com.package.MyClass$4.doInBackground (MyClass.java:161)
android.os.AsyncTask$2.call (AsyncTask.java:304)
java.util.concurrent.FutureTask.run (FutureTask.java:237)
android.os.AsyncTask$SerialExecutor$1.run (AsyncTask.java:243)
java.util.concurrent.ThreadPoolExecutor.runWorker (ThreadPoolExecutor.java:1133)
java.util.concurrent.ThreadPoolExecutor$Worker.run (ThreadPoolExecutor.java:607)
java.lang.Thread.run (Thread.java:762)
Run Code Online (Sandbox Code Playgroud)

OkHttp之后的Firebase崩溃报告

Exception java.net.SocketTimeoutException: connect timed out
java.net.PlainSocketImpl.socketConnect (PlainSocketImpl.java)
java.net.AbstractPlainSocketImpl.doConnect (AbstractPlainSocketImpl.java:334)
java.net.AbstractPlainSocketImpl.connectToAddress (AbstractPlainSocketImpl.java:196)
java.net.AbstractPlainSocketImpl.connect (AbstractPlainSocketImpl.java:178)
java.net.SocksSocketImpl.connect (SocksSocketImpl.java:356)
java.net.Socket.connect (Socket.java:586) …
Run Code Online (Sandbox Code Playgroud)

android firebase okhttp3 firebase-analytics

19
推荐指数
2
解决办法
921
查看次数

MediaBrowserService和MediaStore

如何使用MediaBrowserService从不同的提供程序(文件资源管理器,GoogleDrive,ContentProvider等)加载媒体,保持单一服务

经过UAMP检查,它只使用一个提供商

我的第二个问题是onLoadItem的目的是什么

android mediabrowserservice

17
推荐指数
0
解决办法
362
查看次数

Chromecast在播放视频时添加字幕

我可以使用以下代码使用Android应用程序显示字幕(webvtt)

MediaTrack subtitle = new MediaTrack.Builder(0, MediaTrack.TYPE_TEXT)
                            .setName("English")
                            .setSubtype(MediaTrack.SUBTYPE_SUBTITLES)
                            .setContentId(mediaObject.getSubtitleUrl())
                            .setLanguage(Locale.getDefault())
                            .build();

                    tracks.add(subtitle);
Run Code Online (Sandbox Code Playgroud)

我的问题是,当媒体最初加载到Chromecast时,这种方法很有效,所以如果我想在媒体播放后再添加字幕,我必须重新加载媒体.

这有解决方法吗?我已经看到一些应用程序正在执行所需的行为.

android subtitle chromecast

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

UAMP MediaBrowser方向

我正在尝试uamp示例,每当方向更改MediaBrowserFragment recyclelerview状态丢失时(不保持其滚动位置).

我的问题是如何在uamp样本中保持滚动位置.

我知道我可以保存滚动位置并在以后恢复,但由于recyclerView本身保持滚动状态,我不想要那些黑客攻击.

我尝试推动这个简单的片段而不是MediaBrowserFragment并保持其滚动

public class TestFragment extends Fragment {

    @Override
    public View onCreateView(@NonNull LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
        View mRootView = inflater.inflate(R.layout.fragment_test, container, false);
        RecyclerView recyclerView = (RecyclerView) mRootView.findViewById(R.id.recyclerView);
        recyclerView.setLayoutManager(new LinearLayoutManager(getActivity()));
        recyclerView.setAdapter(new RecAdapter());
        return mRootView;
    }


    private class RecAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolder> {

        @NonNull
        @Override
        public RecyclerView.ViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) {
            View itemView = LayoutInflater.from(parent.getContext()).inflate(R.layout.layout_text, null);
            return new ItemViewHolder(itemView);
        }

        @Override
        public void onBindViewHolder(@NonNull RecyclerView.ViewHolder holder, int position) {
            ((ItemViewHolder) holder).title.setText(""+ position); …
Run Code Online (Sandbox Code Playgroud)

android mediabrowserservicecompat

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

加入大图像时出现OutOfMemory错误

我正在使用下面的代码加入两个图像,但它会抛出一个OutOfMemory错误,我的图像每个大约1MB.

private Bitmap overlayMark(String first, String second)
{
    Bitmap bmp1, bmp2;
    bmp1 = BitmapFactory.decodeFile(first);
    bmp2 = BitmapFactory.decodeFile(second);
    if (bmp1 == null || bmp2 == null)
        return bmp1;

    int height = bmp1.getHeight();
    if (height < bmp2.getHeight())
        height = bmp2.getHeight();

    Bitmap bmOverlay = Bitmap.createBitmap(bmp1.getWidth() + bmp2.getWidth(), height,
            Bitmap.Config.ARGB_8888);// Out of memory
    Canvas canvas = new Canvas(bmOverlay);
    canvas.drawBitmap(bmp1, 0, 0, null);
    canvas.drawBitmap(bmp2, bmp1.getWidth(), 0, null);
    bmp1.recycle();
    bmp2.recycle();
    return bmOverlay;
}
Run Code Online (Sandbox Code Playgroud)

更新:我尝试了下面两个答案,但它仍然没有完全创建这么大的位图,问题是结果位图在2400x3200左右太大,所以它的内存不足.

如何在不耗尽内存的情况下加入大型图像?

android bitmap out-of-memory

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

Android Cling/Upnp proguard

我已经使用Cling创建了应用程序并且工作正常但是当我创建发布版本时,我得到以下消息并且渲染器上没有任何内容:

   11-22 16:24:53.341  20172-20172/? I/RendererCommand? TrackMetadata : TrackMetadata [id=1, title=IMG-20151120-WA0007, artist=, genre=, artURI=res=http://192.168.1.4:8089/1.jpg, itemClass=object.item.imageItem]
11-22 16:24:53.345  20172-20172/? V/RendererCommand? Resume
11-22 16:24:53.351  20172-20301/? W/RendererCommand? Fail to stop ! Error: Current state of service prevents invoking that action. Error writing request message. Can't transform message payload: java.lang.ClassCastException: java.lang.Class cannot be cast to java.lang.reflect.ParameterizedType. (HTTP response was: 500 Internal Server Error)
11-22 16:24:53.351  20172-20301/? I/RendererCommand? Set uri to http://192.168.1.4:8089/1.jpg
11-22 16:24:53.353  20172-20386/? D/RendererCommand? Update state !
11-22 16:24:53.354  20172-20264/? W/RendererCommand? Fail …
Run Code Online (Sandbox Code Playgroud)

android upnp android-cling android-proguard

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

Chromecast MediaRouteProviderService

我有奇怪的问题,我正在使用以下代码为chromecast创建mediaprovider,第一次运行正常,显示设备列表并且一旦我选择使用router.selectRoute(routeinfo); 但是一旦我退出应用程序此代码无法找到Chromecast设备,我何时删除应用程序从运行应用程序堆栈这个代码再次正常工作并显示设备.

如果没有选择任何设备并使用后退退出应用程序,那么此代码也可正常工作

那我在这里做错了什么?当我的应用程序以简单的后退方式退出时,我认为资源不会被清除.

public class ChromecastRouteProviderService extends MediaRouteProviderService {
final String LOGTAG = "Chromecast";
private static final String CONTROL_CATEGORY = CastMediaControlIntent.categoryForCast(CastMediaControlIntent.DEFAULT_MEDIA_RECEIVER_APPLICATION_ID);
private static final MediaRouteSelector SELECTOR = new MediaRouteSelector.Builder().addControlCategory(CONTROL_CATEGORY)
        .addControlCategory(MediaControlIntent.CATEGORY_REMOTE_PLAYBACK).build();
private IntentFilter controlFilter;

public ChromecastRouteProviderService() {
    controlFilter = new IntentFilter();
}

public void onCreate() {
    super.onCreate();
    controlFilter.addCategory(IAppConstants.CATEGORY);
    controlFilter.addCategory(MediaControlIntent.CATEGORY_REMOTE_PLAYBACK);
}

@Override
public MediaRouteProvider onCreateMediaRouteProvider() {
    return new ChromecastRouteProvider(this);
}

class ChromecastRouteProvider extends MediaRouteProvider {
    MediaRouter.Callback callback;
    Hashtable routes;

    public ChromecastRouteProvider(Context context) {
        super(context);
        routes = new Hashtable();
        callback = …
Run Code Online (Sandbox Code Playgroud)

android chromecast

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

ClassNotFoundException:没有找到类"android.support.design.R $ styleable"

嗨我正在使用NavigationView但我收到错误,下面是我的xml,我已经包含了android支持和v7库

project.properties因为我没有使用Android工作室

target=android-22
android.library.reference.1=../android-support-v7-appcompat
android.library.reference.2=../design


<android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:id="@+id/drawer_layout"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:fitsSystemWindows="true"
    tools:context="com.toxic.apps.kodi" >

<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >

    <android.support.v7.widget.Toolbar
        android:id="@+id/toolbar"
        android:layout_width="match_parent"
        android:layout_height="?attr/actionBarSize"
        android:background="@color/primary"
        android:minHeight="?attr/actionBarSize" />

    <FrameLayout
        android:id="@+id/container"
        android:layout_width="match_parent"
        android:layout_height="match_parent" />
</LinearLayout>

<android.support.design.widget.NavigationView
    android:id="@+id/navigation"
    app:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_gravity="start"
    app:headerLayout="@layout/drawer_header"
    app:itemTextColor="@color/primary"
    app:menu="@menu/drawer" />

</android.support.v4.widget.DrawerLayout>
Run Code Online (Sandbox Code Playgroud)

以下是我的堆栈跟踪

06-21 06:24:12.799: E/AndroidRuntime(4913): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.toxic.apps.kodi/com.toxic.apps.kodi.Activities.MainActivity}: android.view.InflateException: Binary XML file line #30: Error inflating class android.support.design.widget.NavigationView
06-21 06:24:12.799: E/AndroidRuntime(4913):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2298)
06-21 06:24:12.799: E/AndroidRuntime(4913):     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2360)
06-21 06:24:12.799: E/AndroidRuntime(4913): …
Run Code Online (Sandbox Code Playgroud)

android android-5.0-lollipop navigationview

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