我正在尝试创建WebView,它将通过js获得GPS本地化,但当我点击应该显示本地化的按钮:在android 4.1.1(模拟器):"错误代码2.无法启动Android 4.1.2中的地理定位服务(手机)在Android 6.0(模拟器)中没有任何相同的事情,只是没有任何反应
我的权限:
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
Run Code Online (Sandbox Code Playgroud)
我的设置:
webView.getSettings().setJavaScriptEnabled(true);
webView.getSettings().setGeolocationEnabled(true);
webView.getSettings().setJavaScriptCanOpenWindowsAutomatically(true);
webView.getSettings().setBuiltInZoomControls(true);
webView.getSettings().setSaveFormData(false);
webView.getSettings().setSavePassword(false);
webView.getSettings().setAppCacheEnabled(true);
webView.getSettings().setDatabaseEnabled(true);
webView.getSettings().setDomStorageEnabled(true);
webView.getSettings().setGeolocationDatabasePath(getFilesDir().getPath());
Run Code Online (Sandbox Code Playgroud)
WebChromeClient:
WebChromeClient webChromeClient = new WebChromeClient(){
@Override
public void onGeolocationPermissionsShowPrompt(String origin, GeolocationPermissions.Callback callback) {
// callback.invoke(String origin, boolean allow, boolean remember);
callback.invoke(origin, true, false);
}
public void openFileChooser(ValueCallback<Uri> uploadMsg, String acceptType, String capture){
mUploadMessage = uploadMsg;
Intent i = new Intent(Intent.ACTION_GET_CONTENT);
i.addCategory(Intent.CATEGORY_OPENABLE);
i.setType("*/*");
MainActivity.this.startActivityForResult(Intent.createChooser(i, "File Chooser"), MainActivity.FILECHOOSER_RESULTCODE);
}
public boolean onShowFileChooser (WebView webView, …Run Code Online (Sandbox Code Playgroud) I am creating app in which there is screen with searchBar by this lib. My activity layout looks like this:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent">
<android.support.constraint.ConstraintLayout
android:id="@+id/wrapper"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:animateLayoutChanges="true">
<TextView
android:id="@+id/title"
android:textColor="@color/colorPrimary"
android:text="@string/mainScreenTitle"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:textAlignment="center"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
android:paddingTop="100dp"/>
<com.arlib.floatingsearchview.FloatingSearchView
android:id="@+id/searchView"
android:layout_width="0dp"
android:layout_height="50dp"
android:layout_marginTop="100dp"
android:animateLayoutChanges="true"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toBottomOf="@+id/title"/>
</android.support.constraint.ConstraintLayout>
</RelativeLayout>
Run Code Online (Sandbox Code Playgroud)
There i have to move FloatingSearchingView to top of screen and change height to for example 500dp - like this:
app:layout_constraintTop_toTopOf="parent"
android:layout_height="500dp"
Run Code Online (Sandbox Code Playgroud)
And later …
我正在尝试使用基于BetterVideoPlayer库的视频播放器创建活动。当播放器必须缓冲大约 100Mb 的视频时,总是在此日志之后:
W/art: Suspending all threads took: 6.342ms
Run Code Online (Sandbox Code Playgroud)
当库尝试继续缓冲时(例如暂停 20% 后),我得到以下信息:
W/MediaHTTPConnection: readAt 28213248 / 32768 => java.net.ProtocolException: unexpected end of stream
Run Code Online (Sandbox Code Playgroud)
并且播放器由于没有来源而抛出错误我尝试使用另一个库但我遇到了相同的情况。
有我的活动:
package pl.---.---.ui.videoPlayer;
import android.net.Uri;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import com.halilibo.bettervideoplayer.BetterVideoPlayer;
import pl.---.---.R;
import butterknife.BindView;
import butterknife.ButterKnife;
public class VideoPlayerActivity extends AppCompatActivity {
@BindView(R.id.player)
BetterVideoPlayer player;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_video_player);
ButterKnife.bind(this);
Bundle extras = getIntent().getExtras();
String link = extras.getString("link");
String title = extras.getString("title");
player.setSource(Uri.parse(link));
player.setTitle(title);
}
}
Run Code Online (Sandbox Code Playgroud)
我能做些什么来解决这个问题?