增加添加快捷方式到桌面
This commit is contained in:
parent
14783e4b7b
commit
ebaeadfb2d
|
@ -2,7 +2,7 @@
|
||||||
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
|
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
package="com.hty.browser"
|
package="com.hty.browser"
|
||||||
android:versionCode="4"
|
android:versionCode="4"
|
||||||
android:versionName="4.37">
|
android:versionName="4.38">
|
||||||
|
|
||||||
<uses-permission android:name="android.permission.INTERNET" />
|
<uses-permission android:name="android.permission.INTERNET" />
|
||||||
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> <!-- 查询网络状态权限 -->
|
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> <!-- 查询网络状态权限 -->
|
||||||
|
@ -16,6 +16,8 @@
|
||||||
<uses-permission android:name="android.permission.ACCESS_LOCATION" />
|
<uses-permission android:name="android.permission.ACCESS_LOCATION" />
|
||||||
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
|
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
|
||||||
|
|
||||||
|
<uses-permission android:name="com.android.launcher.permission.INSTALL_SHORTCUT" />
|
||||||
|
|
||||||
<application
|
<application
|
||||||
android:icon="@drawable/ic_launcher"
|
android:icon="@drawable/ic_launcher"
|
||||||
android:label="@string/app_name"
|
android:label="@string/app_name"
|
||||||
|
|
|
@ -22,7 +22,9 @@ p { text-indent:2em; }
|
||||||
<p><a href="https://blog.csdn.net/lowprofile_coding/article/details/77852131" target="_blank">自动安装apk包</a></p>
|
<p><a href="https://blog.csdn.net/lowprofile_coding/article/details/77852131" target="_blank">自动安装apk包</a></p>
|
||||||
<p><a href="https://stackoverflow.com/questions/3462582/display-the-android-webviews-favicon" target="_blank">获取网页图标</a></p>
|
<p><a href="https://stackoverflow.com/questions/3462582/display-the-android-webviews-favicon" target="_blank">获取网页图标</a></p>
|
||||||
<p><a href="https://www.jianshu.com/p/c9a18050a249" target="_blank">字符串转Bitmap</a></p>
|
<p><a href="https://www.jianshu.com/p/c9a18050a249" target="_blank">字符串转Bitmap</a></p>
|
||||||
|
<p><a href="https://blog.51cto.com/u_16175498/8811197" target="_blank">添加网址到桌面</a></p>
|
||||||
<h3>更新日志:</h3>
|
<h3>更新日志:</h3>
|
||||||
|
<h3>V4.38 (2024-04-30)</h3><ol><li>增加添加网址到桌面。</li></ol>
|
||||||
<h3>V4.37 (2024-03-27)</h3><ol><li>修复保存网址规则前面有1个空格的问题。</li><li>增加点击规则查看详情。</li></ol>
|
<h3>V4.37 (2024-03-27)</h3><ol><li>修复保存网址规则前面有1个空格的问题。</li><li>增加点击规则查看详情。</li></ol>
|
||||||
<h3>V4.36 (2024-03-25)</h3><ol><li>增加添加网址到主页。</li></ol>
|
<h3>V4.36 (2024-03-25)</h3><ol><li>增加添加网址到主页。</li></ol>
|
||||||
<h3>V4.35 (2024-03-16)</h3><ol><li>增加自定义主页。</li></ol>
|
<h3>V4.35 (2024-03-16)</h3><ol><li>增加自定义主页。</li></ol>
|
||||||
|
|
|
@ -29,6 +29,7 @@ import android.Manifest;
|
||||||
import android.app.Activity;
|
import android.app.Activity;
|
||||||
import android.app.AlertDialog;
|
import android.app.AlertDialog;
|
||||||
import android.app.DownloadManager;
|
import android.app.DownloadManager;
|
||||||
|
import android.app.PendingIntent;
|
||||||
import android.content.BroadcastReceiver;
|
import android.content.BroadcastReceiver;
|
||||||
import android.content.ClipData;
|
import android.content.ClipData;
|
||||||
import android.content.ClipboardManager;
|
import android.content.ClipboardManager;
|
||||||
|
@ -40,6 +41,8 @@ import android.content.IntentFilter;
|
||||||
import android.content.SharedPreferences;
|
import android.content.SharedPreferences;
|
||||||
import android.content.pm.ActivityInfo;
|
import android.content.pm.ActivityInfo;
|
||||||
import android.content.pm.PackageManager;
|
import android.content.pm.PackageManager;
|
||||||
|
import android.content.pm.ShortcutInfo;
|
||||||
|
import android.content.pm.ShortcutManager;
|
||||||
import android.content.res.Configuration;
|
import android.content.res.Configuration;
|
||||||
import android.database.Cursor;
|
import android.database.Cursor;
|
||||||
import android.graphics.Bitmap;
|
import android.graphics.Bitmap;
|
||||||
|
@ -47,6 +50,7 @@ import android.graphics.BitmapFactory;
|
||||||
import android.graphics.Color;
|
import android.graphics.Color;
|
||||||
import android.graphics.Matrix;
|
import android.graphics.Matrix;
|
||||||
import android.graphics.drawable.BitmapDrawable;
|
import android.graphics.drawable.BitmapDrawable;
|
||||||
|
import android.graphics.drawable.Icon;
|
||||||
import android.media.MediaScannerConnection;
|
import android.media.MediaScannerConnection;
|
||||||
import android.net.ConnectivityManager;
|
import android.net.ConnectivityManager;
|
||||||
import android.net.NetworkInfo;
|
import android.net.NetworkInfo;
|
||||||
|
@ -128,7 +132,9 @@ public class MainActivity extends Activity {
|
||||||
DownloadCompleteReceiver receiver;
|
DownloadCompleteReceiver receiver;
|
||||||
final String[] PERMISSIONS = {
|
final String[] PERMISSIONS = {
|
||||||
Manifest.permission.READ_EXTERNAL_STORAGE,
|
Manifest.permission.READ_EXTERNAL_STORAGE,
|
||||||
Manifest.permission.WRITE_EXTERNAL_STORAGE };
|
Manifest.permission.WRITE_EXTERNAL_STORAGE,
|
||||||
|
Manifest.permission.INSTALL_SHORTCUT
|
||||||
|
};
|
||||||
final int REQUEST_PERMISSION_CODE = 1;
|
final int REQUEST_PERMISSION_CODE = 1;
|
||||||
Boolean isExit = false;
|
Boolean isExit = false;
|
||||||
ClipboardManager clipboardManager;
|
ClipboardManager clipboardManager;
|
||||||
|
@ -683,7 +689,7 @@ public class MainActivity extends Activity {
|
||||||
}
|
}
|
||||||
|
|
||||||
private void MenuDialog() {
|
private void MenuDialog() {
|
||||||
String[] items = { "新建窗口", "关闭当前窗口", "收藏当前页", "收藏夹", "查找", "分享", "网页信息", "视频独立播放", "视频截图", "视频在播放器中打开", "资源探查", "查看源码", "保存", "全屏", "广告屏蔽", "清除当前页面缓存", "设置", "检查更新", "关于", "退出", "ExpandableListView", "添加到主页" };
|
String[] items = { "新建窗口", "关闭当前窗口", "收藏当前页", "收藏夹", "查找", "分享", "网页信息", "视频独立播放", "视频截图", "视频在播放器中打开", "资源探查", "查看源码", "保存", "全屏", "广告屏蔽", "清除当前页面缓存", "设置", "检查更新", "关于", "退出", "ExpandableListView", "添加到主页", "添加到桌面" };
|
||||||
AlertDialog.Builder builder = new AlertDialog.Builder(this);
|
AlertDialog.Builder builder = new AlertDialog.Builder(this);
|
||||||
builder.setTitle("菜单");
|
builder.setTitle("菜单");
|
||||||
//builder.setIcon(android.R.drawable.ic_menu_preferences);
|
//builder.setIcon(android.R.drawable.ic_menu_preferences);
|
||||||
|
@ -994,6 +1000,27 @@ public class MainActivity extends Activity {
|
||||||
js = "javascript:window.onload=function(){var json=JSON.parse(localStorage.webfav);for(var i=0;i<json.length;i++){if(json[i].website=='" + urln + "'){alert('网址已经存在!');return;}}json.push({title: '" + ptitle + "',website:'" + urln + "'});localStorage.webfav=JSON.stringify(json);}";
|
js = "javascript:window.onload=function(){var json=JSON.parse(localStorage.webfav);for(var i=0;i<json.length;i++){if(json[i].website=='" + urln + "'){alert('网址已经存在!');return;}}json.push({title: '" + ptitle + "',website:'" + urln + "'});localStorage.webfav=JSON.stringify(json);}";
|
||||||
webView.loadUrl(js);
|
webView.loadUrl(js);
|
||||||
break;
|
break;
|
||||||
|
case 22:
|
||||||
|
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
|
||||||
|
ShortcutManager shortcutManager = getSystemService(ShortcutManager.class);
|
||||||
|
if (shortcutManager.isRequestPinShortcutSupported()) {
|
||||||
|
String url = list_webView.get(currentPage).getUrl();
|
||||||
|
String title = list_webView.get(currentPage).getTitle();
|
||||||
|
Intent shortcutIntent = new Intent(Intent.ACTION_VIEW, Uri.parse(url));
|
||||||
|
ShortcutInfo shortcutInfo = new ShortcutInfo.Builder(getApplicationContext(), url)
|
||||||
|
.setShortLabel(title)
|
||||||
|
.setLongLabel(title)
|
||||||
|
.setIcon(Icon.createWithResource(getApplicationContext(), R.drawable.ic_launcher))
|
||||||
|
.setIntent(shortcutIntent)
|
||||||
|
.build();
|
||||||
|
Intent pinnedShortcutCallbackIntent = shortcutManager.createShortcutResultIntent(shortcutInfo);
|
||||||
|
PendingIntent successCallback = PendingIntent.getBroadcast(getApplicationContext(), 0, pinnedShortcutCallbackIntent, 0);
|
||||||
|
shortcutManager.requestPinShortcut(shortcutInfo, successCallback.getIntentSender());
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
Toast.makeText(getApplicationContext(), "不支持创建快捷方式", Toast.LENGTH_SHORT).show();
|
||||||
|
}
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
Loading…
Reference in New Issue