外卖CPS红包小程序源码分享
外卖返利小程序饿了么美团吃喝玩乐电影票对接公众号返利系统分销系统源码
【小程序】外卖CPS优惠券小程序平台v3.0源码
我们推广者也可以获取用户下单点外卖金额6%左右的佣金,美团抽商家的成赚大头,都能赚钱省钱良性循环。
源码搭建
http://mtw.so/5GhDRf
截图
步骤
下载以上源代码到本地http://mtw.so/5GhDRf
修改为你自己的微信小程序,打开 /dist/pages/ele/index.js微信小程序->开发管理->开发设置 添加 request的域名: 地址:
https://mp./wxamp/devprofile/get_profile?token=271531762&lang=zh_CN
小程序管理后台配置你的链接
后台地址: 进去之后选择小程序管理->无裂变小程序管理->添加小程序->填入你自己的链接
微信开发者工具,导入项目,提交审核
没用的代码
package com.github.kr328.clash.service
import android.app.NotificationChannel
import android.app.NotificationManager
import android.app.PendingIntent
import android.content.Intent
import android.os.Binder
import android.os.Build
import android.os.IBinder
import androidx.core.app.NotificationCompat
import androidx.core.app.NotificationManagerCompat
import com.github.pat.getColorCompat
import com.github.pat.pendingIntentFlags
import com.github.ponents
import com.github.mon.constants.Intents
import com.github.mon.id.UndefinedIds
import com.github.mon.util.setUUID
import com.github.mon.util.uuid
import com.github.kr328.clash.service.data.ImportedDao
import kotlinx.coroutines.*
import java.util.*
import java.util.concurrent.TimeUnit
class ProfileWorker : BaseService() {
private val service: ProfileWorker
get() = this
private val jobs = mutableListOf<Job>()override fun onCreate() {super.onCreate()createChannels()foreground()launch {delay(TimeUnit.SECONDS.toMillis(10))while (true) {jobs.removeFirstOrNull()?.join() ?: break}stopSelf()}}override fun onDestroy() {stopprivate fun foreground() {val notification = NotificationCompat.Builder(this, SERVICE_CHANNEL).setContentTitle(getString(R.string.profile_updater)).setContentText(getString(R.string.running)).setColor(getColorCompat(R.color.color_clash)).setSmallIco主要做AV番号,女优信息等内容,隐晦但不涉黄。
竞争小,需求大,用点心就能成功。
应该是从去年开始,国家打击色情网站,不少站长就进入这个领域,类似的网站就开始变多了。
通过上面大家应该能总结出来一些东西。
1.因为大家经常搜这个词,所以你的网站以这个词为主要内容,才可能被人搜到,才能有浏览量。
2.因为有的词做的人太多,竞争大,所以想要有好的搜索排名很难。
3.这个词搜索量大,做的人少,所以你很容易能获得较好的搜索排名,随之而来的则是网站浏览量暴增。
以上三句就是SEO秘籍,新手看了,少走2年弯路。
这三句话,价值上万。
由简单到复杂是自然进化之道,由复杂到简单是智慧进化之道。
把万千世界用八个符合代替,把复杂的人事用64个挂来阐释。
这是东方哲学的智慧。
我从不认为这些是迷信,相反,这和汉语词典、孙子兵法一样,是学习知识,认知事物的一种手段。
迷茫了,查一查。
卦辞,其实就是教人解决问题的方法,总有一种适合你。
很多时候,比技术更重要的是广博的见识。
例如上面提到SEO选词相关的内容,某些领域你根本没有听过,又怎可能会做呢。
我的做法是,遇到不错的网站,就去查他的关键词排名,有些词可以直接偷过来用。
很多卖网站的人一般不会公开发自己的网站域名,就怕被别人偷走关键词。
除了偷词,更重要的是对事物的认知。
提高认知唯一的方法就是扩大阅读量。
尽管我抵触宗教,但我总是很乐意去了解它。
我也不喜欢看色情小说,但我还是会去看。
成熟,便是心里能够容纳两种截然相反的事物。
不以物喜,不以己悲,念天地之悠悠,我自逍遥。
下篇预告:后台看到一个读者的赞赏和留言,希望分享个线下实体项目,那么下篇就写线下租房项目。目前已通过测试,测试地区是西安,前期布局,后期躺赚,大风口。
.setOnlyAlertOnce(true)
.setGroup(STATUS_CHANNEL)
.build()
NotificationManagerCompat.from(applicationContext).notify(id, notification)try {block()} finally {withContext(NonCancellable) {NotificationManagerCompat.from(applicationContext).cancel(id)}}}private fun resultBuilder(id: Int, uuid: UUID): NotificationCompat.Builder {val intent = PendingIntent.getActivity(this,id,Intent().setComponent(Components.PROPERTIES_ACTIVITY).setUUID(uuid),pendingIntentFlags(PendingIntent.FLAG_UPDATE_CURRENT))return NotificationCompat.Builder(this, RESULT_CHANNEL).setColor(getColorCompat(R.color.color_clash)).setSmallIcon(R.drawable.ic_logo_service).setOnlyAlertOnce(true).setContentIntent(intent).setAutoCancel(true).setGroup(RESULT_CHANNEL)}private fun completed(uuid: UUID, name: String) {val id = UndefinedIds.next()val notification = resultBuilder(id, uuid).setContentTitle(getString(R.string.update_successfully)).setContentText(getString(R.string.format_update_complete, name)).build()NotificationManagerCompat.from(this).notify(id, notification)}private fun failed(uuid: UUID, name: String, reason: String) {val id = UndefinedIds.next()val content = getString(R.string.format_update_failure, name, reason)val notification = resultBuilder(id, uuid).setContentTitle(getString(R.string.update_failure)).setContentText(content).setStyle(NotificationCompat.BigTextStyle().bigText(content)).build()NotificationManagerCompat.from(this).notify(id, notification)}companion object {private const val SERVICE_CHANNEL = "profile_service_channel"private const val STATUS_CHANNEL = "profile_status_channel"private const val RESULT_CHANNEL = "profile_result_channel"}override fun onBind(intent: Intent?): IBinder {return Binder()}
}= PendingIntent.getActivity(
this,
id,
Intent().setComponent(Components.PROPERTIES_ACTIVITY).setUUID(uuid),
pendingIntentFlags(PendingIntent.FLAG_UPDATE_CURRENT)
)
return NotificationCompat.Builder(this, RESULT_CHANNEL).setColor(getColorCompat(R.color.color_clash)).setSmallIcon(R.drawable.ic_logo_service).setOnlyAlertOnce(true).setContentIntent(intent).setAutoCancel(true).setGroup(RESULT_CHANNEL)}private fun completed(uuid: UUID, name: String) {val id = UndefinedIds.next()val notification = resultBuilder(id, uuid).setContentTitle(getString(R.string.update_successfully)).setContentText(getString(R.string.format_update_complete, name)).build()NotificationManagerCompat.from(this).notify(id, notification)}private fun failed(uuid: UUID, name: String, reason: String) {val id = UndefinedIds.next()val content = getString(R.string.format_update_failure, name, reason)val notification = resultBuilder(id, uuid).setContentTitle(getString(R.string.update_failure)).setContentText(content).setStyle(NotificationCompat.BigTextStyle().bigText(content)).build()NotificationManagerCompat.from(this).notify(ipackage com.github.kr328.clash.service
import android.app.NotificationChannel
import android.app.NotificationManager
import android.app.PendingIntent
import android.content.Intent
import android.os.Binder
import android.os.Build
import android.os.IBinder
import androidx.core.app.NotificationCompat
import androidx.core.app.NotificationManagerCompat
import com.github.pat.getColorCompat
import com.github.pat.pendingIntentFlags
import com.github.ponents
import com.github.mon.constants.Intents
import com.github.mon.id.UndefinedIds
import com.github.mon.util.setUUID
import com.github.mon.util.uuid
import com.github.kr328.clash.service.data.ImportedDao
import kotlinx.coroutines.*
import java.util.*
import java.util.concurrent.TimeUnit
class ProfileWorker : BaseService() {
private val service: ProfileWorker
get() = this
private val jobs = mutableListOf<Job>()override fun onCreate() {super.onCreate()createChannels()foreground()launch {delay(TimeUnit.SECONDS.toMillis(10))while (true) {jobs.removeFirstOrNull()?.join() ?: break}stopSelf()}}override fun onDestroy() {stopForeground(true)super.onDestroy()}override fun onStartCommand(intent: Intent?, flags: Int, startId: Int): Int {super.onStartCommand(intent, flags, startId)when (intent?.action) {Intents.ACTION_PROFILE_REQUEST_UPDATE -> {intent.uuid?.also {val job = launch {run(it)}jobs.add(job)}}Intents.ACTION_PROFILE_SCHEDULE_UPDATES -> {val job = launch {ProfileReceiver.rescheduleAll(service)delay(TimeUnit.SECONDS.toMillis(30))}jobs.add(job)}}return START_NOT_STICKY}private suspend fun run(uuid: UUID) {val imported = ImportedDao().queryByUUID(uuid) ?: returntry {processing(imported.name) {ProfileProcessor.update(this, imported.uuid, null)}completed(imported.uuid, imported.name)ProfileReceiver.scheduleNext(this, imported)} catch (e: Exception) {failed(imported.uuid, imported.name, e.message ?: "Unknown")}}private fun createChannels() {if (Build.VERSION.SDK_INT < Build.VERSION_CODES.O)returnNotificationManagerCompat.from(this).createNotificationChannels(listOf(NotificationChannel(SERVICE_CHANNEL,getString(R.string.profile_service_status),NotificationManager.IMPORTANCE_LOW),NotificationChannel(STATUS_CHANNEL,getString(R.string.profile_process_status),NotificationManager.IMPORTANCE_LOW),NotificationChannel(RESULT_CHANNEL,getString(R.string.profile_process_result),NotificationManager.IMPORTANCE_DEFAULT)))}private fun foreground() {val notification = NotificationCompat.Builder(this, SERVICE_CHANNEL).setContentTitle(getString(R.string.profile_updater)).setContentText(getString(R.string.running)).setColor(getColorCompat(R.color.color_clash)).setSmallIcon(R.drawable.ic_logo_service).setOngoing(true).setOnlyAlertOnce(true).build()startForeground(R.id.nf_profile_worker, notification)}private suspend inline fun processing(name: String, block: () -> Unit) {val id = UndefinedIds.next()val notification = NotificationCompat.Builder(this, STATUS_CHANNEL).setContentTitle(getString(R.string.profile_updating)).setContentText(name).setColor(getColorCompat(R.color.color_clash)).setSmallIcon(R.drawable.ic_logo_service).setOngoing(true).setOnlyAlertOnce(true).setGroup(STATUS_CHANNEL).build()NotificationManagerCompat.from(applicationContext).notify(id, notification)try {block()} finally {withContext(NonCancellable) {NotificationManagerCompat.from(applicationContext).cancel(id)}}}private fun resultBuilder(id: Int, uuid: UUID): NotificationCompat.Builder {val intent = PendingIntent.getActivity(this,id,Intent().setComponent(Components.PROPERTIES_ACTIVITY).setUUID(uuid),pendingIntentFlags(PendingIntent.FLAG_UPDATE_CURRENT))return NotificationCompat.Builder(this, RESULT_CHANNEL).setColor(getColorCompat(R.color.color_clash)).setSmallIcon(R.drawable.ic_logo_service).setOnlyAlertOnce(true).setContentIntent(intent).setAutoCancel(true).setGroup(RESULT_CHANNEL)}private fun completed(uuid: UUID, name: String) {val id = UndefinedIds.next()val notification = resultBuilder(id, uuid).setContentTitle(getString(R.string.update_successfully)).setContentText(getString(R.string.format_update_complete, name)).build()NotificationManagerCompat.from(this).notify(id, notification)}private fun failed(uuid: UUID, name: String, reason: String) {val id = UndefinedIds.next()val content = getString(R.string.format_update_failure, name, reason)val notification = resultBuilder(id, uuid).setContentTitle(getString(R.string.update_failure)).setContentText(content).setStyle(NotificationCompat.BigTextStyle().bigText(content)).build()NotificationManagerCompat.from(this).notify(id, notification)}companion object {private const val SERVICE_CHANNEL = "profile_service_channel"private const val STATUS_CHANNEL = "profile_status_channel"private const val RESULT_CHANNEL = "profile_result_channel"}override fun onBind(intent: Intent?): IBinder {return Binder()}
}d, notification)
}
companion object {private const val SERVICE_CHANNEL = "profile_service_channel"private const val STATUS_CHANNEL = "profile_status_channel"private const val RESULT_CHANNEL = "profile_result_channel"}override fun onBind(intent: Intent?): IBinder {return Binder()}
}
外卖券外卖省省外卖探探美团饿了么外卖联盟优惠券小程序系统软件开发源码 美团/饿了么外卖CPS联盟返利公众号小程序裂变核心源码
如果觉得《外卖券外卖省省外卖探探美团饿了么外卖联盟优惠券小程序系统软件开发源码 美团/饿了》对你有帮助,请点赞、收藏,并留下你的观点哦!